2016年12月8日星期四

iptables设置指定IP或IP段访问服务器开放端口

在有些应用中,我们需要设置白名单,只有白名单的IP才能访问服务器的资源,比如,设置服务器的22、80端口只允许某一段IP访问。

当然这个需求使用H3C、深信服、锐捷等市场上常见的防火墙都可以实现,因为这些设备的防火墙原理也是借鉴了iptables的原理,只不过这些市面上的设备开发了图形化的web界面。

为了学习,我们这里在Linux下配置iptables来实现需求。

实例需求:

服务器开放22、80、8080、6700、6701、6702、6703、6704几个端口,并且只有指定的IP段才能访问这些端口,未指定的IP,无法访问这些端口的应用。

例如,要求白名单的IP段是10.1.108.1――10.1.111.254,那么写法如下:

1

-A INPUT -s 10.1.108.0/22 -p tcp -m multiport --dport 22,80,8080,6700:6704 -j ACCEPT

单个端口用逗号隔开,一段范围端口,使用冒号连接。IP段根据子网掩码形式填写。如图所示,添加其他的IP或者IP段即可。


没有评论:

发表评论