论坛风格切换切换到宽版
  • 544阅读
  • 9回复

[问题求助]iptables的问题(已解决) [复制链接]

上一主题 下一主题
 
发帖
2180
C币
-235163
威望
406
贡献值
1
银元
-1
铜钱
4811
人人网人气币
0
只看楼主 倒序阅读 使用道具 楼主  发表于: 2009-05-01
我的eth1为外网口,我要拒绝一切外面进来访问iptables机器的访问,于是我写这个rule:<br />iptables -A INPUT -i eth1 -j DROP<br />这样没什么问题吧?INPUT链就是管以本机为目的地址的流量的。<br /><br />这样以来就有其它问题了。<br />1、本机ping 外网不通了,内网上网当然还正常。<br />2、例如使用iptables -A FORWARD -d <a href="http://www.google.cn" target="_blank"><a href="www.google.cn" target="_blank">www.google.cn</a></a> -j DROP,意思就是拒绝一个外面网址,执行就会提示找不到这个网址,<br />原因很明显是DNS,<br />于是我在INPUT链增加两个rule:iptables -A INPUT -p tcp,udp --dport 53,好让DNS通过,最后还是不能ping外网和解析DNS虚拟主机

[ 本帖最后由 defage 于 2008.-10-1.4 18:03 编辑 ]    外汇

评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
离线zystc.
发帖
2161
C币
-313522
威望
401
贡献值
3
银元
-2
铜钱
4696
人人网人气币
0
只看该作者 沙发  发表于: 2010-04-13
允许icmp协议!!!!

发帖
2083
C币
-60634
威望
394
贡献值
1
银元
0
铜钱
4728
人人网人气币
0
只看该作者 板凳  发表于: 2010-04-13
试过,也不行的。而且DNS的解析跟ICMP没关系。

离线58008839.
发帖
1973
C币
-235726
威望
381
贡献值
1
银元
0
铜钱
4410
人人网人气币
0
只看该作者 地板  发表于: 2010-04-13
请列出所有的iptables规则!

发帖
2041
C币
-198555
威望
419
贡献值
1
银元
-2
铜钱
4716
人人网人气币
0
只看该作者 4楼 发表于: 2010-04-13
规则如下:现在的问题就是我把外面进来的以本地为目的的连接都阻止了,同时我的DNS解析也被阻止了,我怎么添加规则都没搞定。

[root@sss ~]# service iptables status
Table: nat
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination        

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination        
SNAT       all  --  192.168.100.0/24     0.0.0.0/0           to:192.168.8.2

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination        

Table: filter
Chain INPUT (policy ACCEPT)
target     prot opt source               destination        
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp spt:53 dpt:53
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp spt:53 dpt:53
ACCEPT     all  --  192.168.100.2        0.0.0.0/0          
ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0          

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination        

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination        
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp spt:53 dpt:53
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp spt:53 dpt:53

[ 本帖最后由 defage 于 2008-10-14 17:37 编辑 ]

离线newgame.
发帖
2122
C币
-60701
威望
365
贡献值
1
银元
-1
铜钱
4624
人人网人气币
0
只看该作者 5楼 发表于: 2010-04-13
对了。INPUT链的默认是DROP。

发帖
1977
C币
-152657
威望
342
贡献值
1
银元
0
铜钱
4441
人人网人气币
0
只看该作者 6楼 发表于: 2010-04-13


QUOTE:#!/bin/bash
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
/sbin/iptables -F
/sbin/iptables -t nat -F
/sbin/iptables -X
/sbin/iptables -P INPUT DROP
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT
#/sbin/iptables -A INPUT -p tcp --dport 22 -j ACCEPT #跟上面的效果一样啊!
/sbin/iptables -A INPUT -p udp --sport 53 -j ACCEPT
/sbin/iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE


/etc/sysctl.conf中,修改net.ipv4.ip_forward = 1


QUOTE:#!/bin/bash
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
/sbin/iptables -F
/sbin/iptables -t nat -F
/sbin/iptables -X
/sbin/iptables -P -i eth1 INPUT DROP
/sbin/iptables -P -i eth0 INPUT ACCEPT
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -A INPUT -i eth1 -p tcp --dport 22 -j DROP
/sbin/iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -p udp --sport 53 -j ACCEPT
/sbin/iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

例外都可以连上服务器啊!
纳闷!
再测试!

[ 本帖最后由 marsaber 于 2008-10-14 18:13 编辑 ]

离线风语.
发帖
2116
C币
-139044
威望
379
贡献值
1
银元
-2
铜钱
4703
人人网人气币
0
只看该作者 7楼 发表于: 2010-04-13
内网访问服务器有限制不?

离线tnka.
发帖
2076
C币
-60326
威望
404
贡献值
1
银元
-3
铜钱
4803
人人网人气币
0
只看该作者 8楼 发表于: 2010-04-13
内网暂时不做限制,只想以后肯定会用到限定不能访问某个网址,所以在用
iptables -A FORWARD -d www.google.cn -j DROP就会提示找不到www.google.cn这个网址,所以才要DNS解析正确,才能解决这个找不到网址得问题。

离线h1821388.
发帖
2209
C币
-235179
威望
414
贡献值
1
银元
-6
铜钱
4968
人人网人气币
0
只看该作者 9楼 发表于: 2010-04-13


QUOTE:#!/bin/bash
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
/sbin/iptables -F
/sbin/iptables -t nat -F
/sbin/iptables -X
/sbin/iptables -P INPUT DROP
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -p udp --sport 53 -j ACCEPT
/sbin/iptables -A FORWARD -s www.google.cn -j DROP
/sbin/iptables -A FORWARD -d www.google.cn -j DROP
/sbin/iptables -A FORWARD -s 0/0 -d 0/0 -j ACCEPT
/sbin/iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE


这样,内网用户就访问不了www.google.cn了。
快速回复
限100 字节
如果您在写长篇帖子又不马上发表,建议存为草稿
 
上一个 下一个