iptables封MSN传输文件的问题???????

发表于:2007-07-04来源:作者:点击数: 标签:
今天老板让我封掉公司的MSN,在我的劝说下,老板同意不封MSN,但是要求我要封掉MSN里的文件传输的功能。我知道可以用第三方软件来实现,可是我想问一下大家,在 LINUX 的IPTABLES中可否实现这个功能?? 如果有,如何操作?? 我在网上没找到,特意请大家帮

今天老板让我封掉公司的MSN,在我的劝说下,老板同意不封MSN,但是要求我要封掉MSN里的文件传输的功能。我知道可以用第三方软件来实现,可是我想问一下大家,在LINUX的IPTABLES中可否实现这个功能??
如果有,如何操作??
我在网上没找到,特意请大家帮忙,小弟先谢谢了! :em03:  :em03:

 yoursmile 回复于:2005-08-25 21:29:36
你们老板这么猛啊
不过我是不知道如何封了。。。期待高人来解答。

 zd724 回复于:2005-08-25 21:54:06
是呀 楼上的兄弟 要不我郁闷呢 
期待有人来回答。。

 platinum 回复于:2005-08-25 22:00:21
[quote:d9a6e6b5a6="zd724"]是呀 楼上的兄弟 要不我郁闷呢 
期待有人来回答。。[/quote:d9a6e6b5a6]
你就跟领导说
“由于 MSN 没有把网络传输协议公开,因此我们没有办法分离聊天与文件传输的数据包”
甭管真的假的,老板那个要求你他肯定不懂电脑,你跟他这么喷就好了,还能显得你水品高
如果他实像,会装得很懂的说“哦,原来是这样啊,那就算了”

 bingosek 回复于:2005-08-26 00:20:18
你说,实现那个功能.......可以.......不过要花钱

 zd724 回复于:2005-08-26 08:31:41
to platinum:
 哈哈 还是你牛 可是 我老板是德国人,他说在德国这个是可以实现的,但是好象是需要软件的,但是他也不知道是什么!!最主要的是人家德国人不怕丢脸,什么都打破沙锅问到底呀。。。。。

  大家在帮着给点建议呀~~~~~~

 zd724 回复于:2005-08-26 08:32:50
to bingosek:
 花钱是可以实现,我想知道是否能用iptables实现呢???

 mocou 回复于:2005-08-26 08:59:44
突然想起一个朋友的老板要求他:
过滤掉所有邮件中的附件,还有在网页中不允许提交附件等,便要求能正常使用邮件跟浏览网页

 bingosek 回复于:2005-08-26 09:03:04
我不知道有什么软件可以就可以针对msn文件传输做限制,不过我想应用级网关如ISA是可以做的
iptables里可以做内容过滤,有可能可以实现。不过对你机子性能要求比较高

 q1208c 回复于:2005-08-26 09:28:14
MSN 在传文件时走的好象不是 1863 端口, 你可试试只开用得着的端口. 

再不然就得去弄个专业的 防火墙 了.

 deeperpurple 回复于:2005-08-26 09:58:17
[quote:dc5f545f88="mocou"]突然想起一个朋友的老板要求他:
过滤掉所有邮件中的附件,还有在网页中不允许提交附件等,便要求能正常使用邮件跟浏览网页[/quote:dc5f545f88]

得专业防火墙了,这个不知道CheckPoint是否可以实现~ :em22:

 q1208c 回复于:2005-08-26 10:02:01
[quote:ab94a4ffac="deeperpurple"]

得专业防火墙了,这个不知道CheckPoint是否可以实现~ :em22:[/quote:ab94a4ffac]

可以.

CheckPoint 能分开 msn 的几种协议.

 platinum 回复于:2005-08-26 10:09:16
[quote:6a33e6bf76="q1208c"]

可以.

CheckPoint 能分开 msn 的几种协议.[/quote:6a33e6bf76]
这么强!

 zd724 回复于:2005-08-26 10:18:55
check point?我去找一下 谢谢个位 要是实现了 我会通知大家!!

 zd724 回复于:2005-08-26 10:20:14
不过说实话 我还是想看一下是否在iptables里能否实现呢??

 zd724 回复于:2005-08-26 13:22:26
大家谁有办法呀??帮小弟想一下是否可以用iptables实现呢?
还有就是MSN的端口是1863吧?
我觉得要传文件一定会在1024以上再开一个,我是否可以封掉除1863以外的所有1024以上的端口呢???
谢谢了。。。。

 q1208c 回复于:2005-08-26 13:40:29
