Ansible Vault는 패스워드, 키와 같은 보안에 민감한 파일들을 암복호화해주는 기능이다.
Ansbile에서 사용하는 모든 구조화된 데이터 파일을 암호화 할수 있다.
참고로 ansible을 설치하면 ansible-vault도 설치가 된다.
# ansible-vault
Usage: ansible-vault [create|decrypt|edit|encrypt|encrypt_string|rekey|view] [options] [vaultfile.yml] encryption/decryption utility for Ansible data files Options: See 'ansible-vault <command> --help' for more information on a specific |
# 암호화된 파일을 생성하기
$ ansible-vault create foo.yml
# 암호화된 파일 수정하기
$ ansible-vault edit foo.yml
# 암호화된 파일의 패스워드 변경하기
$ ansible-vault rekey foo.yml
# 암호화되지 않은 파일을 암호화
$ ansible-vault encrypt foo.yml
# 암호화된 파일의 복호화
$ ansible-vault decrypt foo.yml
# 암호화된 파일의 내용 보기
$ ansible-vault view foo.yml
# ansible-vault를 사용해보기
1. hosts 파일을 암호화
[test@1ff25a8ed818 dse]$ ls
common_vars files group_vars hosts play.yml README.md roles
[test@1ff25a8ed818 dse]$ ansible-vault encrypt hosts
New Vault password: test
Confirm New Vault password: test
Encryption successful
2. 암호화된 hosts 파일 내용 확인
[test@1ff25a8ed818 dse]$ ansible-vault encrypt hosts
New Vault password: test
Confirm New Vault password: test
Encryption successful
[test@1ff25a8ed818 dse]$ ansible-vault view hosts
3. playbook 실행하기
ansible-playbook 실행시 --ask-vault-pass 옵션을 넣어주면 된다.
[test@1ff25a8ed818 dse]$ ansible-playbook --ask-vault-pass -i hosts play.yml -t install
Vault password:
파일에 vault password를 저장해서 사용이 가능하다.
[test@1ff25a8ed818 dse]$ cat vault_pass.txt
test
[test@1ff25a8ed818 dse]$ ansible-playbook -i hosts play.yml -t install --vault-password-file=vault_pass.txt
# 참고 사이트
https://docs.ansible.com/ansible/2.5/user_guide/vault.html
'Tool > ansible' 카테고리의 다른 글
ansible role template 생성하기 (0) | 2019.02.01 |
---|---|
ansible handler란? (0) | 2019.02.01 |
serial keyword를 이용한 rolling update (0) | 2019.01.29 |
ansible source build (0) | 2019.01.29 |
fail module 사용법 정리 (0) | 2019.01.29 |