Encryption

Ansible 和 Vault 加密模板

  • November 4, 2016

我對 Ansible Vault 有疑問。

Vault on file copy 命令執行良好,但我找不到任何解決方案來讓加密模板正常工作。

我的目標是部署一個 SSH 密鑰,authorized_keys上面有一些註釋{{ ansible_managed }},但 Ansible 只是在目標主機上創建加密文件。

我的任務:

- name: Copy public RSA key
 template: src=id_rsa.pub.j2 dest=/root/.ssh/authorized_keys owner=root mode=600

目標伺服器上的結果:

$ANSIBLE_VAULT;1.1;AES256
66393735343333616637383238643132646134343235633662663262353530663133386439356334
6437633863333434393333336336396239636531306262640a623764303165333035633333643631
6631613234346133386261343162653931643865633139[...]

有沒有人嘗試過同樣的方法並啟動並執行?

授權密鑰是 SSH公鑰,因此您無需將它們儲存在保管庫中。


話雖如此,聽起來您的說法id_rsa.pub.j2不正確。這是我將 ssh 私鑰複製到機器上的範例任務:

- name: install ssh key
 copy:
   content: "{{ssh_key}}"
   dest: ~/.ssh/example.pem
   owner: "{{ansible_user_id}}"
   mode: u=r,g=,o=

ssh_key然後在 中定義group_vars/all/vars.yaml

ssh_key: "{{vault_ssh_key}}"

並且group_vars/all/vault.yaml是定義vault_ssh_key. 此方法允許查看任務或模板的人使用 grep 查找變數名稱並找到指向 Vault 的定義。

引用自:https://serverfault.com/questions/812607