SSH免密登录远程服务器

适用系统:MAC OS、LINUX以及大部分基于UNIX的系统
1.客户机生成RSA密钥

ssh-keygen -t rsa #各项配置保持默认即可
ls ~/.ssh

查看是否有id_rsa(私钥)和id_rsa.pub(公钥)两个文件。
2.上传公钥到服务器

scp ~/.ssh/id_rsa.pub [email protected]:/root/.ssh/
#将root替换成要免密登录的用户,将abc.com换成服务器地址,将/root/替换成登录用户的home路径
#执行scp之前先要确定home路径下有.ssh目录,如果没有则手动创建一个
#私钥不用上传

3.将公钥加入到authorized_keys
先用ssh登录到服务器。

cd ~/.ssh
cat /root/.ssh/id_rsa.pub >> authorized_keys

至此一般就可以免密登录了。
4.使用别名连接服务器
免密登录也是为了方便,何不再方便一点,每次连接服务器时只使用别名来连接。
以下是客户机上的操作:

vi ~/.ssh/config

加入下面的内容

Host abc #起的别名
HostName abc.com #服务器的域名或者ip地址
User root #登录服务器的用户名
Port 22 #登录服务器的端口号

接下来,只要使用ssh abc命令就可以登录了。
5.注意事项
如果按照上述配置,还是无法免密登录,请检查以下配置(服务器端)。
(1)用户目录权限为755或者700,不能是77x
(2).ssh目录权限为755或者700
(3)rsa_id.pub和authorized_keys权限为644
(4).ssh目录及下面的文件,它们所属用户和用户组应该为要免密登录的用户和用户组

发布了28 篇原创文章 · 获赞 0 · 访问量 2708

猜你喜欢

转载自blog.csdn.net/weixin_43855938/article/details/89525874