
sudo가 있는 서버 그룹에서 cron(따라서 상호 작용이 불가능함)에서 Ansible 플레이북을 실행하려고 합니다. 인터넷 전체의 여러 튜토리얼과 게시물에서는 sudo 비밀번호를 일반 텍스트로 설정하거나 Ansible-Vault를 설정하도록 권장합니다(어딘가에 일반 텍스트로 ansible-valt 비밀번호 파일을 요구하므로 아무런 거래도 없습니다). 어떤 사람들은 sudo 명령을 실행하는 사용자에게 sudoers 파일의 NOPASSWD를 설정하라고 권장하는데, 저도 그렇게 할 수 없습니다. 이러한 모든 솔루션에는 보안 문제가 있습니다.
그래서 주위에 방법이 있는지 궁금합니다. Ansible이 해독하고 읽을 수 있는 방식으로 일반 텍스트 비밀번호를 암호화할 수 있을까요?
미리 감사드립니다!
답변1
비밀번호가 해시된 형식이면 Ansible이 허용됩니다. Python을 사용하여 해시된 비밀번호를 만들었습니다.
python -c 'import crypt; print crypt.crypt("password", "$6$random_salt")'
python3 -c 'import crypt; print(crypt.crypt("password", crypt.mksalt(crypt.METHOD_SHA512)))'
교체비밀번호비밀번호를 사용하면 위 명령의 출력을 Ansible 작업에 붙여넣을 수 있습니다.
- name: name
become: true
task:
password: hashed password