在 Linux 上开启 FTP 服务,通常使用的是 vsftpd(Very Secure FTP Daemon)或 ProFTPD。下面以最常见的 vsftpd 为例说明。
yum install -y vsftpd
apt update
apt install -y vsftpd
systemctl start vsftpd
systemctl enable vsftpd
systemctl status vsftpd
看到 active (running) 表示服务已开启。
配置文件路径:
/etc/vsftpd/vsftpd.conf # CentOS
/etc/vsftpd.conf # Ubuntu
常见配置示例:
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
修改后重启服务:
systemctl restart vsftpd
# CentOS
firewall-cmd --permanent --add-port=21/tcp
firewall-cmd --reload
# Ubuntu
ufw allow 21/tcp
在 vsftpd.conf 中增加:
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000
并开放端口:
firewall-cmd --permanent --add-port=30000-31000/tcp
firewall-cmd --reload
如果连接失败,可临时关闭测试:
setenforce 0
永久允许 FTP:
setsebool -P ftpd_full_access on
ftp localhost
或本地用户登录:
ftp 服务器IP
如果你用的是 ProFTPD、Pure-FTPd,或者需要 匿名 FTP / 虚拟用户 / TLS 加密,可以告诉我,我给你对应方案。