加入收藏 | 设为首页 | 会员中心 | 我要投稿 宁德站长网 (https://www.0593zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 安全 > 正文

如何在Linux上高效阻碍恶意IP地址?

发布时间:2022-05-11 08:59:44 所属栏目:安全 来源:互联网
导读:你可能想要在各种情形下阻止有人通过IP地址访问你的Linux系统。比如说,作为最终用户,你可能想要保护自己,避免已知的间谍软件或跟踪者的IP地址。或者如果你在运行P2P软件,可能想要把来自与违反P2P的活动有关的网络的连接过滤掉。如果你是名系统管理员,可
         你可能想要在各种情形下阻止有人通过IP地址访问你的Linux系统。比如说,作为最终用户,你可能想要保护自己,避免已知的间谍软件或跟踪者的IP地址。或者如果你在运行P2P软件,可能想要把来自与违反P2P的活动有关的网络的连接过滤掉。如果你是名系统管理员,可能想要禁止发送垃圾邮件的IP地址访问你的生产环境邮件服务器。或者你可能因某个原因而希望阻止从某些国家访问网站服务器。不过在许多情况下,你的IP地址阻止列表可能迅速扩大到成千上万个IP地址或IP地址区段。那么你该如何应对这种情况?
 
         在Linux中,只要借助netfilter/iptables框架,就很容易实现阻止IP地址这一目的:
 
复制
$ sudo iptables -A INPUT -s 1.1.1.1 -p TCP -j DROP
1.
如果你想要禁止某一整个IP地址区段,也能同样做到这一点:
 
复制
$ sudo iptables -A INPUT -s 1.1.2.0/24 -p TCP -j DROP
1.
         不过,要是你有1000个没有共同CIDR(无类别域间路由)前缀的独立IP地址想要禁止访问,该如何是好?那你就要设定1000个iptables规则!很显然这种方法不具有良好的扩展性。
 
何谓IP集?
 
这时候,IP集(IP set)就能派得上大用场。IP集是一种内核功能,允许多个(独立)IP地址、MAC地址或者甚至多个端口号高效地编码并存储在比特图/散列内核数据结构里面。一旦创建了IP集,就能创建与该集匹配的iptables规则。
 
你应该会立马看到使用IP集带来的好处,那就是你只要使用一个iptables规则,就能够与IP集中的多个IP地址进行匹配!你可以结合使用多个IP地址和端口号来构建IP集,还可以用IP集动态更新iptables规则,对性能根本没有任何影响。
 
将IPset工具安装到Linux上
 
想创建并管理IP集,你就需要使用一种名为ipset的用户空间工具。
 
想将ipset安装到Debian、Ubuntu或Linux Mint上:
 
复制
$ sudo apt-get install ipset
1.
想将ipset安装到Fedora或CentOS/RHEL 7上:
 
复制
$ sudo ipset list
1.
这显示了可用IP 集的列表,另外还显示了每个集的详细信息,其中包括集成员。默认情况下,每个IP集可以最多含有65536个元素(这里是CIDR区段)。你只要在后面添加“maxelem N”选项,就可以调大这个极限值。
 
现在可以使用该IP集来创建一个iptables规则了。这里的关键在于,使用“-m set --match-set ”这个选项。

(编辑:宁德站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!