[quote:1bb81c685b="platinum"]
这么强![/quote:1bb81c685b]

好象有几千种协议呢. 好大一张表的.  :em06:

 platinum 回复于:2005-08-26 13:52:19
[quote:1940404ab3="q1208c"]

好象有几千种协议呢. 好大一张表的.  :em06:[/quote:1940404ab3]
checkpoint 能同时阻断多少个协议?是不是主要和 PC 性能有关了?
能作多少个策略?

 q1208c 回复于:2005-08-26 13:57:14
[quote:128106fcfc="platinum"]
checkpoint 能同时阻断多少个协议?是不是主要和 PC 性能有关了?
能作多少个策略?[/quote:128106fcfc]

理论上是没数吧

一般不推荐超过30条, 管不过来的.

不过, 它的一条可以包括好几种协议, 做成一个 group来用.

 platinum 回复于:2005-08-26 14:22:34
[quote:d67dbf3f4c="q1208c"]
不过, 它的一条可以包括好几种协议, 做成一个 group来用.
[/quote:d67dbf3f4c]
这个强
是不是有点类似 iptables 里面建立一个 -N 链名 的概念?

 zsgd 回复于:2005-08-26 14:26:11
我现在忙着限制msn、qq、uc、popo、e话通、雅虎通等常用的聊天工具都可以实现只能聊天、视频,不能传输文件,这些基本上可实现了,还是有很多漏掉的,主要根据地址、协议、端口控制,qq是最麻烦的,msn还比较有规律。
但不是用iptables做的,用的一个安全策略管理软件(spm),目前还需要完善。

 枫影谁用了 回复于:2005-08-26 14:28:48
[quote:0b9a64a311="zsgd"]我的老板要求我限制msn、qq、uc、popo、e话通、雅虎通等常用的聊天工具都可以实现只能聊天、视频,不能传输文件,这些基本上可实现了,还是有很多漏掉的,主要根据地址、协议、端口控制,qq是最麻烦的,msn还比较有?..........[/quote:0b9a64a311]



好像阁下比我幸运 !我现在烦着禁skype!!! :em10:

 q1208c 回复于:2005-08-26 14:36:02
[quote:9a1217f880="platinum"]
这个强
是不是有点类似 iptables 里面建立一个 -N 链名 的概念?[/quote:9a1217f880]

不太一样, 有点象写多个 port .

 河里的鱼 回复于:2005-08-26 15:12:00
[quote:ae16a93372="q1208c"]

不太一样, 有点象写多个 port .[/quote:ae16a93372]

多个PORT,那么它依靠PORT来区分?

MSN的传输的,完全可以抓过包来,把协议拆分来进行规则

IPTABLES好像实现不了吧,我想结合其他也许可以实现

 q1208c 回复于:2005-08-26 15:13:19
[quote:5d48875ac4="河里的鱼"]

多个PORT,那么它依靠PORT来区分?

MSN的传输的,完全可以抓过包来,把协议拆分来进行规则

IPTABLES好像实现不了吧,我想结合其他也许可以实现[/quote:5d48875ac4]

只是象. 
它要是就这点本事, 谁会花钱买呢?

 河里的鱼 回复于:2005-08-26 15:18:13
[quote:bfd4324d8b="q1208c"]

只是象. 
它要是就这点本事, 谁会花钱买呢?[/quote:bfd4324d8b]

这么说它结合了应用层?

 q1208c 回复于:2005-08-26 15:26:21
[quote:80e983d1f8="河里的鱼"]

这么说它结合了应用层?[/quote:80e983d1f8]

当然了. 可以做内容过滤, 病毒过滤的呀.

 platinum 回复于:2005-08-26 17:36:51
[quote:af4992ea98="q1208c"]

当然了. 可以做内容过滤, 病毒过滤的呀.[/quote:af4992ea98]
如果吞吐量大、数据包碎,这负载。。。。。

 河里的鱼 回复于:2005-08-26 17:38:42
[quote:1d05d3f209="platinum"]
如果吞吐量大、数据包碎,这负载。。。。。[/quote:1d05d3f209]

这种情况好像和那些"防毒墙"一样吧~~~我想它们处理应该是差不多的~~

 q1208c 回复于:2005-08-26 18:20:10
[quote:4f94755117="platinum"]
如果吞吐量大、数据包碎,这负载。。。。。[/quote:4f94755117]

病毒过滤不是在本地处理的. 

