SSH远程用户需要登录吗?

Modified on: Mon, 25 Jun 2018 03:20:23 +0800

我正在尝试设置SSH服务器。我将我的公钥放在authorized_keys文件中,确保权限正确等等。

当我重新启动服务器(实际上只是Ubuntu 12.04桌面)并且我在没有首次登录服务器的情况下使用时,我会被要求输入密码。但是,如果我登录服务器,我可以在不要求输入密码的情况下使用ssh。

我没有登录实际服务器时,

auth.log有这些行:

mordor sshd[1605]: debug1: trying public key file /home/buck/.ssh/authorized_keys
mordor sshd[1605]: debug1: Could not open authorized keys '/home/buck/.ssh/authorized_keys': No such file or directory

最佳答案

如果您的主目录已加密,则通常会出现此问题。通常的解决方案是将密钥放在主目录以外的目录中,并将sshd_config文件指向它。

例如:

  1. 将服务器上的authorized_keys文件从/home/buck/.ssh/authorized_keys移动到/etc/ssh/keys/buck/authorized_keys
  2. 设置此文件夹和密钥文件的权限:sudo chown -R buck:buck /etc/ssh/keys/buck/chmod 700 /etc/ssh/keys/buck/chmod 600 /etc/ssh/keys/buck/authorized_keys
  3. 编辑/etc/ssh/sshd_config并将AuthorizedKeysFile %h/.ssh/authorized_keys行更改为AuthorizedKeysFile /etc/ssh/keys/%u/authorized_keys
  4. sudo service ssh restart,您应该能够登录而无需先登录服务器。
  5. 醇>

相关问答

添加新评论