还在苦苦敲代码开发APP?你out啦! 试试积木搭建APP吧~

基于内网外隔离的微信推送解决方案

来源:个人博客     2016-03-30 10:12:59    人气:     我有话说( 0 人参与)

先来看看需求我们假设原始TOP如下:内网用户和tomcat1&tomcat2 服务器有访问微信企业API接口服务器的需求,但是该网络环境要求比较严格,...

先来看看需求

我们假设原始TOP如下:

 

内网用户和tomcat1&tomcat2 服务器有访问微信企业API接口服务器的需求,但是该网络环境要求比较严格,内网PC和服务器严禁访问互联网。

为了解决这一应有需求和矛盾我们在内网服务器和互联网之间加一台双网卡服务器充当映射层

TOP如下:

 

 

添加了一层映射层之后内网PC和TOMCAT1&tomcat2服务器如果需要访问微信企业API服务器的80端口只需要访问rinetd端口转发服务器内网IP的80端口即可。

通过该构架一个完整的微信信息访问流程分解成三个部分

第一部分

     内网服务器把消息推送给tomcat1&2服务器后tomcat1&2服务器直接访问rinetd端口转发服务器内网IP80端口。到此为止,应用层的信息流程结束

 

第二部分

 

端口转发把qyapi.weixin.qq.com的80端口直接映射到本地IP的80端口。访问本机的80端口就是访问qyapi.weixin.qq.com的80端口。当tomcat1&2发起访问请求的一个TCP会话内整条通信链完整可以互相推送信息当这个TCP会话结束。qyapi.weixin.qq.com需要访问内部服务器将变得不可行,这是就需要第三部分完成

 

第三部分

 

整个网络中只有tomcat3服务器通过防火墙和互联网相连,TOMCAT3 实时保持对企业微信API服务器的连接。当企业微信API主动发起消息推送的时候,

TOMCAT3充当消息的接受者。TOMCAT3内网端和TOMCAT1&2处在同一个网段。信息调用变得非常的便捷易于实现。

 

优缺点

  

   上述方案的优点非常明显

1、不改变现有网络TOP结构。

2、内网PC端和TOMCAT1&2不用做额外的配置

3、端口转发本身就是一个很好的安全策略

4、实施简单后期维护方便

缺点

1、存在单点故障

2、对于频繁的大量的信息转发效率没有路由直连高

 


配置信息

端口转发配置


安装rinetd  请自行百度
编辑配置vi /etc/rinetd.conf
 

 

启动程序
pkill rinetd  ##关闭进程
rinetd -c /etc/rinetd.conf  ##启动转发
把这条命令加到/etc/rc.local里面就可以开机自动运行

查看状态
netstat -antup




tomcat1@2设置hosts



测试  OK     完美解决

微信 推送 解决方案

本文源自互联网,采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可,
版权归原作者,如有问题请联系service@tsingfun.com (编辑:admin)
分享到: