我正在尝试配置 vstpd 以使用 FTPS。我基本上遵循这些说明。
我设置了一切并生成了一个完全符合我需要的自签名证书,这个 ftp 不公开。
但是当我尝试使用 filezilla 连接到 ftp 服务器时,filezilla 挂在“验证证书”行,而不是询问我是否信任它。
使用其他 FTP 客户端(bareFTP)时,我收到此错误:
Server certificate error:
RemoteCertificateNameMismatch,
RemoteCertificateChainErrors
Try disabling Server Certificate Validation
如果我按照建议禁用验证,它就可以工作,因此问题不在于 vsftpd 配置文件,而在于我的自签名证书。
有人能告诉我它出了什么问题吗?我使用这个命令来生成它:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem
在“通用名称(例如,您的姓名)”字段中,我尝试输入服务器 IP 地址和我的公司名称。
答案1
您的问题主要在于您的服务器没有提供证书链到达信任库证书之一(这是正常的,因为它是自签名的)。您可以通过将服务器使用的证书添加到本地信任库来轻松解决此问题。此外,CN 应该与您要连接的主机名匹配。
请注意,如果您需要几个证书,最好创建自己的 CA,这样您就不必手动将每个后续证书添加到本地信任库。