免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3212 | 回复: 13
打印 上一主题 下一主题

问几个iptables的简单问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-11-20 09:54 |只看该作者 |倒序浏览
10可用积分
问题1:
如何限制每个源IP的tcp/udp/icmp的NEW状态数量?
比如,任意IP对80端口的sync包超过10/sec,就被拒绝,而其他IP不受影响。

问题2:
重启时,conntrack表会被清除重建吗?已经建立的TCP连接和NAT连接会中断吗?
重启时,如果某个连接正处在中间push阶段,iptables会认为他是INVALID而DROP掉吗?
如果不会中断,请解释一下原因。

问题3:
端口映射:
-A PREROUTING  -p tcp -d x.x.x.x --dport 80 -j DNAT --to-destination y.y.y.y:8000
-A POSTROUTING -p tcp -d y.y.y.y --dport 8000  -j SNAT --to-source x.x.x.x:20000-50000
如果有程序已经在使用20000-30000的端口了,iptables会自动跳过这些端口吗?

实际情况是我的ftp端口设置在30000-50000,iptables的SNAT是不是要错开这段端口?

[ 本帖最后由 FunFreeBSD 于 2009-11-20 16:36 编辑 ]

论坛徽章:
34
亥猪
日期:2015-03-20 13:55:11戌狗
日期:2015-03-20 13:57:01酉鸡
日期:2015-03-20 14:03:56未羊
日期:2015-03-20 14:18:30子鼠
日期:2015-03-20 14:20:14丑牛
日期:2015-03-20 14:20:31辰龙
日期:2015-03-20 14:35:34巳蛇
日期:2015-03-20 14:35:56操作系统版块每日发帖之星
日期:2015-11-06 06:20:00操作系统版块每日发帖之星
日期:2015-11-08 06:20:00操作系统版块每日发帖之星
日期:2015-11-19 06:20:00黄金圣斗士
日期:2015-11-24 10:43:13
2 [报告]
发表于 2009-11-20 10:14 |只看该作者
3. 一个端口只能被一个程序占用。

论坛徽章:
0
3 [报告]
发表于 2009-11-21 14:04 |只看该作者
1、-m limit

3、-A POSTROUTING -p tcp -d y.y.y.y --dport 8000  -j SNAT --to-source x.x.x.x:20000-50000
这句也是端口映射吗?
正在使用的端口肯定不会再用了,只有空闲的端口才会被使用。

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
4 [报告]
发表于 2009-11-21 14:56 |只看该作者
好好向大家学习啊。关于iptables一直没弄太懂。

论坛徽章:
0
5 [报告]
发表于 2009-11-23 09:06 |只看该作者
原帖由 vermouth 于 2009-11-20 10:14 发表
3. 一个端口只能被一个程序占用。


iptables工作在ip层,没到应用程序那层,数据包就被改变了

论坛徽章:
0
6 [报告]
发表于 2009-11-23 09:16 |只看该作者
原帖由 marsaber 于 2009-11-21 14:04 发表
1、-m limit

3、-A POSTROUTING -p tcp -d y.y.y.y --dport 8000  -j SNAT --to-source x.x.x.x:20000-50000
这句也是端口映射吗?
正在使用的端口肯定不会再用了,只有空闲的端口才会被使用。


1.
-m limit必须指定源和目标,我要求的源是不确定未知单一一个
比如有来自1.1.1.1的sync flood攻击的话,就拒绝1.1.1.1
有来自2.2..2.2的sync flood攻击的话,就拒绝2.2..2.2
依次类推。

3.
这个不是端口映射,是为了让前一条端口映射的数据重新返回iptables,不然数据往哪走?(如果端口映射目的主机的网关不是这台iptables)
iptables如何知道哪个端口被占用了?它只负责IP层的中转,还没到7层,IP、端口就被改变了。

[ 本帖最后由 FunFreeBSD 于 2009-11-23 09:59 编辑 ]

论坛徽章:
34
亥猪
日期:2015-03-20 13:55:11戌狗
日期:2015-03-20 13:57:01酉鸡
日期:2015-03-20 14:03:56未羊
日期:2015-03-20 14:18:30子鼠
日期:2015-03-20 14:20:14丑牛
日期:2015-03-20 14:20:31辰龙
日期:2015-03-20 14:35:34巳蛇
日期:2015-03-20 14:35:56操作系统版块每日发帖之星
日期:2015-11-06 06:20:00操作系统版块每日发帖之星
日期:2015-11-08 06:20:00操作系统版块每日发帖之星
日期:2015-11-19 06:20:00黄金圣斗士
日期:2015-11-24 10:43:13
7 [报告]
发表于 2009-11-23 14:13 |只看该作者

回复 #5 FunFreeBSD 的帖子

端口是哪一层呢?

论坛徽章:
0
8 [报告]
发表于 2009-11-23 19:36 |只看该作者
我的理解是iptables是在已经生成的数据包上再做修改,对于第3个问题来说, 即便源端口和ftp冲突也能够修改并发出 ,关键是可以正常返回吗?

用这个试试
iptables -A PREROUTING -m state --state ESTABLISHED,RELATED -j ACCEPT
#允许返回信息通过

[ 本帖最后由 lostwolf 于 2009-11-25 12:39 编辑 ]

论坛徽章:
0
9 [报告]
发表于 2009-11-23 22:51 |只看该作者
原帖由 vermouth 于 2009-11-23 14:13 发表
端口是哪一层呢?


应用程序的端口在应用层,iptables的端口实际是数据包的端口号,在网络层

论坛徽章:
0
10 [报告]
发表于 2009-11-23 23:07 |只看该作者
原帖由 lostwolf 于 2009-11-23 19:36 发表
我的理解是iptables是在已经生成的数据包上再做修改,对于第3个问题来说, 即便源端口和ftp冲突也能够修改并发出 ,关键是可以正常返回吗?

用这个试试
iptables -A FORWARD -m state --state ESTABLISHED, ...


最后一规则只是允许通过,我觉得跟实际问题没有什么联系。

我也认为源端口即便跟ftp冲突也能被修改并发出。
因为iptables应该是工作在更底层,没到ftp那层,数据包就被修改了。
但是如果ftp也要用20000-50000端口往y.y.y.y的8000端口发数据,不就和iptables冲突了吗?

[ 本帖最后由 FunFreeBSD 于 2009-11-25 15:29 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP