y45t4r3 发表于 2015-1-4 09:15:15

ansible推送ssh公钥

                      ansible推送ssh公钥
1 管理机器少的情况下可以直接推送过去
使用 ssh-keygen -t rsa生成密钥对,


id_rsa 私钥,保留在主机,id_rsa.pub是公钥需要推送到管理机器上,并重命名为authorized_keys文件
推送到远程机器ssh-copy-id -i ~/.ssh/id_rsa.pub username@

2 机器多的情况下,使用ssh-copy-id方法有些费时,使用ansible-playbook推送ymal,这里使用到了authoried_keys模块,可以参考 http://docs.ansible.com/authorized_key_module.html

同时hosts中内容
!neirongQQ截图20141225125319.png!

<pre>
# ansible-playbook /etc/ansible/rsync_key.ymal -f 10
</pre>
出现
<pre>
ERROR: authorized_key is not a legal parameter at this level in an Ansible Playbook
</pre>

可能是ymal语言格式问题,或者rsync_key.ymal问题,在排错········

修改rsync_key.ymal内容

1 # Using alternate directory locations:
2 - hosts: test89
3   user: root
4   tasks:
5    - name: ssh-copy
6      authorized_key: user=cuibo key="{{ lookup('file', '/root/.ssh/id_rsa.pub') }}"
7      tags:
8      - sshkey

最后,ssh公钥推送成功。
                   

页: [1]
查看完整版本: ansible推送ssh公钥