使用UFW防火墙拦截特定IP地址

UFW(Uncomplicated Firewall)是一个iptables的前端应用程序,尤其适合作为单台服务器或主机的防火墙。它已成为Ubuntu Linux系统默认的防火墙配置工具。对于系统管理员来讲,UFW工具真是简单易用。它是一种创建基于IPv4或IPv6防火墙的快捷方法。

一、拦截特定IP地址

语法:

sudo ufw deny from {ip-address-here} to any
为拦截或拒绝来自192.168.1.5的所有数据包,可以输入:

sudo ufw deny from 192.168.1.5 to any
显示包含已设规则的防火墙状态

为验证新添加的规则,输入:

sudo ufw status numbered

sudo ufw status

二、拦截特定IP及端口

语法是:

ufw deny from {ip-address-here} to any port {port-number-here}
为阻断或拒绝IP地址202.54.1.5访问80端口的请求

sudo ufw deny from 202.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     202.54.1.5
三、拦截特定IP、端口以及协议

语法是:

sudo ufw deny proto {tcp|udp} from {ip-address-here} to any port {port-number-here}
例如,阻断黑客IP地址202.54.1.1访问tcp 22端口(FTP协议),可以输入:

sudo ufw deny proto tcp from 202.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 202.54.1.0/24 to any port 22
四、如何删除被拦截的IP地址或再次放行特定P地址

语法是:

sudo ufw status numbered sudo ufw delete NUM
删除编号为4的规则,输入:

sudo ufw delete 4
输出示例:

Deleting:  deny from 202.54.1.5 to any port 80 Proceed with operation (y|n)? yRule deleted
五、技巧:UFW放行某个IP

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"添加规则。

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 202.54.1.0/24 -j DROP
保存并关闭文件。***,让防火墙重新加载配置信息:

sudo ufw reload
————————————————
版权声明:本文为CSDN博主「lichao_3013」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/lichao_3013/article/details/100112602

原文地址:https://www.cnblogs.com/gao88/p/12129572.html

时间: 2024-08-04 13:23:53

使用UFW防火墙拦截特定IP地址的相关文章

获取请求主机IP地址,如果通过代理进来,则透过防火墙获取真实IP地址

/** * 获取请求主机IP地址,如果通过代理进来,则透过防火墙获取真实IP地址; * @Title: getIpAddress * @Description: TODO(这里用一句话描述这个方法的作用) * @param @param request * @param @return * @param @throws IOException 参数 * @return String 返回类型 * @throws */ public String getIpAddress(HttpServletR

Azure 中国篇—(4)为 Azure虚拟机配置静态内部 IP 地址 (DIP)

在大多数情况下,你不需要为虚拟机指定静态内部 IP 地址 (DIP).虚拟网络中的 VM 会自动接收你指定的范围内的内部 IP 地址.但在某些情况下,为特定 VM 指定静态 IP 地址是有意义的.例如,如果你的 VM 要运行 DNS 或者将作为域控制器.或者,如果你有一个在某一时刻打算停止/取消设置的 VM,但希望在重新设置它时保留其 DIP.静态 DIP 在 VM 中保持不变,即使在停止/取消设置状态下也是如此.你可以在创建 VM 时使用 PowerShell 指定静态 DIP,也可以更新现有

5款实用的IP地址跟踪工具

IP地址是每台计算机的唯一标识符,它基本上是一串数字,并以句点分隔.IP地址主要用于定位和识别计算机,这有点像我们人类的视网膜或者指纹.垃圾邮件发送者和黑客通常会代理自己的IP地址,让我们难以识别其真实的IP地址.然而,值得注意的是,IP地址的物理位置不一定是计算机的位置. Geotool Geotool是最简单的IP地址查询网站之一,它可提供有关IP地址的足够信息,而你只需要将IP地址输入底部框中即可.该网站将为你提供主机名(ISP).国家.城市.邮政编码.当地时间.经度和纬度.该网站还会在谷

Centos 7 安装 设置 IP地址,DNS,主机名,防火墙,端口 (实测+笔记)

环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7.0-1406-x86_64-DVD.iso 安装步骤: 1.虚拟系统安装 1.1 使用VMware 虚拟机,读入ISO进行安装.启动后进行安装界面 1.2 选择 Install CentOS7,进行语言选择 1.3 选择简体中文,进入信息摘要 1.4 点击"安装位置",选择系统需要安装到的硬盘,点击“完成”. 1.5 点击"网络和主机名",进行网络设置

win7共享文件夹,在mac下以不同网段的ip地址访问时被防火墙阻止的问题

在利用win7建立共享文件 夹来实现局域网内文件共享的时,当要连到共享计算机的电脑的ip地址处于不同网段时,会被windows防火墙阻止,而无法连接,折腾了一下,找出来办法: 在高级windows防火墙的设置中,把入站规则里面的把文件夹和打印机共享规则里面的作用域中的远程IP地址下面的任何ip地址勾选

Centos 7 安装 设置 IP地址,DNS,主机名,防火墙,端口,SELinux (实测+笔记)

环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7.0-1406-x86_64-DVD.iso 安装步骤: 1.虚拟系统安装 1.1 使用VMware 虚拟机,读入ISO进行安装.启动后进行安装界面 1.2 选择 Install CentOS7,进行语言选择 1.3 选择简体中文,进入信息摘要 1.4 点击"安装位置",选择系统需要安装到的硬盘,点击“完成”. 1.5 点击"网络和主机名",进行网络设置

linux 修改ip地址 和关闭防火墙设置

修改ip 地址  和 关闭启动防火墙 1.ifconfig 查看  ip 2.如果没有网卡 查看 ifcfg-eth0 文件是否存在 cd /etc/sysconfig/network-scripts/ ls -s  查看 如果有 查看 DEVICE=eth0 HWADDR=00:0C:29:0f:b8:70 这两个选项与 vi /etc/udev/rules.d/70-persistent-net.rules 中 的eth0 是否一样 如果还不行就用 eth1 网卡 vi /etc/udev/

C# 以特定字符分割字符串--IP地址分割

分割 IP 地址: string ipAddress = "192.168.2.168"; string[] sArray = ipAddress.Split(new char[] { '.' }); _box1.Text = sArray[0]; // 192 _box2.Text = sArray[1]; // 168 _box3.Text = sArray[2]; // 2 _box4.Text = sArray[3]; // 168

Ufw防火墙配置

自打2.4版本以后的Linux内核中, 提供了一个非常优秀的防火墙工具.这个工具可以对出入服务的网络数据进行分割.过滤.转发等等细微的控制,进而实现诸如防火墙.NAT等功能. 一般来说, 我们会使用名气比较的大iptables等程序对这个防火墙的规则进行管理.iptables可以灵活的定义防火墙规则, 功能非常强大.但是由此产生的副作用便是配置过于复杂.一向以简单易用著称Ubuntu在它的发行版中,附带了一个相对iptables简单很多的防火墙配置工具:ufw. ufw默认是没有启用的.也就是说