一般的 firewall 都会配得很好的. 另外, 多数的 firewall 是在WAN 与 LAN 之间, 流量不会太大的. 

一个公司能申请 10M 的就不算少了. 很少有 100M 的. 真正 100M 的. 那可能要用两台以上的 firewall 做 cluster 了.

 platinum 回复于:2005-08-26 18:36:34
firewall 也有做 clust 的?!
他们里面不会还有 mysql 吧!

 q1208c 回复于:2005-08-26 19:01:53
[quote:73214b3c77="platinum"]firewall 也有做 clust 的?!
他们里面不会还有 mysql 吧![/quote:73214b3c77]

这个不知道. 我也没做过. 

不过, 一般的单台机器 (好一点的) 处理100M 应该问题不大, 不过, 要是带VPN可能就不行了.

 benjiam 回复于:2005-08-26 22:34:30
可以禁止的

msn 的命令参数为 3字节命令 +空格+参数.....+\x0d0a+(负载文件)
查出3字节的传输命令 drop掉就可以了

 b2linux 回复于:2005-08-26 23:19:56
只要是跑tcp/ip找出它的特征码,Block之,benjiam说的很对,既然是德国的老板,让他付300欧元劳务费,也不要他买Checkpoint,我用Linux给他搞定,然后请本楼的喝酒!哈哈!

 platinum 回复于:2005-08-27 09:31:54
[quote:a12d00cffe="benjiam"]可以禁止的

msn 的命令参数为 3字节命令 +空格+参数.....+\x0d0a+(负载文件)
查出3字节的传输命令 drop掉就可以了[/quote:a12d00cffe]
请问,这个是怎么知道的呢?有没有相关资料可查?

 cheng 回复于:2005-08-27 13:39:59
我给你个解: l7-filter
http://l7-filter.sourceforge.net/

封msn-filetransfer

你试试吧,我封bt和amule没有问题的

 这一次我是MJ 回复于:2005-08-27 15:33:11
msn使用SIP,你需要做一些应用层的分析,解码判断是不是数据请求,考虑可以在iptables中添加你的这个模块,做成一个应用级的过滤。
实现起来有点。。。麻烦。。。

 chinesecai 回复于:2005-08-27 20:32:55
[quote:01df5cede9="platinum"]firewall 也有做 clust 的?!
他们里面不会还有 mysql 吧![/quote:01df5cede9]

能作cluster的firewall很多,楼主说的msn传输的问题,可以通过多种产品来实现
,我个人认为checkpoint完全可以胜任
我建议去看看checnkpoint的官方网站,也许可以收获很多

另外,机器的性能不是决定因素,正如事实上说来,机器性能越强,当然防火墙性能也就越好,
补充一下:防火墙,特别类似于checkpoint的防火墙都是可以架构于多种平台的
目前在sun 上是比较完美的。另外nokia也是一个比较好的解决方法,但是没有checkpoint用的灵活,甚至,checkpoint可以用来封以后出现的病毒,厂商会提供对应的代码,。

但是价格比较贵。

 chinesecai 回复于:2005-08-27 20:34:55
[quote:0f01d09bcb="q1208c"]

病毒过滤不是在本地处理的. 

一般的 firewall 都会配得很好的. 另外, 多数的 firewall 是在WAN 与 LAN 之间, 流量不会太大的. 

一个公司能申请 10M 的就不算少了. 很少有 100M 的. 真正 100M 的. 那可能要?.........[/quote:0f01d09bcb]


100M带宽用的少吗?你可以去isp那边问一下。其实有很多单位用的。甚至1000M用的也不少。

 platinum 回复于:2005-08-27 23:59:30
翻出一篇资料,大家看一下
http://www.hypothetic.org/docs/msn/client/file_transfer.php

 bingosek 回复于:2005-08-28 01:59:26
[quote:26d77b3043="chinesecai"]
甚至,checkpoint可以用来封以后出现的病毒,厂商会提供对应的代码,。[/quote:26d77b3043]

不太可能把....[/quote]

 q1208c 回复于:2005-08-28 02:51:28
[quote:32dcb1b4e4="chinesecai"]


100M带宽用的少吗?你可以去isp那边问一下。其实有很多单位用的。甚至1000M用的也不少。[/quote:32dcb1b4e4]

呵呵, 能用上 1000M , 不知道是什么公司. 想想, 1000M 呀, 下个电影几分钟就行了.  


不过, 现在的防火墙支持 1000M 也没什么问题, 只是VPN可能到不了 1000M. 

 :em06:  有点跑题, 到此为止吧.

 chinesecai 回复于:2005-08-28 17:07:14
