一、目的

批量实现免密认证,适合管理大批量机器使用


二、步骤


1-1.第一种方式:收集被控制主机的公钥,用于构建并验证ssh_known_hosts

# ssh-keyscan 10.246.151.88 >>/root/.ssh/known_hosts

1-2.第二种方式:第一次链接被控制的机器的时候,不检查private key,建议使用这种方式,比较方便

# tail -1 /etc/profile
export ANSIBLE_HOST_KEY_CHECKING=False


2.yml文件

# cat key.yml 
---
- hosts: all
  tasks:
    - name: Non secret authentication
      authorized_key: user=root key="{{ lookup('file', '/root/.ssh/id_rsa.pub') }}"  state=present


3.hosts文件如下,将密码一同写入

# cat hosts 
[ssh]
192.168.228.[126:170]
[ssh:vars]
ansible_ssh_pass="123456"


4.执行

# ansible-playbook -i hosts key.yml



阿里云开年HI购季,爆款云产品低至5折!点此购买

https://www.aliyun.com/acts/product-section-2019/home?spm=5176.8112568.520614.1.596e9ed5PQtxdH&accounttraceid=ff8cde51-e900-42b8-b536-cec8fe701245&userCode=pdhbtt9j


送您一个最高1000元的阿里云大礼包,快来领取吧~

https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=pdhbtt9j

01.png