温馨提示×

Debian FTPServer端口设置有哪些

小樊
32
2025-12-24 00:06:37
栏目: 智能运维

Debian FTP Server 端口设置指南

在基于 Debian 的 FTP 服务(以 vsftpd 为主)中,端口分为控制连接、数据连接与加密端口三类。下面给出常用端口、配置项与防火墙放行方法,便于快速部署与排障。

端口类型与用途

端口或范围 用途 典型配置项或说明
21/tcp 控制连接(命令与响应) vsftpd 默认监听 21;客户端登录、发送命令均走此端口
20/tcp 主动模式数据连接(服务器→客户端) 主动模式由服务器发起数据连接,需放通 20/tcp
pasv_min_port–pasv_max_port(自定义范围) 被动模式数据连接(客户端→服务器) 在 vsftpd.conf 中设置,如 40000–4500049152–65535
990/tcp 显式 FTPS(FTP over SSL/TLS)控制通道 启用 SSL/TLS 时常用端口 990
自定义端口(如 2121/tcp) 非标准控制端口 需修改 vsftpd 的监听端口并重定向防火墙/路由器

说明:主动模式依赖 20/tcp 发起数据通道;被动模式由客户端连接服务器侧的“被动端口范围”。若使用显式 FTPS,通常使用 990/tcp 作为控制通道端口。

vsftpd 配置要点

  • 配置文件路径:/etc/vsftpd.conf。修改后需重启服务生效(如:sudo systemctl restart vsftpd)。
  • 被动端口范围示例:
    • pasv_enable=YES
    • pasv_min_port=40000
    • pasv_max_port=45000
  • 主动模式数据端口:
    • connect_from_port_20=YES(由服务器从 20/tcp 发起数据连接)
  • 显式 FTPS(推荐):
    • ssl_enable=YES
    • rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
    • rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
    • 客户端使用“FTP over TLS/显式 FTPS”,默认控制端口 990/tcp
  • 非标准控制端口(示例改为 2121/tcp):
    • 在 vsftpd.conf 中设置 listen_port=2121
    • 防火墙/路由器需将外部 2121/tcp 转发到服务器 21/tcp(见下文)

防火墙放行示例(UFW)

  • 开放控制与被动端口范围(示例范围 40000–45000):
    • sudo ufw allow 21/tcp
    • sudo ufw allow 40000:45000/tcp
  • 启用显式 FTPS 时:
    • sudo ufw allow 990/tcp
  • 主动模式数据端口(如启用主动模式):
    • sudo ufw allow 20/tcp
  • 非标准端口(示例 2121/tcp):
    • sudo ufw allow 2121/tcp
  • 使规则生效并验证:
    • sudo ufw enable
    • sudo ufw status(或 sudo ufw status numbered)

NAT 端口转发示例(路由器或本机 iptables)

  • 将公网 2121/tcp 转发到内网 192.168.1.100:21(示例):
    • sudo iptables -t nat -A PREROUTING -p tcp --dport 2121 -j DNAT --to-destination 192.168.1.100:21
    • sudo iptables -t nat -A POSTROUTING -p tcp -d 192.168.1.100 --dport 21 -j MASQUERADE
    • 保存规则(Debian 常用):sudo netfilter-persistent save && sudo netfilter-persistent reload

0