[ansible]建立ssh互信
创建密钥
# 创建基于rsa算法的密钥,也可以创建ed25519算法的密钥,性能比rsa高
# 一般直接回车即可
ssh-keygen -t rsa
少量建立互信
如果主机数不多的话,可以手动建立互信。
# 示例。与目标主机192.168.0.20的root用户建立互信
ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.0.20
# 根据提示输入密码
批量建立互信
当目标主机有十几个、几十个或者成千上百个,手动互信的方式就很麻烦了,一般采用ansible的 authorized_key
模块。
- 配置ansible的hosts文件(
/etc/ansible/hosts
)
[grp1]
192.168.0.21 ansible_user=root ansible_ssh_pass=123456
192.168.0.22 ansible_user=root ansible_ssh_pass=123456
# 表示192.168.0.31 - 192.168.0.39IP的主机
192.168.0.3[1:9] ansible_user=root ansible_ssh_pass=123456
- 取消ssh的key验证。编辑
/etc/ansible/ansible.cfg
, 找到host_key_checking = False
并取消注释。 - 编辑playbook
- hosts: grp1
user: root
tasks:
- name: ssh-copy
authorized_key:
user: root
state: present
key: "{{ lookup('file', '/root/.ssh/id_rsa.pub') }}"
- 分发
ansible-playbook pushssh.yaml
- 测试
ansible grp1 -m ping
参考
本文来自博客园,作者:花酒锄作田,转载请注明原文链接:https://www.cnblogs.com/XY-Heruo/p/16602869.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
2021-08-19 CentOS7系统初始化个人配置