728x90
Ansible Vault
는 Ansible에서 사용하는 변수 파일, 인벤토리, Playbook 등을 암호화하여 보안성을 강화할 수 있는 기능입니다. 패스워드, 토큰, SSH 키 등 민감한 정보를 포함한 YAML 파일을 안전하게 저장하고, 실행 시에는 복호화하여 사용할 수 있습니다.
1. Ansible Vault 개요 및 명령어 확인
ansible-vault -h
주요 명령어:
create
- 암호화된 새 파일 생성encrypt
- 기존 파일을 암호화decrypt
- 암호화된 파일을 복호화view
- 복호화된 내용을 출력edit
- 암호화된 상태로 열어서 편집encrypt_string
- 문자열을 Vault 암호화로 변환rekey
- 비밀번호를 재설정
2. 암호화 전 YAML 파일 확인
다음은 예제로 사용할 Playbook 11.yml
의 원본 내용입니다.
- name: Manual Sample
hosts: all
tasks:
- name: Hello Message
debug:
msg: "Hello. vault Test."
3. Ansible Vault로 YAML 파일 암호화
ansible-vault encrypt 11.yml
New Vault password:
Confirm New Vault password:
Encryption successful
암호화가 완료되면 해당 파일은 아래와 같이 내용이 암호화된 형태로 바뀝니다.
$ANSIBLE_VAULT;1.1;AES256
66363232383931653164...
4. 암호화된 파일 실행 (복호화 포함)
암호화된 Playbook을 실행할 때는 --ask-vault-pass
옵션으로 암호를 입력해야 합니다.
ansible-playbook --ask-vault-pass 11.yml
Vault password:
TASK [Hello Message]
ok: [60.30.152.10] => {
"msg": "Hello. vault Test."
}
정상적으로 실행되면 암호화된 파일도 문제없이 Playbook으로 동작합니다.
5. 암호화된 파일 보기 (복호화 없이 읽기 전용)
ansible-vault view 11.yml
Vault password:
암호를 입력하면 복호화된 내용을 단순 출력합니다.
- name: Manual Sample
hosts: all
tasks:
- name: Hello Message
debug:
msg: "Hello. vault Test."
6. 파일 복호화 (원래 상태로 복원)
ansible-vault decrypt 11.yml
Vault password:
Decryption successful
복호화가 완료되면 11.yml
파일은 다시 일반 텍스트로 돌아옵니다.
- name: Manual Sample
hosts: all
tasks:
- name: Hello Message
debug:
msg: "Hello. vault Test."
✅ 정리 및 실무 팁
- Ansible Vault는 민감 정보 보호에 최적화된 암호화 도구입니다.
- 모든 구조화된 데이터(YAML)를 암호화 가능하며, 실행 시 복호화되어 Playbook에서 사용됩니다.
- 비밀번호는 따로 관리하거나
--vault-password-file
옵션을 사용해 자동화할 수 있습니다.
728x90
반응형
'깐돌의 클라우드 도구함' 카테고리의 다른 글
[모니터링] Grafana와 Prometheus 연동 가이드 (0) | 2025.05.26 |
---|---|
[모니터링] Prometheus 설치 및 Node Exporter 연동 방법 (실습 기반) (0) | 2025.05.23 |
[Linux] Rear를 활용한 Linux Backup, Restore 실무 가이드 (0) | 2025.05.22 |
[Linux] RHEL7 RHEL8 leapp을 통한 업그레이드 가이드 (공식 지원 방식) (0) | 2025.05.22 |
[Linux] createrepo와 reposync를 활용한 오프라인 RPM 저장소 구성 방법 (0) | 2025.05.19 |