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

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

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

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

hostA:192.168.11.1 #免密登录的客户机
hostB:192.168.11.2 #免密登录的目标机


先修改目标主机的/etc/ssh/sshd_config得配置,确保运行相应用户远程登录

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的话反向操作一遍就可以了。
————————————————
版权声明:本文为CSDN博主「wkCaeser_」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_36666651/article/details/82984203

你可能感兴趣的:(contos,linux,linux)