Openswan企业实战之ipsec ***加速ERP系统
公司ERP系统是放在IDC机房,租用的别人的云服务器,因云服务器供应商的限制,不能直接拉电路专线,又因服务器数量不够,remoteapp方案也放弃了,只能通过软件×××方案来解决问题,之前搭建了一个open***,使用route模式,但是用户反馈使用效果并不理想,每次反馈ERP系统保存比较慢,其他操作没有问题,想过各种办法去优化Open***,比如去掉认证,使用静态密钥方式,都没能解决,其真正的原因应该是open***是在用户态,内部经过多次加密和解密过程,性能自然不是最佳;后来直接改成桥接模式,速度快了不少,但是使用的是跟云服务器供应商服务网络,云服务商不接受这种模式,因此,最终选择了openswan来解决这个问题,openswan的netkey又称为26sec,其实现是在内核实现,主要负责控制管理SA及密钥,同时处理数据包的加密和解密工作,因此其性能更优越;
1、 目标
在防火墙内部,通过两台Linux系统,搭建ipsec ***,连通办公室和IDC机房的网络,并解决办公室人员访问IDC机房的金蝶ERP系统,所出现的保存慢的问题;
2、 网络拓扑图
3、 环境说明
软件环境:centos 7.3 openswan 2.6.50
序号 |
名称 |
内网IP |
外网IP |
备注 |
1 |
IDC机房防火墙 |
10.99.0.254/24 |
固定IP(略) |
需要开放UDP4500/500端口 |
2 |
IDC机房×××服务器 |
10.99.0.16/24 |
需要开放UDP4500/500端口 |
|
3 |
办公室防火墙 |
192.168.1.1/24 |
动态IP (略) |
|
4 |
办公是×××服务器 |
192.168.1.252/24 |
注:
l ***服务器安装了centos系统,全部都是在防火墙后面,对于openswan来说,其仍然是路由到防火墙,再通过防火墙的NAT去访问外网的,因此,对于服务器来说,并不需要开启iptables的NAT功能,但是Iptables功能需要开启,并开放UDP 4500/500 端口(如果开启iptables的NAT功能也可以,但是经过多层NAT,这样会严重影响×××的性能);
l openswan目前网上系统的资料比较少,对于百度的搜索信息要注意甄别,多思考,即使部署成功了,也要回去反复斟酌,配置是否是最优的,推荐可以查看源码包下面的openswan/docs目录下的说明,加深理解;
l 本文案例是,IDC机房拥有固定IP,办公室是动态IP,因此,对于防火墙来说,只需要开启IDC机房这边的4500/500端口,办公室这边无需开放端口;
l 对于DPD功能,当隧道空闲的时候(建立,但是在dpddelay=N1之内没有流量),一端或两端发送了hello消息(R_U_THERE)和另一端回复确认信息(R_U_THERE_ACK),如果没有收到响应,直至dpdtimeout=N2的时间,仍然没有流量或者收到R_U_THERE_ACK,那么会认为对端死亡,删除SA并从路由表中删除相关联的路由;建议开启此功能,并且两边同时开启和保持数据一致,如果只是开启一端,另一端便于以默认参数开启,这点很重要,网络上的资料有点不对; tunnel模式,建议dpdaction设置为hold;transport模式,dpdaction设置为clear;
4、 准备工作
禁用重定向
sysctl -a | egrep"ipv4.*(accept|send)_redirects" | awk -F "=" '{print$1"= 0"}' >> /etc/sysctl.conf
开启路由转发
Vi /etc/sysctl.conf
net.ipv4.ip_forward = 1 net.ipv4.conf.default.rp_filter = 0
sysctl –p #生效
配置iptables防火墙
vi /etc/sysconfig/iptables 增加如下内容,开放UDP 4500和500端口
-A INPUT -p udp -m state --state NEW -m udp --dport500 -j ACCEPT -A INPUT -p udp -m state --state NEW -m udp --dport4500 -j ACCEPT
注:以上配置都需要在两台×××服务器上 进行操作;
最后,开放IDC机房的外部硬件防火墙的 UDP 4500/500端口(即目的端口映射)
5、 安装
yum install bison flex xmlto perl-podlators tar –zxvf openswan-2.6.50.tar.gz cd openswan-2.6.50 make programs make install
注: 这里使用openswan的netkey,centos7.3的内核是3.10,本身已经支持了nat-T功能
使用ipsec verify命令 验证openswan的安装是否Ok
红色方框处,不要在意,开启Ipsec服务之后,就会显示OK
6、 配置
Openswan有两个主要的配置文件:
/etc/ipsec.conf 主要配置文件,settings和connections,
/etc/ipsec.secrets主要用来保存RSA Keys和preshared secrets (PSKs)
Openswan支持许多不同的安全认证方式,包括RSA keys、pre-shared keys或x.509证书方式,通常推荐使用RSA Keys,安全性高;但是这里选择使用pre-shared keys,简单而且性能高;
IDC机房
×××服务器/etc/ipsec.conf配置如下:
version 2 #版本 config setup #命名为setup,Ipsec服务启动直接加载nat_traversal=yes #开启NAT-T穿透virtual_private=%v4:192.168.1.0/24,%v4:10.99.0.0/24 #指定哪些子网通过×××,如果不允许,在%前面加上!;%v4 表示为ipv4protostack=netkey #使用netkeyinterfaces="%defaultroute" #ipsec ***使用的虚拟接口和实接口,格式是"virtual=physicalvirtual=physical ...",这里设置为默认路由出去的接口oe=off #此选项已经被忽略。它用于确定是否启用机会加密;plutostderrlog=/var/log/pluto.log #指定日志保存路径plutodebug=all #记录多少调试输出,默认是none,这里便于设置为all,便于追踪,调试OK,可以设置为none;conn idc-to-office #设置connection,并命名为idc-to-officetype=tunnel #隧道模式,支持host-to-host,host-to-network和network-to-network;如果设置transport,表示为host-to-host传输模式;authby=secret #配置安全网关如何认证,默认是rsa,这里使用共享密钥auto=start #start是表示connection随Ipsec服务器启动而自动连接;add不会随ipsec服务启动而启动,需要ipsec auto up idc-to-office启动connection;dpddelay=15 #每15秒钟检测一次,默认是30秒dpdtimeout=60 #闲置超时时间,这个时间内没有流量,没有响应,就表示对等实体已经死亡,并删除SA,默认120秒;dpdaction=hold #eroute进入hold,等待对方的return信息;tunnel模式,推荐设置为hold;transport模式,推荐设置为clear;pfs=no #无论设置为yes,还是no,都会启用;ike=aes128-sha1;modp1024 #第一阶段算法参数ikelifetime=86400s #第一阶段生存时间keyexchange=ike phase2=espphase2alg=aes128-sha1;modp1024 #指定第二阶段的算法参数;salifetime=3600s #第二阶段生存时间aggrmode=no #一般模式,设置yes,就是野蛮模式; left=10.99.0.16 #本机服务器提供对外(通常是指Internet)服务的接口,网上大多说是公网IP,这个说法对于服务器是直接对接Internet,并作为内网的网关的时候,是对的;但是,对于本例,在防火墙内部,就是不对的,其IP仍然是私网地址,所以,这点很重要,要认真区分;leftid=@szidc #设置身份ID,如果是域名,使用@指定;如果用IP,直接使用IP地址接口,不需要@符号;leftsubnet=10.99.0.0/24 #表示本地的子网网络,如果有多个网段就有leftsubnetsleftnexthop=%defaultroute #默认路由right=%any #对端公网IP,无固定IP或不确定IP,设置为%any,这里必须设置为公网IP,跟left有些不同;rightsubnet=192.168.1.0/24 #对端本地的子网网络rightnexthop=%defaultroute #默认路由 注: 通常理解,left 表示本地网络,right表示对端网络;
/etc/ipsec.secrets配置文件内容如下
%any %any : PSK "a14RbmJhq464" #第一个%any表示外网IP,第二个%any表示对端外网IP,如果只有一个×××通道的话,这里可以都设置为%any; 如果有多个×××通道,需要指定IP地址,每一行代表一个;
办公室网络
/etc/ipsec.conf配置文件如下:
version 2 #版本 config setupnat_traversal=yes #开启nat-t 穿透virtual_private=%v4:192.168.1.0/24,%v4:10.99.0.0/24 #protostack=netkeyinterfaces="%defaultroute"oe=offplutostderrlog=/var/log/pluto.logplutodebug=all #调试完毕,改为noneconnidc-to-officetype=tunnelauthby=secretauto=start #注意跟前面IDC机房的配置比较区别,前面是add,这里设置为startpfs=nokeyexchange=ikephase2=espike=aes128-sha1;modp1024ikelifetime=86400sphase2alg=aes128-sha1;modp1024salifetime=3600saggrmode=nodpddelay=15dpdtimeout=60dpdaction=holdright=211.154.139.8 #注意与IDC机房的配置比较rightsubnet=10.99.0.0/24 #注意与IDC机房的配置比较rightid=@szidc #注意与IDC机房的配置比较rightnexthop=%defaultroute #注意与IDC机房的配置比较left=192.168.1.252 #注意与IDC机房的配置比较leftsubnet=192.168.1.0/24 #注意与IDC机房的配置比较#lefttid=@rightleftnexthop=%defaultroute #注意与IDC机房的配置比较
/etc/ipsec.secrets配置文件内容如下:
%any %any : PSK "a14RbmJhq464" #注意密钥要跟IDC机房的一致
7、 启动服务
/etc/init.d/ipsec start #启动ipsec服务,先启动IDC机房服务器,后启动办公室这边的服务器;
8、 检测***的tunnel状态
/etc/init.d/ipsec status #检测ipsec tunnel是否建立起来
结果如下:
表示×××通道已经建立起来
测试是否能够Ping通
转载于:https://blog.51cto.com/tsykl2008/1970141
Openswan企业实战之ipsec ***加速ERP系统相关推荐
- Hitpoint:外贸企业如何选择合适的ERP系统
对于目前的国际贸易形势来说,信息化应用越来越广泛,外贸企业获取信息的路径和方式也越来越便捷,从而推动国际贸易效率也是在不断的提高.在效率压力下,企业选择一些外贸软件帮助企业跻身行业竞争是大势所趋.那么 ...
- 制造企业有可能自行开发ERP系统吗?
当然可以啊! 生产企业对于ERP的需求是一直存在的,但市场上多为标准化的产品,与企业的个性化需求矛盾着. 有很多制造企业自行开发ERP系统啊!只是各个企业成效不同而已,毕竟不同企业的IT开发能力不同而 ...
- 生产制造企业仓库管理不到位?ERP系统帮你解决
数量繁多的物料.成百上千的供应商,为数不多的仓管员,基本形同虚设的制度和流程,这些现象相信我们都见过,甚至经历过. 而仓库问题基本上来自现场管理不到位!生产制造企业仓库现场管理不到位包括但不限于以下这 ...
- 企业CIO如何做好免费ERP系统的选型
2019独角兽企业重金招聘Python工程师标准>>> 利用信息化手段进行企业管理已经不是新鲜的事情,甚至从某些方面我们可以理解为这是一条企业发展必须要走的道路,信息化可以帮助企业获 ...
- 生产管理企业中委外加工如何运用ERP系统解决
制造企业为了保证产品的质量和交货期,大多数企业都存在着将部分零部件进行委外加工的业务,委外加工一般指的是其他企业根据本企业的零件加工要求,生产制造出符合要求的零部件或产品,往往需要企业提供材料或技术图 ...
- ERP系统31.83版本发布,解决企业供应链管理难题
近日,ERP系统31.83版本正式发布.无处不在的互联网,正在改变企业与用户的连接方式,一旦享受过什么叫实时,就再也无法忍受延迟,一旦感受过什么叫便捷,就再也无法忍受繁琐,企业如何全方位提高服务效率和 ...
- 如何给企业选择一款ERP系统
现如今各行各业的企业都在迅速成长,各类中小型企业更是多得数不胜数,那么企业在发展的过程中都会用到一些系统来帮助企业更好地去管理,就比如有ERP系统,APS系统和MES系统. 现在市场上也有各种各样的E ...
- 制造业ERP系统如何解决每个企业都存在的管理困境
佛系青年们热度刚刚有所退减,一群"积极废人"又哗然而起,所谓的"积极废人",说的是那些"爱给自己立flag,但永远做不到的人:尽管心态积极向上,行动却 ...
- 企业构建ERP系统不得不考虑的因素
资源管理系统(ERP)目前企业使用十分普及,对于协助企业维持基本营运功能已是不可或缺,那么是不是可以像购买汽车一样,购买一套ERP系统及相关的教育训练服务就可以算是导入完成了?并且可以让企业达到ERP ...
最新文章
- 为Keil添加注释的快捷键
- Spring Cloud学习系列第六篇【分布式配置中心】
- 实例教程:1小时学会Python
- java 的HashMap底层数据结构
- lvalue-xvalue-prvalue
- tensorflow 转张量类型为float_一文看懂TensorFlow计算图
- 终于解决 k8s 集群中部署 nodelocaldns 的问题
- 解决Nginx环境下wordpress设置固定链接打开失败问题
- 【Android开发】Android 颜色透明度换算
- 萌新的51之旅——红外通信
- MATLAB:简单GUI的设计流程
- 滴滴DSRC抢楼大赛,十一快车券飞起来
- JAVA 仿XP画图板的总结
- BIM模型文件下载——四层仿古别墅模型
- 苹果手机打电话没有声音怎么回事_微信打电话没有声音
- Web前端105天-day13-BOOT
- OpenCASCADE 获取面中心点法向
- spss分析方法-单样本K-S检验(转载)
- ubuntu搜狗输入法故障解决
- 如何创建NFT并OpenSea上展示《alchemy How to Develop an NFT Smart Contract》译
热门文章
- 剑指Offer Ⅱ 003.二进制加法(力扣剑指Offer专项突击版——整数_3)
- 剑指offer06.从尾到头打印链表
- nginx实现前后端分离
- 全球最大sap hana系统建立在以下哪个厂商的服务器产品上,全球最大sap hana系统建立在以下哪个厂商的服务器产品上...
- java string string_深入理解Java:String
- python 复制、移动文件到指定目录并修改名字
- java 垃圾回收 指针_Java 和 C++ 垃圾回收之间的差别
- B - 数据结构实验之排序二:交换排序(冒泡和快排)
- B - 数据结构实验之查找二:平衡二叉树
- 【C#学习】delegate(委托) 和 event(事件)