下面给你一个在 Linux 上搭建 FTP 服务器的常见、稳妥方案,以 vsftpd(Very Secure FTP Daemon) 为例,适用于 CentOS / Rocky / Alma / Ubuntu / Debian。
sudo yum install -y vsftpd
sudo apt update
sudo apt install -y vsftpd
sudo systemctl start vsftpd
sudo systemctl enable vsftpd
查看状态:
systemctl status vsftpd
配置文件位置:
/etc/vsftpd/vsftpd.conf # CentOS
/etc/vsftpd.conf # Ubuntu
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
chroot_local_user=YES
allow_writeable_chroot=YES
⚠️
chroot_local_user=YES会把用户锁在自家目录,防止访问系统其他目录
sudo useradd -m ftpuser
sudo passwd ftpuser
设置家目录权限:
sudo chmod 755 /home/ftpuser
# firewalld
sudo firewall-cmd --permanent --add-port=21/tcp
sudo firewall-cmd --reload
# ufw
sudo ufw allow 21/tcp
在配置文件中加:
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000
防火墙放行:
sudo firewall-cmd --permanent --add-port=30000-31000/tcp
sudo firewall-cmd --reload
sudo setsebool -P ftpd_full_access on
ftp localhost
ftp://ipwrite_enable=YES/sbin/nologin)sudo usermod -s /bin/bash ftpuser
如果你告诉我:
我可以直接给你一份可直接用的配置文件。