UFW被称为简单防火墙,或者不复杂防火墙。最初是针对UBUNTU系统发布的,UFW提供了一个用于管理netfilter的框架。
在本教程中,我们将在CentOS 8系统上安装和设置UFW。文中所有命令均适用于RHEL 8系统。
第一步: 安装和启用UFW
默认情况下,UFW没有包含在CentOS软件仓库中。我们需要在服务器上安装EPEL软件库。
sudo dnf install epel-release -y
安装和启用 UFW:
# install
sudo dnf install ufw -y
# enable
sudo ufw enable
查看UFW的运行状态:
sudo ufw status
如果要关闭 UFW 防火墙,可以执行下面的命令:
sudo ufw disable
第二步 : UFW 默认策略
默认情况下,UFW阻止所有传入流量,并允许所有传出流量。可以执行以下命令来设置默认策略:
sudo ufw default allow outgoing
sudo ufw default deny incoming
第三步 : 添加防火墙规则
增加UFW的防火墙规则非常简单,比如我们要开启HTTP (80) 端口:
sudo ufw allow http
# or
sudo ufw allow 80
要基于TCP或UDP过滤数据包,我们需要运行以下命令:
sudo ufw allow 80/tcp
sudo ufw allow 21/udp
我们可以通过执行下面的命令,拒绝某个端口的所有传入流量和传出流量。
sudo ufw deny 8081
我们可以查看正在运行的端口:
# method 1
sudo ufw status
# method 2
sudo ufw status numbered
# method 3
sudo ufw status verbose
第四步 : 删除防火墙规则
与添加防火墙规则相同,删除防火墙规则也非常的简单,只需要执行下面的操作:
sudo ufw delete allow http
sudo ufw delete deny 8081
我们也可以按编号删除防火墙规则。执行如下命令:
sudo ufw status numbered
我们将在防火墙规则前面,看到每条防火墙规则对应的数字编号。然后,可以像这样按编码删除防火墙规则:
sudo ufw delete 5
如果想重置所有的防火墙规则,可以执行如下操作:
sudo ufw reset
第五步 : UFW 的高级规则
我们可以通过如下的命令,来允许或拒绝某个IP访问服务器的所有服务:
# allow
sudo ufw allow from 192.168.2.57
# deny
sudo ufw deny from 192.168.2.57
要允许特定IP和端口组合,可以执行如下操作:
sudo ufw allow proto tcp from 192.168.2.57 to any port 22
允许或拒绝特定的IP范围(192.168.1.1到192.168.1.254)访问所有服务:
# allow
sudo ufw allow from 192.168.1.0/24
# deny
sudo ufw deny from 192.168.1.0/24
阻止某个网段访问22端口:
sudo ufw deny proto tcp from 192.168.2.0/24 to any port 22
要允许从1000到1500的端口范围访问TCP和UDP,请执行以下操作:
sudo ufw allow 1000:1500/tcp
sudo ufw allow 1000:1500/udp
要允许网络接口eth0上的HTTP通信:
sudo ufw allow in on eth0 to any port 80
第六步 : UFW 阻止IP无效
添加规则后,如果UFW防火墙没有成功阻止IP,我们打开UFW配置文件:
sudo nano /etc/ufw/before.rules
找到这一行# End required lines
,在此行之后,添加如下规则:
# block single IP
-A ufw-before-input -s 192.168.2.57 -j DROP
# block subnet
-A ufw-before-input -s 192.168.2.0/24 -j DROP
也可以尝试如下操作:
sudo ufw insert 1 deny from 192.168.2.57 comment 'Block spammer'
sudo ufw insert 1 deny from 192.168.2.0/24 comment 'Block XSS attack subnet'
第七步 : 更多信息
下面的这些是UFW防火墙的配置文件:
/etc/ufw/before.rules
/etc/ufw/before6.rules
/etc/ufw/after.rules
/etc/ufw/after6.rules
要启用或者禁用日志记录,请执行以下命令:
# on
sudo ufw logging on
# off
sudo ufw logging off
检查日志:
sudo tail -f /var/log/ufw.log
查看最近添加的防火墙规则:
sudo ufw show added
到这里,我们就完成了在CentOS 8 / RHEL 8上安装和配置UFW防火墙的工作。
作者:牛奇网,本站文章均为辛苦原创,在此严正声明,本站内容严禁采集转载,面斥不雅请好自为之,本文网址:https://www.niuqi360.com/linux/setup-ufw-firewall-on-centos-8-and-rhel-8/