与 rsa 密钥的 sftp 连接问题

与 rsa 密钥的 sftp 连接问题

我使用的是 RHEL 6。我有一个用户 Jack,它没有 shell 访问权限,但有 SFTP 权限。对于我自己的用户,我ssh-keygen使用 jack(用户)的命令创建了一个 RSA 密钥对。我.ssh在 jack 的主目录下创建了文件夹。此外,我authorized-keys还在 下创建了包含公钥的文件.ssh

[root@myserver jackhome]# ls -ld .ssh
    drwx------ 2 jack jack 4096 Dec 20 11:38 .ssh
[root@myserver jackhome]# ls -l .ssh
    -rw------- 1 jack jack 405 Dec 20 11:38 authorized_keys
[root@myserver jackhome]# ls -ld /opt/apps/FTP/jackhome
    drwxr-x--- 9 root jack 4096 Dec 20 11:37 /opt/apps/FTP/jackhome

但我无法使用私钥进行 SFTP。但使用 SFTP 密码的连接工作正常。我通过 SFTP 与我自己的用户连接并.ssh在我的主目录中使用相同的authorized_keys 文件和文件夹来测试密钥对;它工作得很好。

我有一点困惑。有任何想法吗?

更新:我已将 jackhome 的所有者更改为 jack 而不是 root,即使使用密码,我也失去了 sftp 访问权限:

[root@myserver jackhome]# ls -ld /opt/apps/FTP/jackhome
   drwxr-x--- 9 jack jack 4096 Dec 20 11:37 /opt/apps/FTP/jackhome

更新2:我在 sshd_config 文件中有以下设置。 Jack 属于 sftponly 组。这可能是他无法连接 rsa 密钥的原因吗?

Match Group sftponly
    ChrootDirectory %h
    ForceCommand internal-sftp
    AllowTcpForwarding no

答案1

尝试使用带有-v标志的 sftp 并粘贴您在此处获得的内容。使用该-v标志将提高日志记录级别(详细)。

例子:

sftp -i /home/jack/.ssh/id_rsa -v [email protected]

相关内容