在 Ubuntu 上为 FTPD 服务器(例如 vsftpd)配置 SSL 加密传输,需要遵循以下步骤:
- 安装 vsftpd 和 SSL 相关软件包:
sudo apt-get update sudo apt-get install vsftpd openssl
- 生成 SSL 证书和私钥。你可以使用自签名证书或从证书颁发机构购买证书。这里我们创建一个自签名证书:
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/certs/vsftpd.pem
按照提示填写相关信息。
- 更改证书和私钥文件的权限:
sudo chmod 600 /etc/ssl/private/vsftpd.pem sudo chmod 600 /etc/ssl/certs/vsftpd.pem
- 编辑 vsftpd 配置文件:
sudo nano /etc/vsftpd.conf
在文件中添加或修改以下内容:
# 启用 SSL ssl_enable=YES # 使用 SSL 证书和私钥文件 rsa_cert_file=/etc/ssl/certs/vsftpd.pem rsa_private_key_file=/etc/ssl/private/vsftpd.pem # 强制使用 SSL 加密数据传输 force_local_data_ssl=YES force_local_logins_ssl=YES # 设置 SSL 加密协议 ssl_tlsv1=YES ssl_sslv2=NO ssl_sslv3=NO # 允许用户进行写操作 write_enable=YES # 其他配置,例如匿名访问、本地用户等 anonymous_enable=NO local_enable=YES chroot_local_user=YES allow_writeable_chroot=YES
保存并退出。
- 重启 vsftpd 服务:
sudo systemctl restart vsftpd
现在,你的 FTPD 服务器已经配置为使用 SSL 加密传输。你可以使用支持 SSL 的 FTP 客户端(如 FileZilla)连接到服务器,并在连接设置中选择使用 SSL/TLS 加密。