Chinaunix首页 | 论坛 | 博客
  • 博客访问: 818398
  • 博文数量: 756
  • 博客积分: 40000
  • 博客等级: 大将
  • 技术积分: 4980
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-13 14:40
文章分类

全部博文(756)

文章存档

2011年(1)

2008年(755)

我的朋友

分类:

2008-10-13 14:40:33

我们正在开发一个基于iptables的防火墙工具(非商业)。
但是使用现有iptables无法实现以下功能:
在windows下,如果使用windows平台下的防火墙,当打开一个新的网络应用程序时,如果防火墙发现这个应用程序还是不允许访问网络的,那么会提示用户是否允许该程序访问网络。这个交互功能是非常实用的,但是使用iptables无法实现。

但是,Netfilter是可扩展的,可以通过自己编写内核模块来增加这项功能。我对linux内核以及网络协议栈还有一定的了解,所以想尝试一下。

请各位给点思路,下面是一些比较具体的问题。
具体问题1:当检测出未知端口的出站SYN包,如何与我的防火墙工具进行交互(信号?)
具体问题2:如何从数据包找到发出该数据包的应用程序?

可能我说的还不是很清楚,下面我给出一个应用场景:
在一个只允许web应用的防火墙下,一个用户打开了lumaQQ,这个时候“防火墙工具”探出一个对话框,显示“是否允许 /opt/LumaQQ/lumaqq访问网络”。如果用户选择是,那么就将该SYN包放行,并通过iptables添加一条新的规则允许该应用程序以后也能够访问网络,否则丢弃该数据包,并禁止该应用程序以后也访问网络。

只要能实现上面应用场景,不管采用什么方法都行,还请各位多多指点!!
十分感谢!!      
--------------------next---------------------

阅读(460) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~