1.我们要增加的规则是:
-A INPUT -p tcp -m state –state NEW -m tcp –dport 82 -j ACCEPT
# 即开放82的tcp端口。
2.第一种方法,使用命令增加:
首先用命令增加规则:
iptables -A INPUT -p tcp -m state –state NEW -m tcp –dport 82 -j ACCEPT
上面的命令即时生效,但是重启iptables服务后就消失了。如何永久生效呢?
/etc/rc.d/init.d/iptables save 或者 service iptables save
service iptables restart
然后看下配置文件里,是有的。以后重启iptables服务,或者重启系统这条规则都会生效。
[[email protected] ~]# cat /etc/sysconfig/iptables | grep 82
-A INPUT -p tcp -m state –state NEW -m tcp –dport 82 -j ACCEPT
实例:
iptables只允许指定ip地址访问指定端口
首先,清除所有预设置
iptables -F#清除预设表filter中的所有规则链的规则
iptables -X#清除预设表filter中使用者自定链中的规则
其次,设置只允许指定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
[[email protected] ~]# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ]
3.第二种方法,直接编辑iptables配置文件
vim /etc/sysconfig/iptables
将上面的语句-A INPUT -p tcp -m state –state NEW -m tcp –dport 82 -j ACCEPT直接插入到上述文件中。
这时候规则是不生效的,需要重启服务service iptables restart。之后这条规则就永久生效了。
4.总结一下。
如果是命令增加条目,那规则是临时的。
如果要永久生效,要把规则写进配置文件。写配置文件的办法有两种,一种是直接编辑,一种是service iptables save。
iptables服务每次启动的时候才会去读一次规则。如果直接编辑了配置文件,然后用service iptables save,那么内存里的配置规则是初始的,会覆盖你直接对配置文件的编辑。
因此,最后的结论是,如果是临时规则,用上面的第一种办法,但是不要save;如果是永久规则,用上面的第一种或第二种方法,二选一不可混用。
资料来源:https://blog.csdn.net/donglynn/article/details/73530542
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/1821.html