我的 SFTP 服务器遇到了一些奇怪的问题。
我的一些客户端无法使用密钥认证通过 sftp 进行连接。
我已将所有 sftp 用户 chroot 到两个不同的目录中,这两个目录中维护着两个 authorized_keys 文件。其中一个目录运行正常,另一个则不行。
例如:我有两个 chroot 目录目录1和目录2针对同一服务器中的不同用户。我创建了一个 ssh 密钥,并在 dir1 的 authorized_key 中配置了公钥,并建立了连接,而当我将密钥放在 authorized_keys 中时,连接中断并出现以下错误。
debug3: send_pubkey_test
debug2: we sent a publickey packet, wait for reply
debug3: Wrote 368 bytes for a total of 1645
Connection closed by xx.xx.xx.xx
Couldn't read packet: Connection reset by peer
我认为authorized_key文件已损坏目录2但有些用户是通过密钥认证进行连接的。我还下载了authorized_key文件并放在不同的服务器上测试连接,结果连接成功。
请给我一些启发。
.ssh 文件夹和 authorized_keys 的服务器权限
drwxr-xr-x 2 root root 12288 Sep 26 10:33 .ssh
]#ll .ssh
-rw-r--r-- 1 root root 123243 Sep 26 15:03 authorized_keys
服务器日志中没有关于问题或连接的条目。登录时,我的 sftp 横幅已发送到客户端,但公钥传输已丢失。
编辑以澄清
当我验证 authorized_keys 时,它显示文件中有太多无效密钥和注释密钥。这是由于无效密钥太多造成的吗?
答案1
作为我的目录2authorized_keys 有很多无效密钥,所以我通过删除所有无效公钥重新创建了 authorized_keys。现在连接问题已解决,并得到了客户的积极反馈。