我刚刚尝试将 ProFTPD 设置为 SFTP 服务器,但是在进行公钥认证时我遇到了一些奇怪的行为。
由于某种原因,proftpd 接受提供给它的每个密钥指纹,无论它是否存在于用户的授权密钥文件中,导致我的代理(在本例中为 keeagent)提示输入每个密钥,直到找到用户的密钥。
这似乎与仅接受authorized_keys文件中存在的密钥的OpenSSH服务器有所不同。
这是预期的行为吗?或者是一个错误?
ProFTPD 版本 1.3.5a
<IfModule mod_sftp.c>
SFTPEngine on
Port 2222
SFTPLog /var/log/proftpd/sftp.log
# Configure both the RSA and DSA host keys, using the same host key
# files that OpenSSH uses.
SFTPHostKey /etc/ssh/ssh_host_rsa_key
SFTPHostKey /etc/ssh/ssh_host_dsa_key
SFTPHostKey /etc/ssh/ssh_host_ecdsa_key
SFTPAuthMethods publickey
SFTPAuthorizedUserKeys file:~%u/.ssh/sftp_keys
# Enable compression
SFTPCompression delayed
</IfModule>