vsftpd实现基于SSL的FTPS

一、查看是否支持SS

$ ldd `which vsftpd`
$ ldd `which vsftpd`|grep libssl
libssl.so.10 => /lib64/libssl.so.10 (0x00007f7bd8ea7000)

二、创建自签名证书

# CentOS 7 上可以实现直接生成一个包括私钥和证书的文件
$ cd /etc/pki/tls/certs/
$ make vsftpd.pem
$ openssl x509 -in vsftpd.pem -noout –text
# 在CentOS8上手动分别生成一个证书和私钥文件,再合并成一个文件
$ mkdir /etc/vsftpd/ssl
$ cd /etc/vsftpd/ssl
$ openssl req -x509 -nodes -keyout vsftpd.key -out vsftpd.crt -days 365 -newkey rsa:2048
$ cat vsftpd.crt vsftpd.key > vsftpd.pem

三、配置vsftpd服务支持SSL

$ 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

命令行客户端测试:

$ ftp 10.4.7.1
Connected to 10.4.7.1 (10.4.7.1).
220 (vsFTPd 3.0.2)
Name (10.4.7.1:root): lzj
530 Non-anonymous sessions must use encryption.
Login failed.
421 Service not available, remote server has closed connection

用filezilla工具测试

2021-02-15_234937
2021-02-15_234911

posted @   吕振江  阅读(1289)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
浏览器标题切换
浏览器标题切换end
点击右上角即可分享
微信分享提示

目录导航