欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

Linux使用iptables限制多个IP访问你的服务器

程序员文章站 2023-11-18 23:13:28
前言 在linux内核上,netfilter是负责数据包过滤、网络地址转换(nat)和基于协议类型的连接跟踪等功能的一个子系统,这个子系统包含一些信息包过滤表组成,这些表...

前言

在linux内核上,netfilter是负责数据包过滤、网络地址转换(nat)和基于协议类型的连接跟踪等功能的一个子系统,这个子系统包含一些信息包过滤表组成,这些表包含内核用来控制信息包过滤处理的规则集。iptables是一个管理netfilter的工具。

多个连续ip操作

1、拆分成多条命令运行

iptables -a input 192.168.122.2 -j accept 
iptables -a input 192.168.122.3 -j accept 
iptables -a input 192.168.122.4 -j accept 
iptables -a input 192.168.122.5 -j accept 
....

这种方式需要写很多条命令,而且会导致iptables的表很长不好管理,而且量多了也会很小很小地影响性能(可以忽略不计)。

Linux使用iptables限制多个IP访问你的服务器

2、对一个ip段的ip进行访问控制,可以根据ip/mask的形式进行控制

iptables -a input 192.168.122.0/24 -j accept

这种方式需要针对ip范围,计算出指定的源码,不灵活。(虽然很多使用为了方便都是使用这种方法,但是过多地授权会存在安全隐患)

3、iptables有很多个模块,其中iprange就是用来专门处理连续ip段的访问控制的

iptables -a input -m iprange --src-range 192.168.122.2-192.168.122.34 -j accept #匹配源ip
iptables -a input -m iprange --dest-range 8.8.8.2-8.8.8.22 -j drop #匹配目标ip

这种方式比较灵活,不需要去计算掩码是多少,直接给出范围就可以了。

总结

目前官方好像没有支持不连续的ip,也有人添加了模块来支持不连续ip。

个人觉得如果要管理好iptables列表,还是要先进行整理一下,再进行限制,需要用到连续的ip就用上面的方式,不连续的还是老老实实写多条命令;而且机器多了还要安装模块,有可能影响系统的稳定性。

推荐:

感兴趣的朋友可以关注小编的微信公众号【码农那点事儿】,更多网页制作特效源码及学习干货哦!!!

以上所述是小编给大家介绍的linux使用iptables限制多个ip访问你的服务器,希望对大家有所帮助