Linux环境非root用户配置SSH免密登录,并解决登录仍提示输入密码
ssh免密登录的简单理解
以A和B进行举例:A免密登录B
(即在A服务器输入命令:ssh 非root用户名@B的IP地址)可以直接免密码直接登录
A生成私钥和公钥,然后把A的公钥发给B,B存储A的公钥
(这里就相当于A生成了钥匙和锁,然后B在在自家门上又按上了一把A的锁,下次A来访问B,A直接开B按上的那把锁就能直接进入了,当然这个过程是自动的不可见的)
A服务器生成公钥和私钥
在A服务器输入命令ssh-keygen -t rsa
,然后一路回车即可,然后在(LinuxA)/root/.ssh/下或者 (WindowsA)C:\Users\用户名.ssh下生成会生成两个文件id_rsa 和 id_rsa.pub ;
去B服务器上加入A的公钥
这里注意你的B服务器允许root用户登录,那么你需要在/root/.ssh下新建文件authorized_keys,然后vim authorized_keys
,将A服务器中id_rsa.pub的内容加入到B服务器上的authorized_keys中。
(如果你是非root用户登录,那么你需要在/home/非root用户/.ssh/下新建文件authorized_keys)
给予对应权限
- root用户