CN108737343B - 一种安全访问网络的实现方法及装置 - Google Patents
一种安全访问网络的实现方法及装置 Download PDFInfo
- Publication number
- CN108737343B CN108737343B CN201710262289.8A CN201710262289A CN108737343B CN 108737343 B CN108737343 B CN 108737343B CN 201710262289 A CN201710262289 A CN 201710262289A CN 108737343 B CN108737343 B CN 108737343B
- Authority
- CN
- China
- Prior art keywords
- type
- request message
- message
- cdn
- service system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000004891 communication Methods 0.000 claims abstract description 32
- 238000006243 chemical reaction Methods 0.000 claims description 20
- 230000005540 biological transmission Effects 0.000 claims description 19
- 238000012545 processing Methods 0.000 claims description 9
- 230000002265 prevention Effects 0.000 claims description 7
- 230000009471 action Effects 0.000 claims description 6
- 230000001960 triggered effect Effects 0.000 claims description 6
- 238000007781 pre-processing Methods 0.000 claims description 3
- 230000009466 transformation Effects 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 7
- 238000012546 transfer Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000032683 aging Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/18—Protocol analysers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0485—Networking architectures for enhanced packet encryption processing, e.g. offloading of IPsec packet processing or efficient security association look-up
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明实施例公开了一种安全访问网络的实现方法及装置,涉及互联网技术领域,解决了如何在不影响站点正常经营的情况下提高站点的安全性的问题。本发明包括:接收客户端发送的第一类请求消息,所述第一类请求消息符合所述客户端与内容分发网络(CDN)之间的通信协议;对所述第一类请求消息进行转换处理,并得到第二类请求消息,其中,所述第二类请求消息符合所述CDN与业务***之间的通信协议;将所述第二类请求消息通过负载均衡***向所述业务***发送。本发明适用于全站***的HTTPS改造。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及一种安全访问网络的实现方法及装置。
背景技术
目前,依托互联网技术和移动通信技术的快速发展,很多销售企业都已建立并运行了大量的在线交易平台、门户网站、移动服务站点等服务端站点。
当下的大部分网站在于客户端进行通信时,主要采用的通信制式是HTTP(超文本传输协议,HyperText Transfer Protocol),作为一种成熟运用多年的协议制式,HTTP已难以应对目前愈来愈复杂的网络环境,例如:很多在线交易平台的请求URL(统一资源定位符,Uniform Resource Locator)经常遭到劫持,以至于用户投诉每天发生,严重影响了企业形象和经济利益;且在线金融产品而言,如果使用HTTP相当于明文网络传输,用户账号和资金存在严重的安全风险。因此目前主流互联网企业都开始提倡并采用安全性更高的HTTPS(超文本传输安全协议,Hypertext Transfer Protocol Secure)。
但是,处于运营连续性和改造成本等现实情况,业内的运营商都无法对本企业正在运行的***下线接收改造,或者建设一套全新的基于HTTPS的***,并且HTTPS后续的HTTP2.0协议也将逐步推广。因此,如何提供一套既能在不影响站点正常经营的情况下提高站点的安全性的改造方案,成为目前急需研究的问题。
发明内容
本发明的实施例提供一种安全访问网络的实现方法及装置,解决了如何在不影响站点正常经营的情况下提高站点的安全性的问题。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,本发明的实施例提供的方法,包括:
接收客户端发送的第一类请求消息,所述第一类请求消息符合所述客户端与内容分发网络(CDN)之间的通信协议;
对所述第一类请求消息进行转换处理,并得到第二类请求消息,其中,所述第二类请求消息符合所述CDN与业务***之间的通信协议;
将所述第二类请求消息通过负载均衡***向所述业务***发送,其中,所述业务***至少包括网页服务器和应用服务器,所述CDN将所述第二类请求消息向所述负载均衡***发送后,由所述负载均衡***透传至所述业务***,所述CDN、所述负载均衡***和所述业务***之间采用HTTP协议建立通信。
结合第一方面,在第一方面的第一种可能的实现方式中,所述对所述第一类请求消息进行转换处理,并得到第二类请求消息,包括:
所述CDN检测所述第一类请求消息的消息制式是否为HTTPS;
若是则将所述第一类请求消息的消息制式转换为HTTP,得到转换后的消息作为所述第二类请求消息;
并将当前切换当前消息传输端口至http的端口。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,还包括:
当所述CDN检测到所述第一类请求消息的消息制式不为HTTPS时,向所述客户端发送跳转消息,所述跳转消息指向采用HTTP协议建立通信的站点。
结合第一方面或第一方面的第一、二种可能的实现方式,在第三种可能的实现方式中,还包括:
当检测到切换事件发生时,所述CDN将所述第一类请求消息透传至网站应用级入侵防御***(WAF),其中,所述切换事件在所述CDN停止对所述第一类请求消息进行转换处理时触发,所述WAF部署在所述负载均衡***和所述业务***之间;
通过所述WAF对所述第一类请求消息进行转换处理,并得到第二类请求消息,再由所述WAF将所述第二类请求消息向所述业务***发送。
结合第一方面的第一种可能的实现方式,在第四种可能的实现方式中,还包括:
在将所述第二类请求消息通过负载均衡***向所述业务***发送之前,在所述第二类请求消息上增加消息头,所述消息头包括:用于表示原始协议头部、域名和去参URL的内容;
其中,所述业务***根据所述消息头中的内容确定所需执行的业务动作。
结合第一方面的第四种可能的实现方式,在第五种可能的实现方式中,将字段x-request-url作为所述消息头,所述字段x-request-url的值为:表示原始协议头部、域名和去参URL的字符。
结合第一方面的第四、五种可能的实现方式,在第六种可能的实现方式中,还包括:
当所述负载均衡***检测到,所接受到的所述第二类请求消息中不存在所述消息头时,在所述第二类请求消息上增加所述消息头。
结合第一方面的第四、五种可能的实现方式,在第七种可能的实现方式中,还包括:
当所述WAF检测到,所接受到的所述第二类请求消息中不存在所述消息头时,在所述第二类请求消息上增加所述消息头。
第二方面,本发明的实施例提供的装置,包括:
接收模块,用于接收客户端发送的第一类请求消息,所述第一类请求消息符合所述客户端与内容分发网络(CDN)之间的通信协议;
转换模块,用于对所述第一类请求消息进行转换处理,并得到第二类请求消息,其中,所述第二类请求消息符合所述CDN与业务***之间的通信协议;
发送模块,用于将所述第二类请求消息通过负载均衡***向所述业务***发送,其中,所述业务***至少包括网页服务器和应用服务器,所述CDN将所述第二类请求消息向所述负载均衡***发送后,由所述负载均衡***透传至所述业务***,所述CDN、所述负载均衡***和所述业务***之间采用HTTP协议建立通信。
结合第二方面,在第二方面的第一种可能的实现方式中,所述转换模块,具体用于所述CDN检测所述第一类请求消息的消息制式是否为HTTPS;若是则将所述第一类请求消息的消息制式转换为HTTP,得到转换后的消息作为所述第二类请求消息;并将当前切换当前消息传输端口至http的端口;当所述CDN检测到所述第一类请求消息的消息制式不为HTTPS时,向所述客户端发送跳转消息,所述跳转消息指向采用HTTP协议建立通信的站点。
结合第二方面或第二方面的第一种可能的实现方式,在第二种可能的实现方式中,还包括:
切换模块,用于当切换事件发生时,将所述第一类请求消息透传至网站应用级入侵防御***(WAF),其中,所述切换事件在所述CDN停止对所述第一类请求消息进行转换处理时触发,所述WAF部署在所述负载均衡***和所述业务***之间;并通过所述WAF对所述第一类请求消息进行转换处理,并得到第二类请求消息,再由所述WAF将所述第二类请求消息向所述业务***发送。
结合第二方面或第二方面的第一种可能的实现方式,在第三种可能的实现方式中,还包括:
预处理模块,用于在将所述第二类请求消息通过负载均衡***向所述业务***发送之前,在所述第二类请求消息上增加消息头,所述消息头包括:用于表示原始协议头部、域名和去参URL的内容;其中,所述业务***根据所述消息头中的内容确定所需执行的业务动作。
本发明实施例提供的安全访问网络的实现方法及装置,实现了服务端仍使用HTTP访问,在CDN上完成https的转换,实现了在尽快完成HTTPS握手的同时,并降低对全站进行改造的工作量。从而实现了,在保障消息传输安全性的情况下(比如主要的劫持问题发生在手机至CDN部分,属于前端的问题,则在前端采用安全性较高的HTTPS)尽可能在全链路中减少HTTPS协议的覆盖程度,而替换为传输效率更高的http协议,解决了如何在不影响站点正常经营的情况下提高站点的安全性的问题。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1a、1b为本发明实施例提供的可能的***架构示意图;
图2为本发明实施例提供的方法流程示意图;
图3为本发明实施例提供的具体实例的示意图;
图4、5、6为本发明实施例提供的装置的结构示意图。
具体实施方式
为使本领域技术人员更好地理解本发明的技术方案,下面结合附图和具体实施方式对本发明作进一步详细描述。下文中将详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。
本实施例中的方法流程,具体可以在一种如图1a和图1b所示的***上执行,该***包括:客户端、CDN(内容分发网络,Content Delivery Network)、负载均衡***(比如由Ctrix、F5等负载均衡设备搭建的***)、WAF(Web Application Firewall,Web应用防护***,也称:网站应用级入侵防御***),和业务***。其中,业务***具体包括了:网页服务器和应用服务器。客户端发出的请求消息,先是被CDN接收,然后传输到负载均衡***,之后再由负载均衡***发送至WAF,最后通过WAF向业务***传输。
简单地说,CDN是一个经策略性部署的整体***,包括分布式存储、负载均衡、网络请求的重定向和内容管理4个要件,而内容管理和全局的网络流量管理(TrafficManagement)是CDN的核心所在。通过用户就近性和服务器负载的判断,CDN确保内容以一种极为高效的方式为用户的请求提供服务。本实施例中所采用的CDN可以基于现有技术搭建,至于如何架设CDN在此不再赘述。总的来说,内容服务基于缓存服务器,也称作代理缓存(Surrogate),它位于网络的边缘,距用户仅有"一跳"(Single Hop)之遥。同时,代理缓存是内容提供商源服务器(通常位于CDN服务提供商的数据中心)的一个透明镜像。这样的架构使得CDN服务提供商能够代表他们客户,即内容供应商,向最终用户提供尽可能好的体验,而这些用户是不能容忍请求响应时间有任何延迟的。
本实施例中的负载均衡***上,可以同时采用HTTPS(超文本传输安全协议,Hypertext Transfer Protocol Secure)和HTTP(超文本传输协议,HyperText TransferProtocol)协议并分别提供相应的通信接口,并支持HTTPS的透传,即对于HTTPS请求,负载均衡***可以不解包,只根据四层的TCP包信息做转发。进一步的,在默认情况下,在CDN上部署HTTPS-HTTP的转换转换策略的同时,本实施例中的CDN、负载均衡***、WAF和业务***等也都可以开启HTTPS透传功能,从而保证接收到的HTTPS消息也能够正常访问业务***,从而保证***对于传统的HTTPS制式下数据传输的通顺。
在业务***中:网页服务器主要用于:向客户端(其中,在用户设备上往往运行有用于商户进行可视化操作的程序或者APP,这类用于进行可视化操作的程序或者APP可以称为客户端程序,本实施例中对于运行了这类程序或者APP的用户设备也可以称为客户端)提供可视化的界面,比如:消费者或者商户(即入驻在电子商务平台的商家)通过操作客户端,访问电子商务平台***中的某一个业务***(比如:购物车、促销***、运费,时效,物流订单,库存***,报关***等),并通过该业务***的网页服务器所提供的浏览界面进行商品查询、文件下载,导入/导出报表等操作。例如:本实施例中的网页服务器,具体可以采用Apache HTTP Server(简称Apache,Apache软件基金会提供的一个开放源码的网页服务器,是一种模块化的服务器,源于NCSAhttpd服务器,经过多次修改,成为世界使用排名第一的Web服务器软件,可以在大多数计算机操作***中运行)。以便于快速简单的API(Application Programming Interface,应用程序编程接口)扩展,将Perl/Python等解释器编译到服务器中,从而降低代码开发时的成本。
具体的,在网页服务器与客户端之间,还可以架设WAF,用于阻拦所有来源于客户端的恶意请求或者非正常请求。WAF上可以采用HTTP(HyperText Transfer Protocol,超文本传输协议)协议进行具体的数据交互。
应用服务器主要用于:接收客户端发送的请求,比如:消费者或者商户通过操作智能手机向网站业务***发送的访问消息,并在较高负载情况下对接收到的请求进行流量控制处理。本实施例中的应用服务器,具体可以采用JBoss(一种基于J2EE的开放源代码的应用服务器)。其中,JBoss代码遵循LGPL许可。应用服务器连接由多个DB节点(计算节点)组成的计算集群,从而为应用服务器的流控过程提供计算资源。
本实施例中所揭示的网页服务器和应用服务器,在硬件层面上具体可以是业务***、工作站、超级计算机等设备,或者是由多个硬件设备组成的一种用于数据处理的业务***集群***。
本实施例中所揭示的客户端具体可以实做成单独一台装置,或整合于各种不同的媒体数据播放装置中,诸如移动电话、平板电脑(Tablet Personal Computer)、膝上型电脑(Laptop Computer)、个人数字助理(personal digital assistant,简称PDA)等。
本发明实施例提供一种安全访问网络的实现方法,如图2所示,包括:
S1、接收客户端发送的第一类请求消息。
所述第一类请求消息符合所述客户端与内容分发网络(CDN)之间的通信协议;具体的,如图1b所示,所述客户端与内容分发网络(CDN)之间采用HTTP和HTTPS协议建立通信。例如:第一类请求消息具体可以是客户端向CDN发送的https消息。在本实施例中,采用https协议进行数据包的封装并传输的消息报可以称为https消息;同理,采用http协议进行数据包的封装并传输的消息报可以称为http消息。
S2、对所述第一类请求消息进行转换处理,并得到第二类请求消息。
其中,所述第二类请求消息符合所述CDN与业务***之间的通信协议,具体可以是http消息。其中,第二类请求消息具体可以是经过转换处理,封装方式由https转化为http的消息。
S3、将所述第二类请求消息通过负载均衡***向所述业务***发送。
其中,所述业务***至少包括网页服务器和应用服务器,所述CDN将所述第二类请求消息向所述负载均衡***发送后,由所述负载均衡***透传至所述业务***,所述CDN、所述负载均衡***和所述业务***之间采用HTTP协议建立通信。
在本实施例中,可以在CDN上部署HTTPS-HTTP消息转换策略,具体在于将CDN作为HTTPS的统一接入层,在本实施例的扩展设计中,可以将所有的https接入的优化方案,部署在CDN上,同时服务端的HTTPS开关也可以部署在CDN上。从而保证了从CDN至服务端(负载均衡-WAF-业务***)可以采用http进行通信,从而即保障了客户端与CDN之间通信的安全性,降低了来自客户端的风险,比如采用HTTP时客户端容易被劫持的问题;又保障了CDN至服务端的业务***中消息传输的效率,减轻***压力,实现尽快握手。在这个过程中,负载均衡***和waf可以只处理http请求,不需要做额外的调整或者***升级,从而降低服务端***的开发成本,实现了在不影响站点正常经营的情况下进行站点的安全性的改造之目的。
本发明实施例提供的安全访问网络的实现方法,实现了服务端仍使用HTTP访问,在CDN上完成https的转换,实现了在尽快完成HTTPS握手的同时,并降低对全站进行改造的工作量。从而实现了,在保障消息传输安全性的情况下(比如主要的劫持问题发生在手机至CDN部分,属于前端的问题,则在前端采用安全性较高的HTTPS)尽可能在全链路中减少HTTPS协议的覆盖程度,而替换为传输效率更高的http协议。
具体的,在本实施例中,所述对所述第一类请求消息进行转换处理,并得到第二类请求消息,包括:
所述CDN检测所述第一类请求消息的消息制式是否为HTTPS;
若是则将所述第一类请求消息的消息制式转换为HTTP,得到转换后的消息作为所述第二类请求消息。例如:将https请求转换为http请求,其中,https采用443端口,http采用80端口,“转换”可以理解为:消息制式转换并进行端口重新选择。
并将当前切换当前消息传输端口至http的端口。具体的,CDN将http请求发送至负载均衡***。
当所述CDN检测到所述第一类请求消息的消息制式不为HTTPS时,向所述客户端发送跳转消息。
其中,所述跳转消息指向采用HTTP协议建立通信的站点。例如:若客户端接入时采用的是http协议,并发出基于http协议的消息后,则在CDN上自动跳转(比如302跳转)至https。其中,302跳转指的是:302重定向(302redirect)、又称之为302代表暂时性转移(Temporarily Moved)。这里的重定向可以理解为一种服务器端的重定向。从而使得用户首先访问CDN的地址,且通信协议的证书布在CDN上,由CDN识别客户端所要的服务所在的原站(比如业务***的对外展示的具体网站),然后将转换为http的报文向原站发送。
进一步的,还包括:
当检测到切换事件发生时,所述CDN将所述第一类请求消息透传至网站应用级入侵防御***,即(Web Application Firewall,网站应用级入侵防御***)。通过所述WAF对所述第一类请求消息进行转换处理,并得到第二类请求消息,再由所述WAF将所述第二类请求消息向所述业务***发送。
其中,所述切换事件在所述CDN停止对所述第一类请求消息进行转换处理时触发,所述WAF部署在所述负载均衡***和所述业务***之间。切换事件发生则表示CDN暂时无法执行将https请求转换为http请求的过程。
在本实施例的实际应用中,开发人员在业务逻辑代码的编写过程中,经常会在Controller类中做一些重定向(Redirect)或者根据接受到的请求做一些判断。在HTTPS改造过程中,就要求我们根据请求协议的不同(HTTPS/HTTP)做不同的重定向(HTTPS/HTTP)。但是,HTTPS请求到业务***的应用服务器前会被转换为HTTP请求,这将导致应用服务器实际上拿不到HTTPS协议头,即无法判断是http请求还是https请求。
针对该技术问题,在本实施例中,可以在CDN、负载均衡***和WAF上对回应用服务器的消息上增加了一个消息头(例如:x-request-url)。例如:
在将所述第二类请求消息通过负载均衡***向所述业务***发送之前,在所述第二类请求消息上增加消息头,所述消息头包括:用于表示原始协议头部、域名和去参URL的内容。例如:CDN将https请求转换为http请求,同时增加x-request-url字段作为消息头;x-request-url的值为:原始协议头部(比如:https://|http://)+域名+去参URL。
例如:
原始协议头部:http://|https://
域名:xxx.suning.com
若客户端发起的请求是:https://my.suning.com/ajax/getCommonHorizontalMenu.do?_t=1764985318&callbac k=getCommonHorizontalMenuCallBack,其中,“去参URL”为业内技术人员之间常用的一种说法,可以理解为去除了字符“?”后面的参数字段比如:t=1764985318&callback=getCommonHorizontalMenuCallBack)的URL请求
则,x-request-url:https://my.suning.com/ajax/getCommonHorizontalMenu.do
其中,所述业务***根据所述消息头中的内容确定所需执行的业务动作。
具体的,可以将字段x-request-url作为所述消息头,所述字段x-request-url的值为:表示原始协议头部、域名和去参URL的字符。例如:由于业务***进行处理时需要识别消息头,但是客户端与CDN之间采用https,业务***依然采用http,因此在https转换为http后,业务***无法获取原始的消息头。因此增加消息头“x-request-url”,来记录客户端发送的原始的报文头部(即https的报文),在负载均衡***(比如Ctrix)上可以通过“x-request-url”得到原始的请求报文头。
进一步的,如图3所示的,还包括:当所述负载均衡***检测到,所接受到的所述第二类请求消息中不存在所述消息头时,在所述第二类请求消息上增加所述消息头。
其中,将所述转换后的http请求传输至负载均衡***后,负载均衡***判断请求中有无x-request-url字段,如果有,则不做处理,请求直接通过;若没有x-request-url字段,则新增x-request-url字段。
进一步的,还包括:
当所述WAF检测到,所接受到的所述第二类请求消息中不存在所述消息头时,在所述第二类请求消息上增加所述消息头。
其中,将所述转换后的http请求传输至WAF后,WAF判断请求中有无x-request-url字段,如果有,则不做处理,请求直接通过;若没有x-request-url字段,则新增x-request-url字段。
现有通常的HTTPS方案中,客户端发送的消息传输至业务***前,需要先经过负载均衡(Ctrix、F5等设备),再到waf(防火墙),再传输到业务***。因此,在客户端-服务端的建立会话的过程中,采用HTTPS较HTTP要多做两次SSL(安全套接层,Secure SocketsLayer)握手,其中一次是用于证书的交换,另外一次用于数据的加密,以保证安全性。因此这就会带来额外两个RTT(往返时延,Round-Trip Time)时间的开销。
本发明实施例的设计思路在于,在保障消息传输安全性的情况下(比如主要的劫持问题发生在手机至CDN部分,属于前端的问题,则在前端采用安全性较高的HTTPS。),尽可能在全链路中减少HTTPS协议的覆盖程度,而替换为传输效率更高的http协议。具体的,为了尽可能早的建立连接,完成SSL握手,本实施例的设计中服务端仍使用HTTP访问,降低开销,即完成HTTPS转换。在CDN上完成https的转换,实现了在尽快完成HTTPS握手的同时,并降低对全站进行改造的工作量。
本发明实施例还提供一种如图4所示的安全访问网络的实现装置,该装置具体可以运行在如图1a、1b所示的CDN上。其中该装置可以具体包括:
接收模块,用于接收客户端发送的第一类请求消息,所述第一类请求消息符合所述客户端与内容分发网络(CDN)之间的通信协议;
转换模块,用于对所述第一类请求消息进行转换处理,并得到第二类请求消息,其中,所述第二类请求消息符合所述CDN与业务***之间的通信协议;
发送模块,用于将所述第二类请求消息通过负载均衡***向所述业务***发送,其中,所述业务***至少包括网页服务器和应用服务器,所述CDN将所述第二类请求消息向所述负载均衡***发送后,由所述负载均衡***透传至所述业务***,所述CDN、所述负载均衡***和所述业务***之间采用HTTP协议建立通信。
其中,所述转换模块,具体用于所述CDN检测所述第一类请求消息的消息制式是否为HTTPS;若是则将所述第一类请求消息的消息制式转换为HTTP,得到转换后的消息作为所述第二类请求消息;并将当前切换当前消息传输端口至http的端口;当所述CDN检测到所述第一类请求消息的消息制式不为HTTPS时,向所述客户端发送跳转消息,所述跳转消息指向采用HTTP协议建立通信的站点。
进一步的,如图5所示,该装置还包括:
切换模块,用于当切换事件发生时,将所述第一类请求消息透传至网站应用级入侵防御***(WAF),其中,所述切换事件在所述CDN停止对所述第一类请求消息进行转换处理时触发,所述WAF部署在所述负载均衡***和所述业务***之间;并通过所述WAF对所述第一类请求消息进行转换处理,并得到第二类请求消息,再由所述WAF将所述第二类请求消息向所述业务***发送。
进一步的,如图6所示,该装置还包括:
预处理模块,用于在将所述第二类请求消息通过负载均衡***向所述业务***发送之前,在所述第二类请求消息上增加消息头,所述消息头包括:用于表示原始协议头部、域名和去参URL的内容;其中,所述业务***根据所述消息头中的内容确定所需执行的业务动作。
本发明实施例提供的安全访问网络的实现装置,实现了服务端仍使用HTTP访问,在CDN上完成https的转换,实现了在尽快完成HTTPS握手的同时,并降低对全站进行改造的工作量。从而实现了,在保障消息传输安全性的情况下(比如主要的劫持问题发生在手机至CDN部分,属于前端的问题,则在前端采用安全性较高的HTTPS)尽可能在全链路中减少HTTPS协议的覆盖程度,而替换为传输效率更高的http协议。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (2)
1.一种安全访问网络的实现方法,其特征在于,包括:
接收客户端发送的第一类请求消息,所述第一类请求消息符合所述客户端与内容分发网络(CDN)之间的通信协议;
对所述第一类请求消息进行转换处理,并得到第二类请求消息,其中,所述第二类请求消息符合所述CDN与业务***之间的通信协议;
将所述第二类请求消息通过负载均衡***向所述业务***发送,其中,所述业务***至少包括网页服务器和应用服务器,所述CDN将所述第二类请求消息向所述负载均衡***发送后,由所述负载均衡***透传至所述业务***,所述CDN、所述负载均衡***和所述业务***之间采用HTTP协议建立通信;
所述对所述第一类请求消息进行转换处理,并得到第二类请求消息,包括:
所述CDN检测所述第一类请求消息的消息制式是否为HTTPS;
若是则将所述第一类请求消息的消息制式转换为HTTP,得到转换后的消息作为所述第二类请求消息;
并切换当前消息传输端口至http的端口;
当所述CDN检测到所述第一类请求消息的消息制式不为HTTPS时,向所述客户端发送跳转消息,所述跳转消息指向采用HTTP协议建立通信的站点;
还包括:
当检测到切换事件发生时,所述CDN将所述第一类请求消息透传至网站应用级入侵防御***(WAF),其中,所述切换事件在所述CDN停止对所述第一类请求消息进行转换处理时触发,所述WAF部署在所述负载均衡***和所述业务***之间;
通过所述WAF对所述第一类请求消息进行转换处理,并得到第二类请求消息,再由所述WAF将所述第二类请求消息向所述业务***发送;
还包括:
在将所述第二类请求消息通过负载均衡***向所述业务***发送之前,在所述第二类请求消息上增加消息头,所述消息头包括:用于表示原始协议头部、域名和去参URL的内容;
其中,所述业务***根据所述消息头中的内容确定所需执行的业务动作;
将字段x-request-url作为所述消息头,所述字段x-request-url的值为:表示原始协议头部、域名和去参URL的字符;
还包括:
当所述负载均衡***检测到,所接受到的所述第二类请求消息中不存在所述消息头时,在所述第二类请求消息上增加所述消息头;
还包括:
当所述WAF检测到,所接受到的所述第二类请求消息中不存在所述消息头时,在所述第二类请求消息上增加所述消息头。
2.一种安全访问网络的实现装置,其特征在于,包括:
接收模块,用于接收客户端发送的第一类请求消息,所述第一类请求消息符合所述客户端与内容分发网络(CDN)之间的通信协议;
转换模块,用于对所述第一类请求消息进行转换处理,并得到第二类请求消息,其中,所述第二类请求消息符合所述CDN与业务***之间的通信协议;
发送模块,用于将所述第二类请求消息通过负载均衡***向所述业务***发送,其中,所述业务***至少包括网页服务器和应用服务器,所述CDN将所述第二类请求消息向所述负载均衡***发送后,由所述负载均衡***透传至所述业务***,所述CDN、所述负载均衡***和所述业务***之间采用HTTP协议建立通信;
所述转换模块,具体用于所述CDN检测所述第一类请求消息的消息制式是否为HTTPS;若是则将所述第一类请求消息的消息制式转换为HTTP,得到转换后的消息作为所述第二类请求消息;并切换当前消息传输端口至http的端口;当所述CDN检测到所述第一类请求消息的消息制式不为HTTPS时,向所述客户端发送跳转消息,所述跳转消息指向采用HTTP协议建立通信的站点;
还包括:
切换模块,用于当切换事件发生时,将所述第一类请求消息透传至网站应用级入侵防御***(WAF),其中,所述切换事件在所述CDN停止对所述第一类请求消息进行转换处理时触发,所述WAF部署在所述负载均衡***和所述业务***之间;并通过所述WAF对所述第一类请求消息进行转换处理,并得到第二类请求消息,再由所述WAF将所述第二类请求消息向所述业务***发送;
还包括:
预处理模块,用于在将所述第二类请求消息通过负载均衡***向所述业务***发送之前,在所述第二类请求消息上增加消息头,所述消息头包括:用于表示原始协议头部、域名和去参URL的内容;其中,所述业务***根据所述消息头中的内容确定所需执行的业务动作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710262289.8A CN108737343B (zh) | 2017-04-20 | 2017-04-20 | 一种安全访问网络的实现方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710262289.8A CN108737343B (zh) | 2017-04-20 | 2017-04-20 | 一种安全访问网络的实现方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108737343A CN108737343A (zh) | 2018-11-02 |
CN108737343B true CN108737343B (zh) | 2021-02-19 |
Family
ID=63933177
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710262289.8A Active CN108737343B (zh) | 2017-04-20 | 2017-04-20 | 一种安全访问网络的实现方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108737343B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111756847B (zh) * | 2020-06-28 | 2023-05-09 | 北京百度网讯科技有限公司 | 网站支持https协议的方法和装置 |
CN113132394B (zh) * | 2021-04-22 | 2023-02-03 | 中国建设银行股份有限公司 | 一种请求处理***、方法、装置、存储介质及电子设备 |
CN113810464B (zh) * | 2021-08-12 | 2024-05-14 | 网宿科技股份有限公司 | 访问方法、web缓存代理***及电子设备 |
CN113805880A (zh) * | 2021-09-06 | 2021-12-17 | 南京联创信息科技有限公司 | 一种解决https协议在shiro框架下请求失败的方法 |
CN114465744A (zh) * | 2021-09-15 | 2022-05-10 | 中科方德软件有限公司 | 一种安全访问方法及网络防火墙*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1588840A (zh) * | 2004-07-26 | 2005-03-02 | 中国工商银行 | 一种基于虚拟链路的客户端与银行网的通信方法及*** |
JP2009260901A (ja) * | 2008-04-20 | 2009-11-05 | Shimousa Systems:Kk | Httpおよびhttps通信を経由した各種全二重通信の実現手段 |
CN103024933A (zh) * | 2011-09-28 | 2013-04-03 | 腾讯科技(深圳)有限公司 | 一种移动互联网访问***及访问移动互联网的方法 |
CN204168327U (zh) * | 2014-06-30 | 2015-02-18 | 优视科技有限公司 | 网络数据获取*** |
CN105376209A (zh) * | 2014-09-02 | 2016-03-02 | 松下电器产业株式会社 | 网络代理设备和楼宇监控***及其方法 |
CN106210057A (zh) * | 2016-07-13 | 2016-12-07 | 成都知道创宇信息技术有限公司 | 一种基于cdn的云安全防护方法 |
-
2017
- 2017-04-20 CN CN201710262289.8A patent/CN108737343B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1588840A (zh) * | 2004-07-26 | 2005-03-02 | 中国工商银行 | 一种基于虚拟链路的客户端与银行网的通信方法及*** |
JP2009260901A (ja) * | 2008-04-20 | 2009-11-05 | Shimousa Systems:Kk | Httpおよびhttps通信を経由した各種全二重通信の実現手段 |
CN103024933A (zh) * | 2011-09-28 | 2013-04-03 | 腾讯科技(深圳)有限公司 | 一种移动互联网访问***及访问移动互联网的方法 |
CN204168327U (zh) * | 2014-06-30 | 2015-02-18 | 优视科技有限公司 | 网络数据获取*** |
CN105376209A (zh) * | 2014-09-02 | 2016-03-02 | 松下电器产业株式会社 | 网络代理设备和楼宇监控***及其方法 |
CN106210057A (zh) * | 2016-07-13 | 2016-12-07 | 成都知道创宇信息技术有限公司 | 一种基于cdn的云安全防护方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108737343A (zh) | 2018-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108737343B (zh) | 一种安全访问网络的实现方法及装置 | |
CN108737471B (zh) | 一种网络访问方法及装置 | |
US10411956B2 (en) | Enabling planned upgrade/downgrade of network devices without impacting network sessions | |
US11159630B2 (en) | Third party validation of web content | |
US10230770B2 (en) | Network proxy layer for policy-based application proxies | |
US9794304B2 (en) | Enterprise client-server system and methods of providing web application support through distributed emulation of websocket communications | |
CN102292961B (zh) | 用于对由域名服务(dns)获得的ip地址进行转换的***和方法 | |
CN101753606B (zh) | 一种实现web反向代理的方法 | |
US9264435B2 (en) | Apparatus and methods for access solutions to wireless and wired networks | |
US8423650B2 (en) | Transferring session data between network applications | |
CN102904959B (zh) | 网络加速方法和网关 | |
CN113037878A (zh) | 一种cdn数据访问方法、***及电子设备 | |
US9712621B1 (en) | Information sharing endpoint | |
US10382521B2 (en) | Gateway that enables a browser-based application to communicate with a server-side application using a non-browser-compatible protocol | |
CN109450766B (zh) | 一种工作区级vpn的访问处理方法及装置 | |
US10091111B2 (en) | Methods and systems for an end-to-end solution to deliver content in a network | |
EP3376740B1 (en) | Method and apparatus for acquiring ip address | |
WO2020232195A1 (en) | Method for midserver facilitation of long-haul transport of telemetry for cloud-based services | |
CN110505074B (zh) | 一种应用模块化集成方法和装置 | |
CN106330994A (zh) | 一种用户消息发布方法及*** | |
CN111190664A (zh) | 一种生成页面的方法和*** | |
EP2719151A2 (en) | Methods and systems for access to real-time full-duplex web communications platforms | |
US11777870B1 (en) | Machine-learning (ML)-based systems and methods for maximizing resource utilization | |
CN115516842A (zh) | 编排代理服务 | |
CN111988319B (zh) | 访问控制方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 210000, 1-5 story, Jinshan building, 8 Shanxi Road, Nanjing, Jiangsu. Applicant after: SUNING GROUP Co.,Ltd. Address before: 210042 Suning Headquarters, No. 1 Suning Avenue, Xuanwu District, Nanjing City, Jiangsu Province Applicant before: SUNING COMMERCE GROUP Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |