温馨提示×

Ubuntu FTP Server如何支持SSL加密

小樊
59
2025-08-08 06:19:12
栏目: 云计算

在Ubuntu上为FTP服务器配置SSL加密,通常使用vsftpd或ProFTPD软件,以下是具体步骤(以vsftpd为例):

  1. 安装FTP服务器

    sudo apt update && sudo apt install vsftpd 
  2. 生成SSL证书
    使用OpenSSL生成自签名证书(生产环境建议使用CA签发的证书):

    sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem 
  3. 配置vsftpd
    编辑配置文件 /etc/vsftpd.conf,添加或修改以下内容:

    ssl_enable=YES allow_anon_ssl=NO force_local_data_ssl=YES force_local_logins_ssl=YES ssl_tlsv1=YES ssl_sslv2=NO ssl_sslv3=NO rsa_cert_file=/etc/ssl/private/vsftpd.pem rsa_private_key_file=/etc/ssl/private/vsftpd.pem 

    说明

    • ssl_enable=YES:启用SSL加密。
    • force_local_*_ssl=YES:强制本地用户使用SSL连接。
    • 证书路径需与生成时的路径一致。
  4. 重启服务并配置防火墙

    sudo systemctl restart vsftpd sudo ufw allow 21/tcp # FTP控制端口  sudo ufw allow 990/tcp # FTPS数据端口(可选)  sudo ufw reload 
  5. 客户端测试
    使用支持FTPS的客户端(如FileZilla),连接时选择“FTP - 文件传输协议”并启用“加密”(需输入服务器IP、用户名、密码)。

注意事项

  • 自签名证书会导致客户端显示安全警告,生产环境建议使用Let’s Encrypt等受信任CA的证书。
  • 若需被动模式,需额外配置pasv_min_portpasv_max_port并开放对应防火墙端口。

参考来源:

0