首先需要关闭selinux

#setenforce 0 //临时关闭,不需要重启服务器

#vim /etc/sysconfig/selinux

把里边的一行改为

SELINUX=disabled //此方法重启生效

1.创建CA认证机构

#cd /etc/pki/CA

#(umask 077; openssl genrsa -out private/cakey.pem)#生成一对密钥

#openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3667 #生成自签证书,然后填写相关信息,后面生成证书颁发请求时候填写的信息要一致。

标红的地方后面填写要一致
Linux+vsftp+openssl实现ftp服务加密_vim
#vim /etc/pki/tls/openssl.cnf #编辑此文件

找到[ CA_default ]

将下面的 dir = …/…/CA

改成绝对路径: dir = /etc/pki/CA

#mkdir certs crl newcerts

#touch index.txt

#echo 00 > serial //设置序列号

2、安装vsftpd

#yum install -y vsftpd

3、创建密钥

#mdkir /etc/vsftp/ssl

#cd /etc/vsftpd/ssl

#(umask 077; openssl genrsa 1024 >ftp.amd5.key) // 创建一对1024位长度的密钥

#openssl req -new -key ftp.amd5.key -out ftp.amd5.csr //生成证书颁发请求此处填写的信息要和前面CA生成自签证书时候填写的信息要一致

#openssl ca -in ftp.amd5.csr -out ftp.amd5.crt -days 3655 //签署此证书10年的有效期

4、配置vsftp.conf

#vim /etc/vsftpd/vsftp.conf

在文档尾部添加:

# ssl or tls

ssl_enable=YES

ssl_sslv3=YES

allow_anon_ssl=NO

force_local_data_ssl=YES

force_local_logins_ssl=YES

rsa_cert_file=/etc/vsftpd/ssl/ftp.amd5.crt

rsa_private_key_file=/etc/vsftpd/ssl/ftp.amd5.key

#useradd -s /sbin/nologin -d /tmp/tom tom

#echo “12344321” | passwd –stdin tom

#/ect/init.d/vsftpd restart

vsftpd详细设置,可以参考阿汤博客教程:Centos环境下安装配置vsftpd

5、使用flashfxp工具连接测试
Linux+vsftp+openssl实现ftp服务加密_重启_02
Linux+vsftp+openssl实现ftp服务加密_linux_03
Linux+vsftp+openssl实现ftp服务加密_vim_04
Linux+vsftp+openssl实现ftp服务加密_vim_05

参考:http://www.amd5.cn/atang_3287.html