vsftpd 的文档非常好(https://security.appspot.com/vsftpd/vsftpd_conf.html),但我找不到有关如何使用公钥身份验证的一些详细信息。我知道我需要 require_cert 和可能还需要validate_cert,但我该将用于身份验证的公用客户端密钥放在哪里?我找不到有关这方面的信息。
答案1
vsftpd 用于 FTP,FTP 本质上不加密(通过 SSL 的 ftp 是另一回事)
您无法使用 vsftpd 设置公钥认证——您对 FTP 和 SFTP 这两个不同的协议感到困惑。
要对 SFTP 使用公钥认证,只需在服务器上安装公钥即可,就像对 ssh 进行的操作一样,详情如下 -http://www.noah.org/wiki/SSH_public_keys
通过此配置,您可以使用 OpenSSH 的 SFTP 身份验证实现。
如果你正在谈论设置 FTP 或通过 SSL 进行 FTP,那么本指南将会很有用 -http://wiki.vpslink.com/Configuring_vsftpd_for_secure_connections_%28TLS/SSL/SFTP%29
但是,此示例不是公钥认证,它只是服务器端认证,可用于加密您的 FTP 连接。