免费注册 查看新帖 |

Chinaunix

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

[网络管理] l7 不能工作(已经解决) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-01-11 13:52 |只看该作者 |倒序浏览
本人在以下环境下实验l7的功能
1、内核 2.6.15.5
2、iptables 1.3.5
3、l7pathces netfilter-layer7-v2.17.tar.gz
4、l7-protocols-2007-11-22.tar.gz
5、patch-o-matic-ng 直接从svn co  
6、发行版 debian etch

打了l7 ipp2p  time 三个补丁
分别采用内核 和 modules两种方式

编译都很顺利采用新内核后命令都能顺利添加。

拓扑结构 server linux(ftp,http, iptables )-----Client windows(ftp http)

在加入命令以前iptables中没有其他规则,iptables 能正常工作!
我在iptables 中加入以下命令
iptables -I INPUT -m layer --l7proto ftp -j DROP

我在windows 上用ftp 登录此linux服务器的ftp服务器
能够正常登录
采用iptables -L  -vn
此规则没有被匹配,没有任何流量
我有做了针对http的实验
iptables -I INPUT -m layer --l7proto http -j DROP
效果还是一样。

我把l7的debug模式打开重新编译。这是显示出来的调式信息!

  1. Jan 11 04:44:22 AQUA kernel: In hex: 67 65 74 20 2f 61 70 61 63 68 65 32 2d 64 65 66 61 75 6c 74 2f 20 68 74 74 70 2f 31 2e 31 0d 0a
  2. 61 63 63 65 70 74 3a 20 2a 2f 2a 0d 0a 61 63 63 65 70 74 2d 6c 61 6e 67 75 61 67 65 3a 20 7a 68 2d 63 6e 0d 0a 75 61 2d 63 70 75 3a
  3. 20 78 38 36 0d 0a 61 63 63 65 70 74 2d 65 6e 63 6f 64 69 6e 67 3a 20 67 7a 69 70 2c 20 64 65 66 6c 61 74 65 0d 0a 69 66 2d 6d 6f 64
  4. 69 66 69 65 64 2d 73 69 6e 63 65 3a 20 73 61 74 2c 20 32 30 20 6e 6f 76 20 32 30 30 34 20 32 30 3a 31 36 3a 32 34 20 67 6d 74 0d 0a
  5. 69 66 2d 6e 6f 6e 65 2d 6d 61 74 63 68 3a 20 22 66 30 38 39 2d 32 63 2d 34 63 32 33 62 36 30 30 22 0d 0a 75 73 65 72 2d 61 67 65 6e
  6. 74 3a 20 6d 6f 7a 69 6c 6c 61 2f 34 2e 30 20 28 63 6f 6d 70 61 74 69 62 6c 65 3b 20 6d 73 69 65 20 37 2e 30 3b 20 77 69 6e 64 6f 77
  7. 73 20 6e 74 20 36 2e 30 3b 20 73 6c 63 63 31 3b 20 2e 6e 65 74 20 63 6c 72 20 32 2e 30 2e 35 30 37 32 37 3b 20 2e 6e 65 74 20 63 6c
  8. 72 20 33 2e 30 2e 30 34 35 30 36 29 0d 0a 68 6f 73 74 3a 20 31 37 32 2e 31 36 2e 31 2e 31 33 32 0d
  9. Jan 11 04:44:22 AQUA kernel: get /apache2-default/ http/1.1  accept: */*  accept-language: zh-cn  ua-cpu: x86  accept-encoding: gzip
  10. , deflate  if-modified-since: sat, 20 nov 2004 20:16:24 gmt  if-none-match: "f089-2c-4c23b600"  user-agent: mozilla/4.0 (compatible;
  11. msie 7.0; windows nt 6.0; slcc1; .net clr 2.0.50727; .net clr 3.0.04506)  host: 172.16.1.132  connection: keep-alive    get /apache
  12. 2-default/ http/1.1  accept: */*  accept-language: zh-cn  ua-cpu: x86  accept-encoding: gzip, deflate  if-modified-since: sat, 20 no
  13. v 2004 20:16:24 gmt  if-none-match: "f089-2c-4c23b600"  user-agent: mozilla/4.0 (compatible; msie 7.0; windows nt 6.0; slcc1; .net c
  14. lr 2.0.50727; .net clr 3.0.04506)  host: 172.16.1.132  connection: keep-alive   
  15. Jan 11 04:44:22 AQUA kernel: l7-filter gave up after 712 bytes (11 packets):
  16. Jan 11 04:44:22 AQUA kernel:
  17. Jan 11 04:44:20 AQUA kernel: About to compile this: "http/(0\.9|1\.0|1\.1) [1-5][0-9][0-9] [^I-^M -~]*(connection:|content-type:|con
  18. tent-length:|date:)|post [^I-^M -~]* http/[01]\.[019]"
复制代码



请对l7有研究的同仁指点一下。


此问题已经解决
http://www.chinaunix.net/jh/4/619047.html


还是要多看老贴啊!呵呵 需input output两条链同时使用。
谢谢!!

[ 本帖最后由 buaagb 于 2008-1-11 17:11 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2008-01-11 19:19 |只看该作者
如果看了 ftp.pat 你会发现
l7-filter 中的 ftp 正则表达式匹配的内容是服务器的返回信息
如果你在 linux 的 ftp 服务器上使用 INPUT 链的话,只针对进入到服务器的数据进行匹配,而你的匹配内容却是反向的,所以两者相互矛盾,就匹配不到数据了

你可以做一个试验,只在 OUTPUT 上做,而不是 INPUT 上,再试试看?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP