查看vsftpd是否支持ssl
ldd `which vsftpd`|grep ssl
输出
libssl.so.6 => /lib64/libssl.so.6 (0x00002ba684304000)
表示支持
使用openssh生成密匙
openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout /etc/vsftpd/vsftpd.pem -out /etc/vsftpd/vsftpd.pem
配置vsftpd.conf,加入以下文件
ssl_enable=YES
allow_anon_ssl=YES
force_local_data_ssl=YES
force_local_logins_ssl=YES
force_anon_logins_ssl=YES
force_anon_data_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
rsa_cert_file=/etc/vsftpd/vsftpd.pem
rsa_private_key_file=/etc/vsftpd/vsftpd.pem
重启vsftpd服务
ftp使用tls连接出现:500 Illegal PORT command错误
配置vsftpd的被动模式:
#pasv
pasv_enable=YES
pasv_min_port=30001
pasv_max_port=31000
iptables开启被动模式端口
iptables -A INPUT -p tcp --dport 30001:31000 -j ACCEPT
重启vsftpd,连接正常
ldd `which vsftpd`|grep ssl