批量登录_使用Ansible实现批量无密码登录

使用ansible实现批量无密码登录

如果机器多,假如有一百台服务器,每台服务器登录前都得先输入yes,使用交互式的方式下发公钥的话就很麻烦(ssh-copy-id)

1、免输入yes,只需改/etc/ssh/ssh_config配置文件

StrictHostKeyChecking no

2、ansible有密码项目的配置,因为一开始需要通过密码来操作服务器

[nginx]

shijiange_local ansible_ssh_port=22 ansible_ssh_host=127.0.0.1 ansible_ssh_pass='Z4s*gChCN6#j){RE'

shijiange_wai ansible_ssh_port=22 ansible_ssh_host=149.28.79.28 ansible_ssh_pass='Z4s*gChCN6#j){RE'

如下图:

25fc39ec54a315dfbaa1433a6d307604.png

3、ansible实现批量下发公钥

pubkey=`cat /root/.ssh/id_rsa.pub`

ansible all -m shell -a "cd /root/; umask 077; test -d .ssh || mkdir .ssh ; echo 'xxx(安装了ansible主机的公钥)' >> .ssh/authorized_keys"

示例:

ansible all -m shell -a "cd /root/; umask 077; test -d .ssh || mkdir .ssh ; echo ${pubkey} >> .ssh/authorized_keys"

ansible all -m shell -a "cd /root/; umask 077; test -d .ssh || mkdir .ssh ; echo ' ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDEmW+JAG92HSpemeb+pLtTnI0QClMIx0Aq8sBOqfPT+oBY5X22FPyS35yQcnIFu1qbY6WgeVXNTFo4se0eaiIq75M2BsqWJVV8+Td2e22gt2cq8Cw6W8KL5BkeV959nCVO/bar3+vexBrpJqqyyFZn46uUaiab7bwwDh11GI89DNPHAKcMN7eOEnxBwzJkLXdaaDNfwVMnCfIxzDq8hAtnYoIIk3RcZ5eoQWyEuRzOPhBdX6ulINN2A/Wt091jM/rsWnzBzq9npBzk7RTMOrehQUAP/p8JZh5Rw7viDYOOtrqjkiJp9kfixwwsJne0RMKQKjSTjvetBhxMP9Jf25O5 root@k8s-master' >> .ssh/authorized_keys"

f34e86b5ea1b11972ab23fad655b6702.png

删除ansible的缓存:

rm -fr /root/.ansible/*

8f97eb8f58d73abe8d21277cddef33f7.png

4、下发完公钥后,配置文件就能去除密码配置项了

[nginx]

shijiange_local ansible_ssh_port=22 ansible_ssh_host=127.0.0.1

shijiange_wai ansible_ssh_port=22 ansible_ssh_host=149.28.79.28

5、私钥一定要保存好,特别无密码的私钥。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值