如何在Ubuntu Linux服务器上使用ufw阻止IP地址
如何使用UFW在Ubuntu Linux 12.04/14.04/16.04/18.04/20.04 LTS服务器上管理防火墙。
如何阻止特定的IP地址访问我的服务器。
如何使用ufw阻止IP地址?
UFW(简单防火墙)是iptables的前端,特别适合单服务器或基于主机的防火墙。
它是Ubuntu Linux的默认防火墙配置工具。
UFW是为新系统管理员开发的,并且易于使用。
这是一种创建基于IPv4或IPv6的防火墙以保护服务器的用户友好方法。
让我们看看如何在Ubuntu服务器上使用ufw阻止IP地址。
ufw阻止特定IP地址
语法为:
sudo ufw deny from {ip-address-here} to any
要阻止或拒绝来自192.168.1.5的所有数据包,请执行:
sudo ufw deny from 192.168.1.5 to any
阻止IP地址ufw
我们可以拒绝拒绝来自任何IP的连接,而不是拒绝规则,如下所示:
sudo ufw reject from 192.54.5.7 to any
当您希望另一端(攻击者)知道端口或IP不可达时,可以使用拒绝。
但是,我们将拒绝用于与您根本不希望别人看到的攻击者(主机)的连接。
换句话说,拒绝将拒绝响应发送到源,而拒绝(DROP)目标则什么也不发送。
显示防火墙状态,包括您的规则
验证新添加的规则,执行:
$ sudo ufw status numbered
或者
$ sudo ufw status
UFW防火墙状态
ufw阻止特定的IP和端口号
语法为:
ufw deny from {ip-address-here} to any port {port-number-here}
要将垃圾邮件发送者的IP地址192.54.1.5阻止或拒绝到端口80,请执行:
sudo ufw deny from 192.54.1.5 to any port 80
再次使用以下命令进行验证:
$ sudo ufw status numbered
输出示例:
Status: active To Action From -- ------ --- [ 1] 192.168.1.10 80/tcp ALLOW Anywhere [ 2] 192.168.1.10 22/tcp ALLOW Anywhere [ 3] Anywhere DENY 192.168.1.5 [ 4] 80 DENY IN 192.54.1.5
ufw拒绝特定的IP,端口号和协议
语法为:
sudo ufw deny proto {tcp|udp} from {ip-address-here} to any port {port-number-here}
例如,将黑客的IP地址192.54.1.1阻止到tcp端口22,请执行:
$ sudo ufw deny proto tcp from 192.54.1.1 to any port 22 $ sudo ufw status numbered
ufw块子网
语法相同:
$ sudo ufw deny proto tcp from sub/net to any port 22 $ sudo ufw deny proto tcp from 192.54.1.0/24 to any port 22
如何删除被阻止的IP地址或再次取消阻止IP地址?
语法为:
$ sudo ufw status numbered $ sudo ufw delete NUM
要删除规则编号4,请执行:
$ sudo ufw delete 4
输出示例:
Deleting: deny from 192.54.1.5 to any port 80 Proceed with operation (y|n)? y Rule deleted
提示:UFW不会阻止IP地址
UFW(iptables)规则按出现顺序应用,并且在匹配时检查立即结束。
因此,例如,如果某个规则允许访问tcp端口22(例如,使用" sudo ufw allow 22"),然后又指定了另一个规则来阻止IP地址(例如,使用" ufw deny proto tcp from 192.54.1.1 to any"端口22),则应用访问端口22的规则,而后一个阻止黑客IP地址192.54.1.1的规则则不适用。 一切都与订单有关。 为了避免这样的问题,解决方法:您需要编辑
/etc/ufw/before.rules`文件,并添加一个部分以"在需要的行结束后阻止IP地址"部分。
$ sudo vi /etc/ufw/before.rules
查找如下所示的行:
# 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 192.54.1.0/24 -j DROP
保存并关闭文件。
最后,重新加载防火墙:
$ sudo ufw reload
如下面注释部分所述,我们可以跳过整个过程,并使用以下简单语法:
$ sudo ufw insert 1 deny from {BADIPAddress-HERE} $ sudo ufw insert 1 deny from 178.137.80.191 comment 'block spammer' $ sudo ufw insert 1 deny from 192.54.1.0/24 comment 'Block DoS attack subnet'