Ubuntu FTP Server防火墙设置要点
Ubuntu系统默认使用**UFW(Uncomplicated Firewall)**作为防火墙管理工具,因其操作简单、配置直观,是新手推荐的选择;若需更底层配置,也可使用iptables,但需手动保存规则。
FTP协议的核心是控制连接(用于发送命令),默认使用TCP端口21。无论使用UFW还是iptables,均需首先开放此端口:
sudo ufw allow 21/tcpsudo iptables -A INPUT -p tcp --dport 21 -j ACCEPTFTP数据传输(如文件上传/下载)需通过数据端口完成,分为两种模式:
sudo ufw allow 50000:50100/tcpsudo iptables -A INPUT -p tcp --dport 50000:50050 -j ACCEPT被动模式需在FTP服务器配置文件中明确端口范围,并同步开放防火墙。以vsftpd为例:
sudo nano /etc/vsftpd.confpasv_enable=YES(启用被动模式)pasv_min_port=50000(最小端口)pasv_max_port=50100(最大端口)sudo systemctl restart vsftpd若使用iptables,规则默认不会持久化,需安装iptables-persistent工具保存:
sudo apt install iptables-persistentsudo netfilter-persistent savesudo netfilter-persistent reloadsudo ufw status(确认21、20及被动模式端口范围显示为“ALLOW”);sudo iptables -L -v(确认对应端口规则存在且计数递增);sudo ufw allow from 192.168.1.0/24 to any port 21/tcp;vsftpd、ufw等软件为最新版本,修复已知安全漏洞。