SSH公钥认证不起作用[重复]

Modified on: Thu, 14 Jun 2018 10:21:53 +0800
    

这个问题已经有了答案:

    

            
  •             ssh不再允许公钥认证
                                        9个答案
                    跨度>
            
  •     

    

我无法在Ubuntu Server 12.04(A)上为SSH服务器设置公钥认证,以便从Ubuntu Server 13.04(B)进行身份验证。

我现在正在做什么(我正按照此处的说明进行操作):

  • 在B上:使用ssh-keygen -C ""创建一个新密钥,不使用密码,写入/.ssh/id_rsa - 我不明白任何错误
  • 在B上:运行ssh-copy-id -i /.ssh/id_rsa user@host-a - 同样,成功消息
  • 在B上:ssh -i /.ssh/id_rsa user@host-a - 我仍然需要输入user@host-a

在A上,我检查了/.ssh/authorized_keys是否在运行ssh-copy-id后被修改,情况就是如此。此外,在两个设备上我都将其添加到/etc/ssh/sshd_config

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile /.ssh/authorized_keys

有谁知道这里可能出现什么问题?


这是机器A上/var/log/auth.log的尾部:

Jun 13 22:17:56 laptop-camil sshd[12344]: Server listening on 0.0.0.0 port 22.
Jun 13 22:17:56 laptop-camil sshd[12344]: Server listening on :: port 22.
Jun 13 22:18:27 laptop-camil sshd[12345]: Authentication refused: bad ownership or modes for directory /.ssh
Jun 13 22:18:30 laptop-camil sshd[12345]: Accepted password for camilstaps from 164.138.27.37 port 48407 ssh2
Jun 13 22:18:30 laptop-camil sshd[12345]: pam_unix(sshd:session): session opened for user camilstaps by (uid=0)
Jun 13 22:18:35 laptop-camil sshd[12464]: Received disconnect from 164.138.27.37: 11: disconnected by user
Jun 13 22:18:35 laptop-camil sshd[12345]: pam_unix(sshd:session): session closed for user camilstaps
Jun 13 22:18:42 laptop-camil sshd[12516]: Authentication refused: bad ownership or modes for directory /.ssh
Jun 13 22:18:44 laptop-camil sshd[12516]: Connection closed by <host-b> [preauth]

最佳答案

日志文件中的任何内容,尤其是/var/log/auth.log?您还可以仔细检查.ssh目录和文件的权限。

我自己没有必要为这种访问修改sshd_config。我想知道你的修改是否破坏了东西,尤其是AuthorizedKeysFile系列。
通常,您希望将authorized_keys放在$USER/.ssh下。

以下是我的某个服务器上用户的权限:

:~/.ssh$ ls -ld .
drwx------ 2 rrd rrd 4096 May 28 17:57 .

:~/.ssh$ ll
total 280
-rw-r----- 1 rrd rrd   4351 May 22 16:20 authorized_keys
-rw------- 1 rrd rrd   1679 Apr 27  2012 id_rsa
-rw-r--r-- 1 rrd rrd    399 Apr 27  2012 id_rsa.pub
-rw-r--r-- 1 rrd rrd 266138 Jun 13 00:18 known_hosts

确保各个文件至少受到限制。

正如guntbert指出的那样,还要检查目录和文件是否归您所有。否则,权限将没有意义(或工作)。

谁拥有B上的authorized_keys中的密钥? (在密钥后面写着user @ host的位。)是root @A?

也就是说,在查看~/.ssh/authorized_keys时,您的设置等同于bert@etherbert

ssh-rsa AAAA...ffsII8dSaDF33 bert@etherbet

我只是手动编辑远程.ssh /授权密钥进行测试,输入您正在为其提供连接的用户的id_rsa.pub内容。

确保您来自具有远程authorized_keys文件中密钥的用户。

作者:,belacqua

相关问答

添加新评论