【Linux】ssh设置了密钥,但ssh登陆的时候还需要输入密码

-------------------------------------------------------------------------------------------------

|  欢迎关注个人公众号  zclinux_note  第一时间获取关于linux使用的技巧。探索Linux的奥秘   |

-------------------------------------------------------------------------------------------------

首先查看.ssh的权限是否为700

 

其次查看authorized_keys是否为600或者644

 

全都没有问题后,查看密钥中是否是整行,一句密钥是一行,如果中间有回车符也不对

 

如果上面都ok的话,查看ssh的配置文件/etc/ssh/sshd_config

 

#禁用root账户登录,如果是用root用户登录请开启

PermitRootLogin yes

 

# 是否让 sshd 去检查用户家目录或相关档案的权限数据,

# 这是为了担心使用者将某些重要档案的权限设错,可能会导致一些问题所致。

# 例如使用者的 ~.ssh/ 权限设错时,某些特殊情况下会不许用户登入

StrictModes no

AllowUsers root   这个就是限制了root用户,其他用户无法登陆

# 是否允许用户自行使用成对的密钥系统进行登入行为,仅针对 version 2。

# 至于自制的公钥数据就放置于用户家目录下的 .ssh/authorized_keys 内

RSAAuthentication yes

PubkeyAuthentication yes

AuthorizedKeysFile      .ssh/authorized_keys

 

# 有了证书登录了,就禁用密码登录。

PasswordAuthentication no    --这个就是即使有证书也会使用密码,如果设置了这为no,那么以后登陆即使使用密码也没办法了,一般将这个设为yes,否则需要使用密码登录的将无法登录,如果authorized.keys中没有key的话,连接ssh服务器只能去机房了

 

查看这些权限是否和上述一样,或者可以根据配置文件中的配置注释进行修改

参考:https://blog.csdn.net/b_x_p/article/details/78534423

 

 

 

 

 

posted @ 2019-08-20 17:13  zclinux  阅读(653)  评论(0)    收藏  举报