SSH免密登录配置

Posted 年少~年

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SSH免密登录配置相关的知识,希望对你有一定的参考价值。

情况

服务器A: 192.168.0.101
服务器B: 192.168.0.102
在服务器A上 可以使用 ssh root@192.168.0.102 无需密码登录到192.168.0.102

配置

服务器A: 192.168.0.101 上查看是否有ssh公钥

1.进入.ssh目录: cd ~/.ssh
2.找到id_rsa.pub文件: ls
3.查看公钥: cat id_rsa.pub 或者 vim id_rsa.pub
4.绝对路径cat ~/.ssh/id_rsa.pub

5.没有公钥时,生成公钥和私钥
1.ssh-keygen -t rsa
2.公钥路径可默认,直接回车
3.输入密码,不输入可直接回车

使用 ssh-copy-id 将本机的公钥复制到远程机器的authorized_keys文件中

ssh-copy-id root@192.168.0.102

调试一下:

ssh root@192.168.0.102

配置免密登录后仍需要密码的主要原因是权限的问题,ssh不允许用户的主目录和.ssh目录以及authorized_keys文件的权限开放得太大

解决方法

下列修改的均是要远程登录的主机的目录/文件权限, 登录到远程服务器上如(192.168.0.102)  可以不用第一步,直接第二步
1.ssh目录的权限,它的权限须是700
chmod -R 700 ~/.ssh/
2、密钥文件authorized_keys的权限,它的权限要求是600
chmod 600 ~/.ssh/authorized_keys

以上是关于SSH免密登录配置的主要内容,如果未能解决你的问题,请参考以下文章

ssh免密登录ssh配置默认端口和指定端口免密登录

Linux——配置服务器间的免密登录

SSH免密登录配置

linux配置了免密,如何不使用免密登录

Archlinux配置免密Samba

ssh localhost 配置免密登陆仍需要密码的解决方法