암호로 보호 된 데이터베이스에 연결하기위한 셸 스크립트를 작성했습니다. 두 사람은 동일한 쉘 스크립트를 사용하여 데이터베이스 액세스를 공유하려고하지만 사용중인 비밀번호를 공개하고 싶지 않습니다. 스크립트를 잠그고 아무도 그것을 읽고 실행할 수 없도록하는 방법이 있습니까? 또한 스크립트를 실행하기 위해 sudo 암호를 입력하는 것이 이상적입니다.셸 스크립트 만 실행하려는 경우
2
A
답변
6
아무도 그것을 읽을 수 있도록 스크립트를 고정 할 수있는 방법이 있나요 (그리고 파이썬 프로그래머는 펄이 읽을 수없는 말을 왜? 궁금) 만 그것을 실행? 또한 스크립트를 실행하기 위해 sudo 비밀번호 을 입력하는 것이 가장 좋습니다.
확실히. 자격 증명이 포함 된 스크립트가 /usr/local/bin/myscript
이라고 가정 해 보겠습니다. 이 파일을 권한있는 사용자가 소유하게하십시오. 의 우리가 "자격 증명"라는 이름의 사용자가 있다고 가정 해 봅시다 :
# chown credentials /usr/local/bin/myscript
# chmod 700 /usr/local/bin/myscript
지금 만
credentials
사용자가 읽고이 스크립트를 실행할 수 있습니다. 적절한
/etc/sudoers
항목
#!/bin/sh
exec sudo -u credentials /usr/local/bin/myscript
그리고 만들 : 그래서 지금
auser ALL=(credentials) /usr/local/bin/myscript
, 사용자
auser
실행 "mywrapper을"
은 다음과 같습니다 다른 스크립트
/usr/local/bin/mywrapper
을 만듭니다. 차례로
sudo
을 사용하여 실제 스크립트를 호출하면
auser
의 비밀번호가 표시됩니다.
나는 이것이 당신이 원하는 모든 것을한다고 생각합니다. 우리는 자격 증명 (우리의 경우에는 ssh 개인 키)을 보호하기 위해 사무실에서 이와 비슷한 메커니즘을 사용합니다.
0
쉘 스크립트를 실행하려면 해당 스크립트를 읽을 수 있어야합니다. 다음과 같은 몇 가지 작업을 수행 할 수 있습니다.
- 누가이 데이터베이스를 관리합니까? 사용자가 읽기 전용 액세스를 위해 자신의 암호를 얻을 수 있습니까? 이는 데이터베이스의 작은 하위 집합에 대한 액세스를 제한 할 수 있기 때문에 이상적입니다.
- 이 스크립트를 실행하기 위해 sudo 액세스 권한이 있어야한다면 파일에서 600 개의 권한이 설정된 파일로 비밀번호를 제거 할 수 있습니다. 문제는 이것이 유출 될 수 있다는 것입니다. 예를 들어
set -xv
으로 스크립트를 실행하면 어떻게됩니까? 그런 다음 스크립트가 실행될 때 암호를 볼 수 있습니다. - 데이터베이스 외부에서 관심있는 데이터의 하위 집합을 만들 수 있습니까? 그런 다음 스크립트에 액세스하도록하십시오.
또는 읽기 전용 모듈을 Perl로 살펴볼 수 있습니다. 나는 Acme::EyeDrops 또는 Acme::Bleach과 같은 것으로 Perl 스크립트에서보기 흉한 문자와 숫자를 모두 제거합니다.
관련 문제
- 1. nav2009에서 codeunit을 자동으로 실행하려는 경우
- 2. 자바 스크립트 셸 스크립트
- 3. Jenkins의 셸 스크립트 시작
- 4. 셸 스크립트 대괄호
- 5. 기본 셸 스크립트
- 6. 셸 스크립트, 문자열 검색 파일
- 7. Filebench 셸 스크립트
- 8. 유닉스 셸 스크립트 오류
- 9. 재귀 함수 셸 스크립트
- 10. 자바 셸 스크립트 질문
- 11. 자바 스크립트 셸?
- 12. 셸 스크립트 프로세스 명령
- 13. 셸 스크립트 - 분할 오류
- 14. 웹용 셸 스크립트
- 15. 하나의 라이너 셸 스크립트
- 16. 셸 스크립트 문자를 반복합니다.
- 17. 셸 스크립트 호출 트리 생성
- 18. 디렉토리로 들어가는 유닉스 셸 스크립트
- 19. Internet Explorer가 아닌 경우 스크립트 만 실행
- 20. 기괴한 PHP 셸 스크립트 동작
- 21. 셸 스크립트를 사용하여 프로세스를 시작한 경우 셸 해제
- 22. 독립 실행 형 셸 스크립트 대 셸 함수?
- 23. 우분투 셸 스크립트 - 루트 인증
- 24. 명령 줄에서 셸 스크립트 실행
- 25. UNIX 셸 스크립트 while 루프
- 26. 자동화 된 테스트 셸 스크립트
- 27. 사이에 쉘 스크립트 변경 셸
- 28. 셸 명령에서 파일 이름 만 수신
- 29. 셸 스크립트 오류 상태 및 구문 검사