在 Linux 中,FTP 服务通常由 vsftpd、proftpd 或 pure-ftpd 提供。下面以最常见的 vsftpd 为例说明如何修改 FTP 端口。
sudo vi /etc/vsftpd.conf
默认 FTP 端口是 21,你可以修改为其他端口,例如 2121:
listen=YES
listen_port=2121
如果是 IPv6 环境,还需要确认:
listen_ipv6=NO
sudo systemctl restart vsftpd
ss -lntp | grep vsftpd
或
netstat -lntp | grep vsftpd
sudo firewall-cmd --permanent --add-port=2121/tcp
sudo firewall-cmd --reload
sudo ufw allow 2121/tcp
sudo ufw reload
FTP 客户端默认使用 被动模式(PASV),否则可能连接失败。
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000
并在防火墙放行:
sudo firewall-cmd --permanent --add-port=30000-31000/tcp
sudo firewall-cmd --reload
ftp -p 2121 服务器IP
2121配置文件:
/etc/proftpd.conf
修改:
Port 2121
启动时指定端口:
pure-ftpd -S 2121
✅ 避免使用 1024 以下端口(需要 root)
✅ 云服务器务必 安全组 + 防火墙 同时放行
✅ 修改端口后,旧客户端需更新配置
如果你愿意,可以告诉我:
我可以给你完全针对你环境的配置示例。