我有一把钥匙~/.ssh/id_rsa
,并且我将公钥添加到我的授权钥匙中:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
我还将权限更改为 600:
sudo chmod 600 ~/.ssh/authorized_keys
我检查并/etc/ssh/sshd_config
设置了公钥认证并且密码认证为否。
PubkeyAuthentication yes
PasswordAuthentication no
我尝试添加:
ssh-keyscan -t rsa localhost > /etc/ssh/ssh_known_hosts
我复制了我的ID:
ssh-copy-id [email protected]
我重新启动了服务:
sudo service sshd restart
但尽管如此,它仍然要求输入密码!我怎样才能让它不要求输入密码?
更多信息:
当我这样做时ssh localhost
,它会要求输入密码,但是当我这样做时myusername@localhost
它就起作用了!这是为什么?
答案1
它使用的用户~/.ssh/config
与我登录时的用户不同。