
1 基础命令
安装ufw:apt-get install ufw
查看防火墙现有规则:ufw status
重新加载规则:sudo ufw reload
开启/关闭防火墙:
ufw enable //开启ufw disable //关闭
开启指定tcp或者udp端口:ufw allow 22/tcp
同时开启tcp与udp端口:ufw allow 445
开放一个端口范围:ufw allow 12000:13000/tcp (端口范围必须跟协议)
删除53端口:ufw delete allow 53
2 默认规则
开机自启动:sudo ufw enable
默认拒绝所有连接请求:sudo ufw default deny
3 特定网络接口的规则设置
突出显示的输出表示网络接口名称。 它们通常被命名为eth0或enp3s2 。
因此,如果您的服务器具有名为eth0的公共网络接口,则可以使用以下命令允许HTTP流量(端口80 ):sudo ufw allow in on eth0 to any port 80
这样做将允许您的服务器从公共互联网接收HTTP请求。或者,如果您希望MySQL数据库服务器(端口3306 )监听专用网络接口eth1上的连接,例如,您可以使用此命令:sudo ufw allow in on eth1 to any port 3306
这将允许专用网络上的其他服务器连接到MySQL数据库。
4 特定的IP地址规则设置
验证新添加的规则:sudo ufw status numbered
1、拦截或拒绝来自192.168.1.5的所有数据包:
sudo ufw deny from 192.168.1.5 to any
2、阻断或拒绝IP地址202.54.1.5访问80端口的请求:
sudo ufw deny from 202.54.1.5 to any port 80
3、拦截特定IP、端口以及协议:
阻断黑客IP地址202.54.1.1访问tcp 22端口(SSH协议),可以输入:
sudo ufw deny proto tcp from 202.54.1.1 to any port 22
4、移除已有的规则:
先查询:sudo ufw status numbered
后删除:sudo ufw delete NUM
5 匹配规则
UFW(iptables)规则的匹配基于规则出现的顺序,一旦匹配某个规则,检查便会停止。因此,如果某个规则允许访问TCP端口22(如使用udo ufw allow 22),后面另一个规则指示拦截某个IP地址(如使用 ufw deny proto tcp from 202.54.1.1 to any port 22)。最终,允许访问TCP端口22的规则会被使用,而后一个拦截黑客IP地址 202.54.1.1 却没有被使用。
这都是由于规则的顺序造成的。为避免这类问题,你需要编辑 /etc/ufw/before.rules文件,在“# End required lines”之后"Block an IP Address"添加规则。
查找如下所示的行:# End required lines
添加规则来拦截黑客或垃圾信息传播者:
# Block spammers
-A ufw-before-input -s 178.137.80.191 -j DROP
# Block ip/net (subnet)
-A ufw-before-input -s 202.54.1.0/24 -j DROP
保存并关闭文件。让防火墙重新加载配置信息:sudo ufw reload
特定路由选择性屏蔽
ufw route deny in on ens33【50】 out on ens38【1】 to 12.34.45.67
ufw route deny in on ens33 out on ens38 to 192.168.1.204
About the author
冥冥之中,自有天意。
Comments
Join the discussionNo comments yet. Be the first to comment.




