![FreeNAS FTP 错误:425 无法建立数据连接:操作不允许](https://linux22.com/image/804148/FreeNAS%20FTP%20%E9%94%99%E8%AF%AF%EF%BC%9A425%20%E6%97%A0%E6%B3%95%E5%BB%BA%E7%AB%8B%E6%95%B0%E6%8D%AE%E8%BF%9E%E6%8E%A5%EF%BC%9A%E6%93%8D%E4%BD%9C%E4%B8%8D%E5%85%81%E8%AE%B8.png)
当我尝试连接到安装在 Freenas 8.3.0 上的启用 SSL 的 proftpd 时,我看到我的客户端反馈输出表明 AUTH TLS 正在运行,连接已加密(经 Wireshark 确认),并且一切顺利:
[2] MLSD
[2] 150 Opening ASCII mode data connection for MLSD
过了一会儿什么也没发生,我得到:
[2] 425 Unable to build data connection: Operation not permitted
完全相同的配置,减去 SSL 相关指令(在 FreeNAS GUI 中取消选中“启用 SSL”),即可完美运行。
答案1
这两个软件都存在这个问题。您的 proftpd TLS 日志可能会显示以下内容:
mod_tls/2.4.1[9592]: client did not reuse SSL session, rejecting data connection (see TLSOption NoSessionReuseRequired)
因此,解决该问题所需的指令是TLSOptions NoSessionReuseRequired
。但是,您不能简单地将其添加到要附加到 FreeNAS GUI 中的 conf 文件的指令中,因为内部它已经使用了TLSOptions
指令,并且该指令的后续使用将被忽略(即您的添加)。
proftpd 的未来版本将通过允许多个声明来解决此问题TLSOptions
。或者,FreeNAS GUI 需要NoSessionReuseRequired
在其 Enabled SSL 指令保护伞下包含或添加复选框(如果并不总是需要这样做的话)(要求会话重用可以节省资源,因此如果所有客户端都支持它,则最好这样做)。
与此同时,导航到/usr/local/etc/
并编辑proftpd.conf
。找到以下行:
TLSOptions NoCertRequest
并使其看起来像:
TLSOptions NoCertRequest NoSessionReuseRequired
我针对此事创建了一个错误报告。请在此处查看: https://bugs.freenas.org/issues/1910