解决git配置了公钥还需要验证密码
客户端的公钥已经给了远程仓库所在用户的.ssh/authorized_keys文件,clone仍然提示需要密码?
或者只有部分主机会出现这种情况,请先不要怀疑是公钥私钥的问题,先配置如下:
修改sshd_config文件,切记不是ssh_config文件。vim /etc/ssh/sshd_config
然后开启:
# 是否禁用root登录,非必需
PermitRootLogin yes
# 让sshd是否去检查用户家目录文档的权限,很重要
StrictModes no
# 把下面这三个开启并配置
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
# 如果ssh使用的公钥已经注册,可以直接关闭密码登录,否则本地ssh都用不了,非必需
# PasswordAuthentication yes
最后重启一下sshd服务service sshd restart
或/bin/systemctl restart sshd.service
到这里应该就可以clone了,如果还是不行,接着往下看:
执行:ssh-add /home/ugithub/.ssh/id_rsa
如果上述命令提示:
Could not open a connection to your authentication agent.
则需要先执行下述命令后重试:ssh-agent bash
成功后提示:
Identity added: /home/ugithub/.ssh/id_rsa (/home/ugithub/.ssh/id_rsa)
本地执行测试:$ ssh -T ugithub@120.25.226.240
需要确保当前用户的.ssh文件夹权限700+和authorized_keys文件权限600+
完毕