Pure-FTPd TLS ciphersuite配置
最近发现原来的FTP证书过期,FileZilla连接时提示是否要更换证书时才发现FTP使用的cipher是AES-128的,于是动手改成AES-256。
由于pure-ftpd内建不支持设置TLS cipher suite,在maillist上问了下发现需要给源码打补丁,感谢cpanel的John Lightsey提供方法。
首先从http://httpupdate.cpanel.net/ftpinstall/pure-ftpd/src/pure-ftpd-1.0.27-1.tls.src.rpm拖安装包。 由于我不使用cPanel,所以只把里面的pureftpd-tlsciphersuite.patch解出来。虽然我用的是1.0.29的Pure-FTPd,不过这个补丁依然能用。
cPanel出了1.0.29的补丁:http://httpupdate.cpanel.net/ftpinstall/pure-ftpd/src/pure-ftpd-1.0.29-0.tls.src.rpm
cd到源码目录,执行
patch -p1 \< pureftpd-tlsciphersuite.patch
然后
./configure --with-rfc2460 --with-tls --with-puredb && make && make install
其中rfc2460(UTF-8支持)需要libiconv。
编译好之后需要编辑pure-config.pl,在my %string_switch_for = (后面加入
TLSCipherSuite =\> "-J",
最后编辑pure-ftpd.conf,加入
TLSCipherSuite HIGH:MEDIUM:+TLSv1:-AES:DHE-RSA-AES256-SHA:DHE-DSS-AES256-SHA:!SSLv2:+SSLv3@STRENGTH
重启搞定。