LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1187|回复: 4

【问题】想实现Netfilter 的Java图形界面

[复制链接]
发表于 2007-12-3 16:58:35 | 显示全部楼层 |阅读模式
现在在做一个项目,想将linux 作为一个小型网络的GateWayRouter来使用(准备使用2.4 以后的kernel内置的Netfilter, 将linux机器做成NAT出口)。

但是需要不是很专业的人也能设置它(设置当然不复杂),所以需要图形界面来简化操作。

我现在刚刚开始看Netfilter的东西,想象的实现是:
1) 用java做图形界面;
2) 然后将java收到的设置命令(如:不允许host1 与外网连接),转化成linux命令行(可能多条命令行,或者shell脚本),用此命令行设置作为GateWayRouter的linux 机器。
举个例子:
Java图形界面收到用户配置,然后按linux Netfilter命令行的格式,用java生成相应字符串:
比如是:“iptables -A OUTPUT -p tcp --dport 23456 -j DROP”;
然后以“某种方式”,自动地将上面字符串输入到linux的命令行终端;
上面那一行设置就在linux机器上生效了。

自己linux的编程经验少,C/C++用的有点熟, Java会一些。

我的问题是: 步骤2) 怎么在linux上实现(特别是用来自动启动命令行的“某种方式”,具体用哪种方式比较好)。
另一个问题:这个方法的主要局限性?其实我的这个方法就是变相地敲入Netfilter的设置命令,总觉得不如直接调用/修改Netfilter的源代码得到的功能更强大。
发表于 2007-12-3 18:40:53 | 显示全部楼层
为什么一定要用JAVA?

直接用cgi做一个web就好了啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-12-4 08:01:34 | 显示全部楼层
功能比上面说的复杂些,比如还要动态显示、管理网络的简单拓扑,在java程序中设定一些NAT的policy(简化后容易理解的)等等。总之要用一种强大一点的语言
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-12-4 08:05:08 | 显示全部楼层
还需要linux上的java和内网的每一个主机保持一个连接(并显示出来),以证明其网络连接状态良好。
总之,不能用能力太弱的语言或者工具,所以才选java的。
回复 支持 反对

使用道具 举报

发表于 2007-12-7 10:39:50 | 显示全部楼层

为什么一定要自己写呢?

好象一个新出的linux发行版本叫ipcop firewall挺不错, 听说过, 没用过, 楼主可以试试.

http://linux.chinaunix.net/news/2006-08-25/2564.shtml
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表