项目背景 某公司地纪委建设信息接入系统的FTP以及政务外网信息接入系统FTP,及使用oracle数据库进行内外网同步,为了保证内外网信息传输安全,特上线某公司公司GAP(网闸设备)实现内外网安全传输。
使用到的功能 1.文件交换 2.数据库同步 设计网闸处的设备拓扑
实施前准备
由于网闸实施需要和客户确认的地方很多,是否需要看到真实IP,需要使用到的功能,要从网闸的部署模式中,选择最适合客户环境的部署模式,在这里,要实现文件交换以及数据库同步,就要网闸使用主动模式,那么此处我们使用路由模式进行部署。
使用路由模式部署,需要跟客户协调三个地址,三个地址不可以在同一个网段,分别为管理地址、内网侧地址(跟内网通信)、外网侧地址(与外网通信),还需要客户在交换机处写路由,去往对端的路由扔给本段网闸的地址
实施过程
基础网络部分
第一步,设置网闸部署模式,设备管理-基本设置
第二步,设置内网单元以及外网单元,这里我们定义内网侧地址为172.***.20.245,外网侧地址为172.***.10.245,设备管理-网络接口-内网处理单元/外网处理单元
第三步,此处需要到相应内外网侧交换机写路由,目的地址为对端网段,下一跳为本端网闸地址(此处忘了截图)以外网侧交换机为例,华为命令 ip route-static 172.***.20.0 255.***.255.0 172.***.10.245
第四步,定义内外网需要互相通信的对象(此处很重要,如设置错误,会导致后续工作颠倒)策略管理-对象
至此,基础网络实施完成,下面就要根据客户具体需求,做详细的策略,我这边的客户需要使用文件交换以及数据库同步,接下来重点讲一下文件交换以及数据库同步(oracle)
文件交换
文件交换,顾名思义,是内外网进行文件的互相传输,为了更安全,使用网闸进行隔离
[color=#ff某公司公司]客户需求:内外网两端FTP服务器,建立FTP目录,FTP目录下创建bordertemp文件夹,为临时文件,要求网闸可以以主动剪切的方式(即文件同步后,被同步方的文件就剪切到同步方),当在外网服务器中,把某公司个文件通过外网拷贝到bordertemp文件夹中,网闸会自动发现并进行剪切到内网服务器的FTP根目录下,内网同理
根据客户需求,第一步,打开策略管理-文件交换(网闸需要配置东西比较少,多数为服务器配置权限)由于是双向访问,我们这里设置两条策略,既外到内同步、内到外同步,此处,需要客户提供两台共享服务器的管理员某公司公司名密码以及FTP根目录,尽量使用**istrator管理员权限,如不可以使用,则需要给出可以访问SMB协议的管理员
此处需要注意的一个点,在圈出部分,某公司公司网闸支持二级目录,但是在填写时,只可以写到一级目录,例如//172.***.10.5/bordertemp,不可以写成//172.***.10.5/FTP/bordertemp,如写到二级目录,则会导致挂载失败(被坑了半天才爬出来)如下图
第三步,全部配置完成,让客户进行测试,测试方法,在外网服务器中的FTP目录下的bordertemp文件夹中新建一个文件,等待同步时间(默认为60S,我这里设置的是30S),会自动同步到内网服务器下的FTP目录。在网闸中,日志审计-文件交换日志中查看,可以查看到成功日志,如下图
到这,我们的文件交换即可完成,客户处测试也可以通过,内网处也是一样的原理,只不过要把测试文件夹倒换过来,接下来我们进行数据库同步([color=#ff某公司公司]这个就要求数据库工程师配合,自己调试的话,需要有数据库基础,里面很多东西都有可能造成危险操作)
数据库同步(oracle)
数据库同步,值得是在外网数据库更新时,会通过网闸主动更新内网数据库,以保证内外网数据库数据,都是同步的
[color=#ff某公司公司]客户需求:外网数据库中的12个数据表,插入、某公司公司、更新时,会自动同步到内网数据库的相应表(如不使用相同数据库,相同表,则为异构数据库同步),内网的3个数据库表,同步到外网数据库
根据客户需求,第一步,打开策略管理-数据库同步,配置数据库同步策略,我们先来配置外对内的同步([color=#ff某公司公司]需要跟数据库工程师要来数据库地址、数据库类型、数据库的实例名称、数据库DBA某公司公司权限)
[color=#ff某公司公司]这里需要注意的是,一定是DBA某公司公司权限,否则则会导致同步失败
第二步,双击打开建好的策略,点击下方方框处添加同步表策略([color=#ff某公司公司]添加同步表策略的意思是我们不需要同步全部的数据库表,只需要同步数据库实例中的某公司几个表)
内网表名称,则填写客户给予的表名称,[color=#ff某公司公司]在这里特别注意,在sqlserver数据库中,需要添加dbo.内网表名称,mysql中,需要添加数据库名称.内网表名称,oracle中,需要添加属主.内网表名称,我们这里用到属主.内网表名称(属主如何查询,可以让数据库工程师提供)填写完后,点击下方读内网表字段,会自动读取内网表字段,读取完成后,如是相同数据库表,则进行复制,复制完后,填写主键(主键一般为内网表字段开头第一个字段)以相同的方法添加客户给予的12个数据表,即可
[color=#ff某公司公司]在这里特别写一句,外网库下面有一个叫重置触发器的,建议谨慎使用,先闹清楚这是干啥的,不用随意使用,会造成数据库触发器重置,导致一些问题发生
第三步,测试是否正常,在外网数据表中,插入一行数据,在内网表中,会自动同步,数据库同步日志中的日志如下图
如不正常,则需要具体问题具体分析,我这边出的问题多为没有写主键以及内网表前缀导致,欢迎一起来讨论!
到这里,整个实施已经完成,经过客户的测试,网闸正式上线,中间也出现了大大小小的一些问题,好在最后都解决了,这也是第一次搞网闸这个东西,在这个项目学到了不少,欢迎大佬们给指点一下哪里做的不对,一起某公司公司,一起进步!
|