在 Debian 上搭建 加密的 FTP(FTPS)服务器,最常见、稳定的方案是使用 ProFTPD 或 vsftpd + TLS/SSL。下面我分 两种主流方案 给你讲,推荐 ProFTPD(显式 FTPS),兼容性好、配置清晰。
sudo apt update
sudo apt install proftpd proftpd-mod-crypto
安装时会询问运行方式,选 standalone。
sudo mkdir -p /etc/proftpd/ssl
sudo openssl req -new -x509 -days 365 -nodes \
-out /etc/proftpd/ssl/proftpd.crt \
-keyout /etc/proftpd/ssl/proftpd.key
证书路径:
/etc/proftpd/ssl/proftpd.crt/etc/proftpd/ssl/proftpd.key编辑配置文件:
sudo nano /etc/proftpd/modules.conf
确保启用:
LoadModule mod_tls.c
编辑主配置:
sudo nano /etc/proftpd/proftpd.conf
添加或修改:
Include /etc/proftpd/tls.conf
编辑:
sudo nano /etc/proftpd/tls.conf
内容示例:
<IfModule mod_tls.c>
TLSEngine on
TLSLog /var/log/proftpd/tls.log
TLSProtocol TLSv1.2
TLSRSACertificateFile /etc/proftpd/ssl/proftpd.crt
TLSRSACertificateKeyFile /etc/proftpd/ssl/proftpd.key
TLSVerifyClient off
TLSRequired on
</IfModule>
✅ TLSRequired on:强制加密
✅ 支持 显式 FTPS(推荐)
sudo systemctl restart proftpd
sudo systemctl enable proftpd
sudo apt install vsftpd
sudo openssl req -x509 -nodes -days 365 \
-newkey rsa:2048 \
-keyout /etc/ssl/private/vsftpd.key \
-out /etc/ssl/certs/vsftpd.crt
sudo nano /etc/vsftpd.conf
添加:
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
rsa_cert_file=/etc/ssl/certs/vsftpd.crt
rsa_private_key_file=/etc/ssl/private/vsftpd.key
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
重启:
sudo systemctl restart vsftpd
| 类型 | 端口 |
|---|---|
| FTP 控制 | 21 |
| 被动模式数据 | 30000–31000(需手动开放) |
被动模式示例(ProFTPD):
PassivePorts 30000 31000
防火墙放行:
sudo ufw allow 21/tcp
sudo ufw allow 30000:31000/tcp
✅ 推荐 ProFTPD + TLS
❌ 不推荐:
如果你愿意,我可以帮你:
直接告诉我你是 内网 / 公网 / 云服务器 即可。