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

linux下通过iptables只允许指定ip地址访问指定端口的设置方法

程序员文章站 2022-11-28 14:31:01
这篇文章主要介绍了linux下通过iptables只允许指定ip地址访问指定端口的设置方法,需要的朋友可以参考下... 15-05-08...
首先,清除所有预设置


复制代码
代码如下:

iptables -f#清除预设表filter中的所有规则链的规则
iptables -x#清除预设表filter中使用者自定链中的规则 其次,设置只允许指定ip地址访问指定端口


其次,设置只允许指定ip地址访问指定端口


复制代码
代码如下:

iptables -a input -s xxx.xxx.xxx.xxx -p tcp --dport 22 -j accept
iptables -a output -d xxx.xxx.xxx.xxx -p tcp --sport 22 -j accept
iptables -a input -s xxx.xxx.xxx.xxx -p tcp --dport 3306 -j accept
iptables -a output -d xxx.xxx.xxx.xxx -p tcp --sport 3306 -j accept


上面这两条,请注意--dport为目标端口,当数据从外部进入服务器为目标端口;反之,数据从服务器出去则为数据源端口,使用 --sport
同理,-s是指定源地址,-d是指定目标地址。

然后,关闭所有的端口


复制代码
代码如下:

iptables -p input drop
iptables -p output drop
iptables -p forward drop


最后,保存当前规则


复制代码
代码如下:

/etc/rc.d/init.d/iptables save
service iptables restart


这种iptables的规则设定适用于只充当mysql服务器的管理和维护,外部地址不提供任何服务。
如果你希望yum可以运行的话,还需要添加以下内容,允许dns请求的53端口,允许下载随机产生的高端口


复制代码
代码如下:

iptables -a input -m state --state related,established -j accept
iptables -a input -p udp --sport 53 -j accept
iptables -a output -m state --state related,established -j accept
iptables -a output -p udp --dport 53 -j accept
iptables -a output -p tcp --sport 10000:65535 -j accept
/etc/rc.d/init.d/iptables save
service iptables restart