在 Debian 上管理 FTP 服务器,通常分为安装、配置、用户管理、安全策略、日常运维几个方面。下面以最常见的 vsftpd(Very Secure FTP Daemon) 为例说明(也提一下 proftpd / pure-ftpd 作为补充)。
sudo apt update
sudo apt install vsftpd
安装完成后:
sudo systemctl status vsftpd
vsftpd 主配置文件:
/etc/vsftpd.conf
常用管理命令:
sudo systemctl start vsftpd
sudo systemctl stop vsftpd
sudo systemctl restart vsftpd
sudo systemctl enable vsftpd
编辑配置:
sudo nano /etc/vsftpd.conf
local_enable=YES
write_enable=YES
anonymous_enable=NO
chroot_local_user=YES
allow_writeable_chroot=YES
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000
云服务器还需在防火墙/安全组放行 21 和 30000–31000
sudo adduser ftpuser
设置密码后,即可用该用户登录 FTP。
sudo usermod -s /usr/sbin/nologin ftpuser
vsftpd 支持 PAM + 虚拟用户,不直接使用系统账号,更安全。
sudo ufw allow 21/tcp
sudo ufw allow 30000:31000/tcp
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 30000:31000 -j ACCEPT
/var/log/vsftpd.log
若未生成,可在配置中启用:
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
sudo netstat -antp | grep vsftpd
不要用 FTP(明文),推荐:
启用 SSL(vsftpd):
ssl_enable=YES
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
sudo apt upgrade
| 软件 | 特点 |
|---|---|
| proftpd | 配置像 Apache,灵活 |
| pure-ftpd | 轻量、易用 |
| vsftpd | 安全、稳定(最常用) |
如果你愿意,可以告诉我:
我可以给你一份可直接用的配置文件。