- 首页 >
- 问答 >
-
云计算 >
- Debian FTP服务器端口设置方法
Debian FTP服务器端口设置方法
小樊
43
2025-12-25 22:20:39
Debian FTP服务器端口设置方法
一、前置说明
- 常见 FTP 服务软件为 vsftpd 与 Pure-FTPd,两者都支持自定义控制端口与被动模式端口范围。
- FTP 有 主动模式(控制端口通常为 21,数据端口通常为 20)与 被动模式(服务器开放一段高位端口供数据连接)。若使用 FTPS(显式/隐式 SSL/TLS),通常还会用到端口 990(隐式)或启用 SSL 后的控制连接。配置端口后,务必同步放行防火墙与云安全组规则。
二、vsftpd 端口设置
- 修改控制端口
- 编辑配置文件:sudo nano /etc/vsftpd.conf
- 设置控制端口(默认 21):listen_port=新端口号
- 仅 IPv6 场景可用 listen_ipv6 与 listen 互斥,按需二选一
- 保存后重启:sudo systemctl restart vsftpd
- 配置被动模式端口范围(强烈建议固定范围以便放行防火墙)
- 在 vsftpd.conf 中添加:
- pasv_enable=YES
- pasv_min_port=35000
- pasv_max_port=40000
- 重启服务:sudo systemctl restart vsftpd
- 防火墙放行示例(UFW)
- 放行控制端口与新端口:sudo ufw allow 新端口号/tcp
- 放行被动端口范围:sudo ufw allow 35000:40000/tcp
- 如使用 FTPS:sudo ufw allow 990/tcp
- 查看规则:sudo ufw status
- 说明
- 主动模式数据端口由 connect_from_port_20 等参数影响;被动模式需确保 pasv_min_port/pasv_max_port 与防火墙一致。
三、Pure-FTPd 端口设置
- 修改控制端口
- 编辑配置文件:sudo nano /etc/pure-ftpd/pure-ftpd.conf
- 设置控制端口:Port 新端口号
- 保存后重启:sudo systemctl restart pure-ftpd
- 配置被动模式端口范围
- 方法一(推荐,直接写入配置):在配置中增加
- PassivePortRange 35000 40000
- 方法二(命令行选项):在启动服务时指定
- 例如:sudo pure-ftpd -P 新端口号 -p 35000:40000
- 防火墙放行示例(UFW)
- 放行控制端口:sudo ufw allow 新端口号/tcp
- 放行被动端口范围:sudo ufw allow 35000:40000/tcp
- 如使用 FTPS:sudo ufw allow 990/tcp
- 说明
- 不同发行版或安装方式下,Pure-FTPd 的配置文件路径与启用方式可能略有差异,请以实际环境为准。
四、验证与常见问题
- 连通性验证
- 命令行:ftp 服务器IP 端口 或使用 lftp:lftp -u 用户名,密码 ftp://服务器IP:端口
- 图形客户端(如 FileZilla):新建站点,协议选 FTP 或 FTPS,端口填自定义的新端口号,在“被动模式设置”中填入与服务器一致的 35000-40000 范围
- 常见问题排查
- 无法登录:检查服务是否监听新端口(ss -lntp | grep ftp)、配置文件是否生效、SELinux/AppArmor 是否拦截
- 能登录但列目录/传输失败:被动模式端口范围未放行或客户端未使用被动模式
- 使用云服务器:在控制台安全组同时放行自定义控制端口与被动端口范围
- 安全性建议:优先使用 FTPS 或 SFTP;如必须用 FTP,避免使用默认端口 21,并限制可登录用户与目录