准备两台虚拟机:
host1:192.168.50.158
host2:192.168.50.159
步骤如下:
1.在host1上创建root用户生成的密钥对(直接回车,不输入密码)
生成的密钥对在/root/.ssh/目录下
2.上传公钥到host2中,需要指定公钥和端口号
3.验证是否可以不需要输入密码登录,使用密钥登录。
登录成功,用ip add看到是host2的ip地址,说明单向信任关系建立成功。
接下来在host2主机重复以上操作:
1.在host2上创建root用户生成的密钥对
2.进入存放密钥的文件架/root/.ssh,上传公钥到host1中
3.验证是否可以不需要输入密码登录,使用密钥登录
成功!
建立了免密通道后,有什么好处?
1.可以直接在远程机器上执行命令,不需要输入密码
ssh -p 22 ‘root@192.168.50.159’ mkdir /test
2.可以直接传输文件
scp -p 22 root@192.168.50.159:/etc/passwd .
3.经常可以先编写好脚本,然后scp脚本到其他的服务器,然后再去ssh执行脚本就可以了
(1).编写好脚本test.sh
(2).scp脚本到另外的机器的根目录下,命名为shell
scp -P 22 test.sh root@192.168.50.159:/shell
(3).在远程服务器上执行脚本
ssh -p 22 root@192.168.50.159 bash /shell
在host2中查看
成功了