我已经设置了一个带有 mod_sftp 的新 proftpd 服务器以支持 SSH,当我使用密码时我可以登录。但是当我尝试使用我的 SSH 密钥时,我无法连接。
这是完整的proftpd.conf 文件:
[root@myers log]# cat /usr/etc/proftpd.conf
ServerName "Develop CENTS"
ServerType standalone
DefaultServer on
Port 2215
UseIPv6 off
# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask 022
MaxInstances 15
User nobody
Group nobody
DefaultRoot ~
AllowOverwrite on
# Bar use of SITE CHMOD by default
<Limit SITE_CHMOD>
DenyAll
</Limit>
<IfModule mod_auth_pam.c>
AuthPAM off
</IfModule>
<IfModule mod_sftp.c>
SFTPEngine on
SFTPHostKey /usr/etc/proftpd/rsa_key
SFTPHostKey /usr/etc/proftpd/dsa_key
Port 2216
SFTPAuthMethods publickey
MaxLoginAttempts 4
SFTPCompression delayed
<VirtualHost www.mydomain.com>
SFTPAuthorizedUserKeys file:/home/mydomain.com/.ssh/authorized_keys
DefaultRoot ~
</VirtualHost>
</IfModule>
这是我在 /var/log/messages 中看到的一行,无论使用哪种身份验证方法:
Mar 19 10:41:51 myers proftpd[29675]: myhost.com - unable to create namebind for 'www.mydomain.com' to IPAddress#21: No such file or directory
除此之外,当我尝试使用 SSH 密钥连接时,日志文件中唯一出现的是客户端确实到达服务器并打开了 SSH2 会话,但下一行表明 SSH2 会话已关闭。
有任何想法吗?
这只是一个美容警告。据我了解,您使用的是 proftpd-1.3.5。
您可以在http://sourceforge.net/p/proftp/mailman/proftp-user/thread/alpine.DEB.2.00.1503301702090.3566%40familiar.castaglia.org/#msg33678099找到更多信息
从您的配置来看,您似乎希望端口 2215 上的普通 FTP 服务器和端口 2216 上的 SFTP 服务器。为此,您需要
mod_sftp
在其自己的<VirtualHost>
部分中进行配置。就您的配置而言,两个Port
指令都出现在相同的“vhost”上下文中,因此 ProFTPD 在解析配置时可能无法达到您的预期。我建议使用类似的东西:希望这可以帮助!