还是回到上面题目吧,改天我测试一下checkpoint封msn文件传输问题的

关于上面提到的封病毒的事情,是可以做到的。

 bingosek 回复于:2005-08-28 17:10:24
这个不是跟以前dos时代杀毒软件宣传的一样吗?

 airsupplyp2p 回复于:2005-08-28 20:59:53
我很想知道如果LZ成功了,我们怎么解封,哈哈~

 cnadl 回复于:2005-08-28 21:30:12
[quote:57ddcb8146="airsupplyp2p"]我很想知道如果LZ成功了,我们怎么解封,哈哈~[/quote:57ddcb8146]

VPN之即可,百试不爽

 haoyufu 回复于:2005-08-29 09:26:35
使用l7filter能够轻而易举的搞定msn、qq、icq等p2p软件

所谓l7就是osi第七层-应用层,l7filter也就是七层过滤。
相关内容见http://l7-filter.sourceforge.net/

 enjoy 回复于:2005-08-29 10:30:18
封msn服务器的地址怎嘛样?

 soway 回复于:2005-08-29 11:02:15
websense如何?

 _Unix_ 回复于:2005-08-29 11:25:39
推荐你们公司采购一个平台:Sinfor M5100-AC
具体参考:http://www.sinfors.com

 _Unix_ 回复于:2005-08-29 11:26:19
你可以在google里搜索"Sinfor M5100-AC"

 hefish 回复于:2005-08-29 16:06:16
用 layer7 + iptables 不可以么?

 xieweihua 回复于:2005-08-29 22:30:57
如果有人实现了上面的要求
一定要帖出来大家分享。

 zhengyi158 回复于:2005-08-30 14:15:46
禁不如管呀,弄个设备。可以查到到底是谁在用QQ、MSN等等程序,什么应用软件都可以查看到耗费了多少带宽。我听说的有packetshaper的产品。可以限制应用程序的带宽,想分配多少就分配多少。

 dahai01 回复于:2005-08-30 15:52:27
分配带宽tc不就可以做么?不要做广告哦.哈.
回主题.那位实现了贴出来哦.

 NetDC 回复于:2005-08-31 08:48:07
[quote:92ba0d0130="zhengyi158"]禁不如管呀,弄个设备。可以查到到底是谁在用QQ、MSN等等程序,什么应用软件都可以查看到耗费了多少带宽。我听说的有packetshaper的产品。可以限制应用程序的带宽,想分配多少就分配多少。[/quote:92ba0d0130]

打上layer7补丁的iptables+tc,可以实现上面的功能,layer7的主页上有讲怎么打补丁,
给内核打补丁-》编译内核
给iptables打补丁-》编译iptables

安装新内核,新iptables

给包打mark,用tc来控制流量,,,现在使用iptables来控制BT的有不少用这种方法。

在debian下编译成功过,这里头最麻烦的就是编译iptables,因为我要把它做成deb的包,还有一些版本信息什么的要保存。
如果都是从源码编译,应该是比较简单的,花的时间就要看你的功底了。

 wyjjet 回复于:2005-08-31 10:52:17
MSN File Transfer  protocol tcp dst-port 6891-6900 ,所以只要用IPTABLES封闭6891-6900端口

 platinum 回复于:2005-08-31 10:53:48
[quote:8e5fb6a852="wyjjet"]MSN File Transfer  protocol tcp dst-port 6891-6900 ,所以只要用IPTABLES封闭6891-6900端口[/quote:8e5fb6a852]
但不是只有 MSN 才用 6891-6900

 cow977 回复于:2005-09-03 12:59:06
[quote:36f9109549="q1208c"]

呵呵, 能用上 1000M , 不知道是什么公司. 想想, 1000M 呀, 下个电影几分钟就行了.  


不过, 现在的防火墙支持 1000M 也没什么问题, 只是VPN可能到不了 1000M. 

 :em06:  有点跑题, 到此为止吧.[/quote:36f9109549]

用的不少,可真正有那么大流量的真的很少。

 佛光普照 回复于:2005-09-03 13:57:36
有了解决方式就可以群发邮件通知一下了,哈哈,这一下可以让1000K人不知道发生了什么事。

 yyf_007 回复于:2005-09-04 10:22:18
PF应该可以实现的吧

 huifei 回复于:2005-09-05 13:23:49
楼主要是成功了,发个贴子出来总结一下。

原文转自:http://www.ltesting.net