实例一:控制主机和受控主机通过root用户免密验证远程控制主机实施对应任
(1)控制主机--server 通过主机名匹配对应连接的主机
(2)实现控制主机能够免密登录受控主机
1.在控制主机上生成密钥对
#ssh-keygen
2.将生成的密钥对发送到受控主机
#ssh-copy-id -i node1
#ssh-copy-id -i node2
3.验证免密是否成功登录
[root@server ~]# ssh node1 hostname
node1
[root@server ~]# ssh node2 hostname
node2
实例二:控制主机连接受控主机通过普通用户以免密验证远程控住受控主机实施特权指定操作
当我们用普通用户在受控主机上新建用户时,会遇到权限不够的问题,而ansible中有提权的操作
(1)确定控制端和受控端都有对应的普通身份,可以通过 id 用户名 查看
(2)进入控制端的普通用户下,再次创建密钥对,发送给受控主机实现免密登录
(3)在受控主机中进行提权操作
vim /etc/sudoers
第一种[root@node1 ~]# cat /etc/sudoers | grep -C 1 redhat 查看是否授权
root ALL=(ALL) ALL
redhat ALL=(ALL) NOPASSWD: ALL
第二种[root@node2 ~]# cat /etc/sudoers | grep wheel
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) NOPASSWD: ALL
[root@node2 ~]# gpasswd -a cyg wheel
正在将用户“cyg”加入到“wheel”组中
(4)查看提权是否成功
[root@server ~]# ssh node1 sudo useradd user1
[root@server ~]# ssh node1 id user1
uid=1001(user1) gid=1001(user1) 组=1001(user1)
[root@server ~]# ssh node2 id cyg
uid=1000(cyg) gid=1000(cyg) 组=1000(cyg),10(wheel)