linux ssh免密登录(scp免密操作)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_36666651/article/details/82984203

使用ssh相关命令,如scp等的时候,输入密码是很麻烦的事,而且有时候需要做自动化操作,这个时候还要人手动输入密码就没法玩了,我们可以通过配置rsa私钥和公钥的方式来免密ssh登录。

也可以直接使用sshpass命令直接交互,但是不建议。

假设有两台机器,实现A到B的免密登录:

hostA:192.168.11.1
hostB:192.168.11.2
1、在主机A生成秘钥对
ssh-keygen -t rsa

一路回车,最后会生成秘钥对:
Your identification has been saved in /home/test/.ssh/id_rsa.
Your public key has been saved in /home/test/.ssh/id_rsa.pub.

2、将公钥复制到主机B
ssh-copy-id -p 22 -i ~/.ssh/id_rsa.pub [email protected]
# 然后会让输入密码

这时候登录主机B,会发现在/home/test/.ssh/目录下多个文件authorized_keys。这个时候A已经可以免密登录到B了

这一步也可以使用scp命令将id_rsa.pub拷贝过来,然后将id_rsa.pub的内容吧追加到/home/test/.ssh/authorized_keys

cat id_rsa.pub >> /home/test/.ssh/authorized_keys 

这个是单向的,B要免密登录到A的话反向操作一遍就可以了。

猜你喜欢

转载自blog.csdn.net/qq_36666651/article/details/82984203