[ansible]建立ssh互信

简介: [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 模块。

  1. 配置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
  1. 取消ssh的key验证。编辑/etc/ansible/ansible.cfg, 找到 host_key_checking = False 并取消注释。
  2. 编辑playbook
- hosts: grp1
  user: root
  tasks:
    - name: ssh-copy
      authorized_key:
        user: root
        state: present
        key: "{{ lookup('file', '/root/.ssh/id_rsa.pub') }}"
  1. 分发
ansible-playbook pushssh.yaml
  1. 测试
ansible grp1 -m ping

参考

相关文章
|
运维 应用服务中间件 网络安全
Ansible自动化运维工具之解决SSH连接使用明文密码问题(4)
Ansible自动化运维工具之解决SSH连接使用明文密码问题(4)
148 0
|
7月前
|
分布式计算 Hadoop Shell
使用shell脚本实现自动SSH互信功能
使用shell脚本实现自动SSH互信功能
93 1
|
7月前
|
安全 网络安全 数据安全/隐私保护
ansible 建立ssh信任并分发到各个机器
ansible 建立ssh信任并分发到各个机器
155 0
|
运维 搜索推荐 Shell
Ansible自动化运维工具之个性化定制SSH连接登录端口(3)
Ansible自动化运维工具之个性化定制SSH连接登录端口(3)
327 0
|
网络安全 数据安全/隐私保护
ansible--playbook开篇(互信demo)
ansible--playbook开篇(互信demo)
|
Linux 网络安全
linux 配置ssh互信
linux 配置ssh互信
|
Linux 网络安全
Linux 多台主机配置 ssh 互信脚本
互信是指配置免密登录另一台主机,常用于自动化脚本!
|
网络安全 数据安全/隐私保护 开发工具