linux-iptables多端口限制

linux-iptables多端口限制,第1张

在Linux网络应用中,我们经常需要开放一些端口给指定的IP,如果我们不对端口进行整理,就可能出现多开放一些有风险的端口,导致系统存在安全隐患。

1、连续端口,iptables默认就支持多个连续端口的规则

iptables  -A  INPUT  -s 192.168.122.0/23  -p  tcp --dport 21:23  -j  ACCEPT  #端口21 22 23

2、不连续的端口,iptables有一个mutiport的模块,需要手动指定加载一下

iptables  -A  INPUT  -s 192.168.122.0/23  -p  tcp -m multiport  --dport 21,23,27,44  -j  ACCEPT    #端口21 23  27  44

也可以配合连续IP的规则使用

iptables  -A  INPUT  -s 192.168.122.0/23  -p  tcp  -m multiport  --dport 21:23,2227:2230  -j  ACCEPT      #端口 21 22 23 2227  2228 2229  2230

一般在设置规则的时候,要先整理一下端口所属的服务,尽量将同一个服务的端口写在同一条,如果不是同一个服务的尽量分开,方便管理。

1、vi /etc/sysconfig/iptables

*filter

:INPUT ACCEPT [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

-A INPUT -i lo -j ACCEPT

-A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT

-A INPUT -i eth0 -s 192.168.1.2 -p tcp -m tcp --dport 80 -j ACCEPT

-A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT

-A INPUT -i eth0 -p icmp -j ACCEPT

-A INPUT -i eth0 -j DROP

COMMIT

2、/etc/init.d/iptables restart

3、iptables -nvL检查

4、-s 192.168.1.2即只允许192.168.1.2访问

iptables在基本过滤条件的基础上还可以扩展其他条件,在使用时需要使用-m参数来启动这些扩展功能,语法如下:

一:根据MAC地址过滤

1)根据IP过滤的规则,当对方修改IP后,防火墙会失效

#设置规则禁止192.168.4.10使用ssh远程本机

但是,当client主机修改IP地址后,该规则就会失效,注意因为修改了IP,对client主机的远程连接会断开。 根据MAC地址过滤,可以防止这种情况的发生。

2)可以通过NMAP扫描对方的mac地址

拒绝52:54:00:65:44:B1 这台主机远程本机

二:基于多端口设置过滤规则

一次需要过滤或放行很多端口

例:一次性开启20,25,80,110,143,16501到16800所有的端口

提示:多端口还可以限制多个源端口,但因为源端口不固定,一般不会使用,限制多个源端口的参数是--sports.

三:根据IP地址范围设置规则

1)允许从 192.168.4.10-192.168.4.20 主机ssh远程登录本机

注意:这里也可以限制多个目标IP的范围,参数是--dst-range,用法与--src-range一致。

2)禁止从 192.168.4.0/24 网段其他的主机ssh远程登录本机

所有iptables规则都是临时规则,如果需要永久保留规则需要执行如下命令:

安装iptables-services并启动服务,保存防火墙规则。

防火墙规则存放文件:

/etc/sysconfig/iptables

iptables其他拓展模块还有很多,可以通过 man iptables-extensions 命令去查看。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11428234.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存