在更新规则前,需确认当前防火墙的运行状态及已有规则,避免误操作影响现有配置。
使用以下命令查看详细状态(包括规则列表、默认策略、日志状态等):
sudo ufw status verbose
若防火墙未启用,可通过sudo ufw enable命令开启(开启后系统启动时会自动激活)。
根据需求添加允许或拒绝特定流量规则,常见场景如下:
sudo ufw allow 80/tcp # 允许TCP协议的80端口
sudo ufw allow 443/tcp # 允许TCP协议的443端口
/etc/services中定义):sudo ufw allow ssh # 允许SSH服务(默认22端口)
sudo ufw allow http # 允许HTTP服务
192.168.1.100访问服务器所有端口):sudo ufw allow from 192.168.1.100 to any
10.0.0.5访问22端口):sudo ufw allow from 10.0.0.5 to any port 22
sudo ufw deny 21/tcp
添加规则后,可通过sudo ufw status查看是否生效。
若需移除不再需要的规则,可使用delete命令,语法与添加规则类似:
80/tcp端口规则):sudo ufw delete allow 80/tcp
sudo ufw delete allow ssh
192.168.1.100的访问权限):sudo ufw delete allow from 192.168.1.100
删除规则时需确认规则是否存在,避免误删。
修改规则后,需通过reload命令使更改生效,无需重启系统或防火墙服务:
sudo ufw reload
该命令会重新加载/etc/ufw/user.rules等配置文件,确保新规则被应用。
Ubuntu的UFW工具会在规则修改后自动保存到/etc/ufw/user.rules和/etc/ufw/user6.rules(IPv6规则),无需手动执行save命令。若需手动备份,可将规则文件复制到其他目录。
sudo ufw allow 22/tcp规则。telnet或curl等工具测试端口是否可达,确保规则配置正确。/etc/ufw/user.rules文件,防止规则丢失。通过以上步骤,可完成Ubuntu防火墙规则的更新与管理,确保系统网络安全。