vsftpd实现基于SSL的FTPS

实现基于 SSL 的 FTPS

查看是否支持SSL

ldd `which vsftpd`        #查看到libssl.so

范例:

[root@centos8 ~]#ldd `which vsftpd`|grep libssl
libssl.so.1.1 => /lib64/libssl.so.1.1 (0x00007f8878e2c000)

创建自签名证书

#CentOS 7 上可以实现直接生成一个包括私钥和证书的文件
[root@centos7 ~]#cd /etc/pki/tls/certs/
[root@centos7 ~]#make vsftpd.pem
[root@centos7 ~]#openssl  x509 -in vsftpd.pem -noout –text

#在CentOS8上手动分别生成一个证书和私钥文件,再合并成一个文件
[root@centos8 ~]#mkdir /etc/vsftpd/ssl
[root@centos8 ~]#cd /etc/vsftpd/ssl
[root@centos8 ssl]#
openssl req -x509 -nodes -keyout vsftpd.key -out vsftpd.crt -days 365 -newkey rsa:2048
[root@centos8 ssl]#cat vsftpd.crt  vsftpd.key > vsftpd.pem

配置vsftpd服务支持SSL:

[root@centos8 ~]#vim  /etc/vsftpd/vsftpd.conf
ssl_enable=YES          #启用SSL
allow_anon_ssl=NO       #匿名不支持SSL
force_local_logins_ssl=YES  #本地用户登录加密
force_local_data_ssl=YES    #本地用户数据传输加密
rsa_cert_file=/etc/pki/tls/certs/vsftpd.pem   #一个包括证书和私钥两个内容的文件
#rsa_private_key_file  /path/file   #此项如果没有指定,私钥也在证书文件中
#ssl_tlsv1=YES
#ssl_sslv2=NO
#ssl_sslv3=NO
#require_ssl_reuse=NO
#ssl_ciphers=HIGH

[root@centos8 ~]#systemctl restart vsftpd

[root@centos7 ~]#ftp 192.168.100.8
Connected to 192.168.100.8 (192.168.100.8).
220-welcome to magedu
220 
Name (192.168.100.8:root): wang
530 Non-anonymous sessions must use encryption.
Login failed.
421 Service not available, remote server has closed connection

#用filezilla等工具测试

vsftpd实现基于SSL的FTPS插图
vsftpd实现基于SSL的FTPS插图(1)

本文链接:http://www.yunweipai.com/35979.html

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/courses/52507.html

(0)
上一篇 2021年8月6日 16:22
下一篇 2021年8月6日 16:22

相关推荐

发表回复

登录后才能评论