ansible 批量推送公钥

 

这里我们使用ansible的playbook 的功能来推送秘钥

使用方法参见:http://blog.csdn.net/magedu_linux/article/details/48529645

这里我们首先配置好hosts,比如说

root@bigbao-VirtualBox:/etc/ansible/yml# cat /etc/ansible/hosts
[sky_2]
#sky1 ansible_ssh_host=10.10.20.2 ansible_ssh_port=102 ansible_ssh_user=root
#sky2 ansible_ssh_host=10.10.20.2 ansible_ssh_port=103 ansible_ssh_user=root
#sky3 ansible_ssh_host=10.10.20.2 ansible_ssh_port=104 ansible_ssh_user=root
sky1 ansible_ssh_host=10.10.20.2 ansible_ssh_port=102 ansible_ssh_user=root ansible_ssh_pass="Abcd1234"
sky2 ansible_ssh_host=10.10.20.2 ansible_ssh_port=103 ansible_ssh_user=root ansible_ssh_pass="Abcd1234"
sky3 ansible_ssh_host=10.10.20.2 ansible_ssh_port=104 ansible_ssh_user=root ansible_ssh_pass="Abcd1234"

这里我们 一定要把ansible_ssh_pass给加上,不然的话会报下面的错,这里我们可以配置完成之后,ansible_ssh_pass 给删除掉

 

 

还有一个错误是

这里我们修改一下ansible.cfg的配置文件

host_key_checking = False把注释放开

 

然后编写playbook

这里使用到了authoried_keys模块
估计背墙了,所以。。。。。
 

authoried_keys模块参数介绍

 

注意在推送playbook的时候我们要注意host 的格式(要有密码)

修改ansible的hosts(Inventory)文件,如下图所示,格式:

[主机名] [ssh连接账户] [ssh主机地址] [ssh连接账户对应的密码]

 

验证一下公钥是不是传过去了

我们看一下yml文件内容是

root@bigbao-VirtualBox:/etc/ansible/yml# cat scp_key.yml 
- hosts: sky_2
  remote_user: root

  tasks:
  - name: copy ssh key
    authorized_key:
      user: root
      key: "{{ lookup('file', '/root/.ssh/id_rsa.pub') }}"

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值