用IPFW为汇文服务器定制透明网桥防火墙

2017-03-23 12:40方立公
科学与财富 2016年34期
关键词:防火墙

方立公

(徐州工业职业技术学院 图文中心 江苏 徐州 221140)

摘 要:基于汇文服务器的网络环境特点,运用IPFW 制作一个透明网桥防火墙,对其动态规则进行分析,作出一个适合数据库长连接的规则集。

关键词:防火墙;透明网桥;包过滤;连接保活

前言

汇文文献信息服务系统采用Client/Server体系结构,采用大型关系型数据库 oracle作为数据库服务平台。支持TCP/IP、NetBEUI等多种通讯协议。本文讨论如何用IPFW 为汇文服务器制作透明网桥防火墙,以构建一个比较安全的拓扑结构.

1.FREEBSD的IPFW 透明网桥防火墙

1.1IPFW

IPFW是一个由FREEBSD 发起的防火墙应用软件,用来控制IPFW防火墙和流量整形.可以创建信息包进入系统规则集,使得过滤出入系统的数据流成为可能[1].

1.2透明网桥防火墙

FREEBSD可以将一台PC机加两个网卡制作成以太网桥,将这个网桥串接于汇文服务器前.FreeBSD 的网桥设备配合IP Filter可以建立一个不可见的防火墙.

2.汇文系统网络拓扑和 oracle穿过防火墙的问题及端口复用

2.1汇文系统网络拓扑及透明网桥防火墙加载位置

汇文系统网络拓扑及透明网桥防火墙加载位置,如图1所示

对网桥和网卡而言,流入的包为in,流出的包为out.

2.2 Oracle服务器与客户端通讯过程

服务器上的监听进程在1521端口上进行侦听,客户端发起一个数据库连接请求,监听进程fork一个 Oracle服务器进程(Server Process),服务器进程选择一个大于1024的端口号进行侦听,监听进程把侦听个端口号发回到客户端,要求客户端重新连接这个指定的侦听端口.客户端重新连接监听指定的新端口,与Server Process直接对话,不再通过监听,进行会话认证(登录),执行SQL等等[2].

3. 配置透明网桥防火墙

3.1安装FreeBSD

硬件包括联想万全1050,两张intel pro100 网卡.最小化安装FreeBSD6.1.

3.2 配置网桥

以root用户登陆,编辑/etc/rc.conf.

ee etc/rc.conf,加入如下参数:

cloned_interfaces="bridge0",ifconfig_bridge0="addm fxp0addm fxp1up"

ifconfig_fxp0="up",ifconfig_fxp1="up",保存,重启后系统创建网桥.

3.3 加载IPFW防火墙

ee/etc/rc.conf,加入如下参数:

firewall_enable="YES"(启用IPFW防火墙)

firewall_script="/etc/ipfw.conf"(指定自定义规则集文件).

开启日志.在/etc/sysctl.conf,加入如下参数:net.inet.ip.fw.verbose=1(启动日志),net.inet.ip.fw.verbose_limit=5(同一个信息只记录5次)

4.配置IPFW自定义规则集

4.1汇文服务器防火墙要求及特点分析

汇文服务器端口复用,多个OracleServer Proces使用一个端口(1521)和客户端进行通信.因此,在防火墙上只需开放一个端口为1521,IPFW默认是deny any,这样能较好地保护汇文服务器[3].

4.2 生成及调试规则

4.2.1生成规则ee/etc/ipfw.conf加入如下内容:

ipfw add 19007check-state,

ipfw add 19008al-low tcp from any to 192.168.10.2:1521in via fxp0 setup keep-state,

4.2.2规则解释

当有数据包进入防火墙时,IPFW会从规则集里的第1个规则开始进行比较,并自顶向下进行匹配.当包与某个选择规则参数相匹配时,将会执行规则所定义的动作,

并停止规则集搜索.19007条用来识别在IPFW规则集中的包是否符合动态规则机制的规则.19008条在in via fxp0上,允许any访问192.168.10.2:1521端口,并生成一个动态规则.setup keep-state

匹配TCP会话,发起请求,在发生匹配时,防火墙将创建一个动态规则,其默认行为是,匹配使用同一协议的,从源到目的IP/端口的双向网络流量.19009条在invia fxp1上,允许anyto any,并生成一个动态规则.30000条拒绝所有,并记录日志.重新启动后,规则生效.

4.2.3规则测试

将防火墙加入到汇文网络后,运行汇文客户端,各模块正常,

在客户端用工具对汇文数据库进行备份,工作正常.当客户端工作清闲时,出现与服务器断接问題.根据动态规则表检查数据包,如果匹配,则执行规则所指定的动作,亦即生成动态规则.否则,转移到下一个规则.

4.2.4 实例解释

192.168.010.208:1130访问过192.168.10.2:

1521后,就形成一个动态规则,并形成一个双向的通道,并在一定的时间内保持这个通道,下次192.168.010.208:1130再访问192.168.10.2:1521时就直接走这个通道就可以了.

动态规则生存时间为300s.如果192.168.010.208:1130在生存时间在300s内不访问192.168.10.2:1521,这条动态规则就撤销了,

数据库访问断开.

keep-state只适用于对web网页的无状态访问,时间短,连接数多,效率高,不适用于数据库类的长时间连接.

4.3规则改进与tcp连接保活

4.3.1 规则改进

ipfw add 19008allow tcp fromany to 192.168.10.2:1521in via fxp0

ipfw add 19009allow all from any to any invia fxp1,

ipfw add 19010allow ip from any to any out via fxp0,

ipfw add 19011allow ip from any to any out via fxp1,

不使用keep-state,不再生成动态规则,也不再形成双向通道,除了原有的两条in方向,加上了两条out方向,由于使用网桥,19010允许在网桥上通过数据包.

5.结语

透明网桥式接入点无需地址配置或做NAT,且无IP地址,因而具有隐蔽性,可避免多种攻击,并避开一般3层防火墙的NAT带给oracle应用程序的局限性,所以更具有相对的优越性.

参考文献

[1]张辉,FreeBSD操作系统设计与实现[M].北京:人民邮电出版社,2006.

[2]郑勇,冯锐.TCP连接断连问题剖析.

[3]特瑞亚奥特.Oracle安全手册[M].潘德宏,译.北京:机械工业出版社,2002.

猜你喜欢
防火墙
筑牢防火墙 系紧安全带
“一封家书”寄深情 筑牢疫情“防火墙”
全民总动员,筑牢防火墙
构建防控金融风险“防火墙”
防火墙技术在网络安全应用中的现状
计算机网络安全中防火墙技术的应用思考
智慧防火墙
海南新农合有了“防火墙”
在舌尖上筑牢抵御“僵尸肉”的防火墙
下一代防火墙要做的十件事