日期:2014-05-16  浏览次数:20538 次

iptables 很茫然的问题
我现在需要一个策略,目的是只开放本机几个指定的端口:
-A   INPUT   -d   *.*.*.*   -p   udp   -m   udp   --dport   80   -j   ACCEPT
-A   INPUT   -d   *.*.*.*   -p   udp   -m   udp   --dport   8080   -j   ACCEPT
-A   INPUT   -d   *.*.*.*   -p   udp   -m   udp   --dport   443   -j   ACCEPT
-A   INPUT   -d   *.*.*.*   -p   udp   -m   udp   --dport   8443   -j   ACCEPT
-A   INPUT   -d   127.0.0.1   -s   127.0.0.1   -p   tcp   -m   tcp   -j   ACCEPT
-A   INPUT   -d   127.0.0.1   -s   127.0.0.1   -p   udp   -m   udp   -j   ACCEPT
-A   INPUT   -d   *.*.*.*   -p   tcp   -m   tcp   -j   DROP

注:*.*.*.*是我本地的IP地址

一开始的设想是开放指定端口,关闭其他所有端口,但是后来系统上的某些服务需要和其他系统的服务做握手,但是本机却只开放了指定的几个端口,所以握手不成功,我想问问各位大侠,有没有什么办法让Iptables   不拦截由本地发起的连接?   小弟初来乍到,还望各位大侠指点迷津


------解决方案--------------------
这条规则是 拒绝所有来自外界发起的连接. 但不拦截由本地发起的连接.
配合你其它的规则试一试

iptables -A INPUT -p tcp --syn -j DROP