CN114979105B - 通过ssl负载均衡设备自动识别国密和商密业务的方法和装置 - Google Patents
通过ssl负载均衡设备自动识别国密和商密业务的方法和装置 Download PDFInfo
- Publication number
- CN114979105B CN114979105B CN202210609377.1A CN202210609377A CN114979105B CN 114979105 B CN114979105 B CN 114979105B CN 202210609377 A CN202210609377 A CN 202210609377A CN 114979105 B CN114979105 B CN 114979105B
- Authority
- CN
- China
- Prior art keywords
- ssl
- message
- client
- national
- load balancing
- 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
Images
Classifications
-
- 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
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
Abstract
本公开涉及一种通过SSL负载均衡设备自动识别国密和商密业务的方法和装置,该方法包括:在虚拟服务中配置国密SSL卸载策略、商密SSL卸载策略和负载均衡策略;接收并解析客户端的SSL请求的报文;当判断所述报文为client hello报文时,获取所述client hello报文的SSL协议版本类型;当判断所述SSL协议版本类型为国密SSL报文时,自动对所述客户端的SSL请求实施所述国密SSL卸载策略进行SSL卸载,以及当判断所述SSL协议版本类型为商密SSL报文时,自动对所述客户端的SSL请求实施所述商密SSL卸载策略进行SSL卸载;对所述客户端的SSL请求进行SSL卸载后获得的HTTP报文实施所述负载均衡策略进行负载均衡;将所述HTTP报文向针对所述HTTP报文进行负载均衡后所指定的真实服务器转发以实现负载均衡。
Description
技术领域
本公开涉及网络安全技术领域,具体而言,涉及一种通过SSL负载均衡设备自动识别国密和商密业务的方法和装置。
背景技术
SSL(Secure Sockets Layer,安全套接字协议)及其继任者TLS(Transport LayerSecurity,传输层安全协议)是为网络通信提供安全及数据完整性的安全协议,其目的是为互联网通信提供安全及数据完整性保障。网景公司(Netscape)在1994年推出首版网页浏览器网景导航者时,推出HTTPS协议,以SSL进行加密,这是SSL的起源。
借助SSL加密机制,使得涉及敏感信息的互联网服务可利用数据传输加密来增强其安全性,例如电子商务、账单支付、纳税申报、股票与证券交易等线上业务纷纷得以通过互联网实现安全交付。然而,SSL的联机加密运算不可避免会消耗服务器的处理性能,在相同的硬件性能下,处理SSL加密数据所消耗的时间是处理明文数据的5倍。一台服务器启用SSL加密之后,其性能往往只达到原来的20%,其余80%的计算性能都消耗在了SSL的加密运算方面。与日俱增的SSL通信量,将会给网络服务器带来严重的负担。
在这种情况下,可以将SSL加解密由负载均衡设备来完成。具体而言,客户端到负载均衡设备之间的数据传输采用SSL加密处理,负载均衡设备到后端服务器之间的数据则使用明文传输。由于将在服务器上的证书加解密的功能迁移到了负载均衡设备上,大大降低了服务器的资源消耗。
负载均衡设备部署在企业网络中,当客户端用户通过负载均衡设备访问服务器资源时,需要为商密的客户端请求配置一条提供商密SSL卸载的策略,为使用国密的客户端配置一条提供国密的SSL卸载策略,从而保证商密和国密的客户端均可以通过负载均衡设备完成SSL卸载后,正常访问到服务器资源。
由于现有方案中,负载均衡设备的一个虚拟服务只能同时提供国密或者商密的SSL卸载,若客户端中既有基于国密协议的又有商密协议的,这种情况下一个虚服务就不能同时和这两种客户端协商,这时候就需要配置一个支持国密的虚拟服务和一个支持商密的虚拟服务。在实际使用中,若客户端既有国密浏览器又有普通浏览器,需要访问不同的虚拟服务VIP。在这种背景下,需要负载均衡的一个虚拟服务自动识别商密和国密,进行SSL卸载。直观上的效果就是,无论国密或者商密的客户端均可以通过一个虚拟服务VIP访问后台服务器。
因此,需要一种无论国密客户端或者商密客户端均可只通过一个虚拟服务VIP访问后台服务器的通过SSL负载均衡设备自动识别国密和商密业务的方法和装置。
发明内容
有鉴于此,本公开提供一种通过SSL负载均衡设备自动识别国密和商密业务的方法和装置。根据本公开的一方面,提出一种通过SSL负载均衡设备自动识别国密和商密业务的方法,该方法包括:在虚拟服务中配置国密SSL卸载策略、商密SSL卸载策略和负载均衡策略;接收并解析客户端的SSL请求的报文;当判断所述报文为client hello报文时,获取所述client hello报文的SSL协议版本类型;当判断所述SSL协议版本类型为国密SSL报文时,自动对所述客户端的SSL请求实施所述国密SSL卸载策略进行SSL卸载,以及当判断所述SSL协议版本类型为商密SSL报文时,自动对所述客户端的SSL请求实施所述商密SSL卸载策略进行SSL卸载;对所述客户端的SSL请求进行SSL卸载后获得的HTTP报文实施所述负载均衡策略进行负载均衡;将所述HTTP报文向针对所述HTTP报文进行负载均衡后所指定的真实服务器转发以实现负载均衡。
根据本公开的通过SSL负载均衡设备自动识别国密和商密业务的方法,其中,所述国密SSL卸载策略包括针对国密SSL报文的国密协商、国密握手以及指定国密加密套件和与所述国际加密套件对应的国密证书;所述商密SSL卸载策略包括针对商密SSL报文的商密协商、商密握手以及指定商密加密套件和与所述商密加密套件对应的商密证书。
根据本公开的通过SSL负载均衡设备自动识别国密和商密业务的方法,其中,当判断所述报文为client hello报文时,获取所述client hello报文的第5和第6字节;当所述client hello报文的第5和第6字节为十六进制的0101时,判断所述client hello报文的SSL协议版本类型为国密SSL。
根据本公开的通过SSL负载均衡设备自动识别国密和商密业务的方法,其中,当判断所述报文为client hello报文时,获取所述client hello报文的第5和第6字节;当所述client hello报文的第5和第6字节为十六进制的0301时,判断所述client hello报文的SSL协议版本类型为商密TSL1.1;当所述client hello报文的第5和第6字节为十六进制的0302时,判断所述client hello报文的SSL协议版本类型为商密TSL1.2;当所述clienthello报文的第5和第6字节为十六进制的0303时,判断所述client hello报文的SSL协议版本类型为商密TSL1.3。
根据本公开的通过SSL负载均衡设备自动识别国密和商密业务的方法,其还包括:当判断所述报文为client hello报文时,获取所述client hello报文的第1字节并且当所述所述client hello报文的第1字节为十六进制的01时,或获取所述client hello报文的第5和第6字节并且当所述所述client hello报文的第5和第6字节不等于十六进制的0301、0302或0303时,向客户端回复RST报文并断开与客户端的连接。
根据本公开的另一方面,提出一种自动识别国密和商密业务的SSL负载均衡装置,该装置包括:策略配置组件,用于在所述虚拟服务中配置国密SSL卸载策略、商密SSL卸载策略和负载均衡策略;SSL请求报文接收及解析组件,接收并解析客户端发送的SSL请求的报文;SSL协议版本类型获取组件,用于当判断报文为client hello报文时,获取所述clienthello报文的SSL协议版本类型;SSL卸载组件,用于当判断所述SSL协议版本类型为国密SSL报文时,自动对所述客户端的SSL请求实施所述国密SSL卸载策略进行SSL卸载,以及当判断所述SSL协议版本类型为商密SSL报文时,自动对所述客户端的SSL请求实施所述商密SSL卸载策略进行SSL卸载;负载均衡组件,用于对客户端的SSL请求进行SSL卸载后获得的HTTP报文实施所述负载均衡策略进行负载均衡;报文转发组件,用于将所述HTTP报文向针对所述HTTP报文进行负载均衡后所指定的真实服务器转发以实现负载均衡。
根据本公开的通过SSL负载均衡设备自动识别国密和商密业务的装置,其中,所述国密SSL卸载策略包括针对国密SSL报文的国密协商、国密握手以及指定国密加密套件和与所述国际加密套件对应的国密证书;所述商密SSL卸载策略包括针对商密SSL报文的商密协商、商密握手以及指定商密加密套件和与所述商密加密套件对应的商密证书。
根据本公开的通过SSL负载均衡设备自动识别国密和商密业务的装置,其中所述SSL协议版本类型获取组件还用于:当判断所述报文为client hello报文时,获取所述client hello报文的第5和第6字节;当所述所述client hello报文的第5和第6字节为十六进制的0101时,判断所述client hello报文的SSL协议版本类型为国密SSL。
根据本公开的通过SSL负载均衡设备自动识别国密和商密业务的装置,其中,所述SSL协议版本类型获取组件还用于:当判断所述报文为client hello报文时,获取所述client hello报文的第5和第6字节;当所述client hello报文的第5和第6字节为十六进制的0301时,判断所述client hello报文的SSL协议版本类型为商密TSL1.1;当所述clienthello报文的第5和第6字节为十六进制的0302时,判断所述client hello报文的SSL协议版本类型为商密TSL1.2;当所述client hello报文的第5和第6字节为十六进制的0303时,判断所述client hello报文的SSL协议版本类型为商密TSL1.3。
根据本公开的通过SSL负载均衡设备自动识别国密和商密业务的装置,其还包括异常终止组件:用于当判断所述报文为client hello报文时,获取所述client hello报文的第1字节并且当所述所述client hello报文的第1字节为十六进制的01时,或获取所述client hello报文的第5和第6字节并且当所述所述client hello报文的第5和第6字节不等于十六进制的0301、0302或0303时,向客户端回复RST报文并断开与客户端的连接。
综上,采用本公开的通过SSL负载均衡设备自动识别国密和商密业务的方法和装置,可以使负载均衡设备自动识别国密SSL和商密SSL,以通过一个虚拟服务VIP就可以同时支持国密和商密SSL卸载。具体而言,客户端发送的SSL请求到负载均衡设备后,匹配了虚拟服务,设备根据客户端请求中的协议字段自动识别为国密SSL请求或者商密SSL请求,与客户端进行相应的国密SSL协商或者商密SSL协商,实现客户端通过一个虚拟服务VIP根据需求通过国密SSL卸载或者商密SSL卸载后对后端服务器的正常访问,避免了国密客户端和商密客户端需访问不同的虚拟服务IP来访问服务器资源的问题。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。
附图说明
通过参照附图详细描述其示例实施例,本申请的上述和其它目标、特征及优点将变得更加显而易见。下面描述的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1所示的是根据本公开实施例的通过SSL负载均衡设备自动识别国密和商密业务的方法的流程示意图。
图2所示的是根据本公开实施例的通过SSL负载均衡设备自动识别国密和商密业务的方法的展开流程示意图。
图3所示的是根据本公开实施例的通过SSL负载均衡设备自动识别国密和商密业务的装置的原理示意图。
具体实施方式
现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本公开将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、***、实现或者操作以避免模糊本公开的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
本领域技术人员可以理解,附图只是示例实施例的示意图,附图中的模块或流程并不一定是实施本公开所必须的,因此不能用于限制本公开的保护范围。
根据本公开实施例的通过SSL负载均衡设备自动识别国密和商密业务的方法和装置,负载均衡设备收到客户端发来的SSL请求后,首先判断client hello的类型,根据client hello的类型来进入国密或者商密的协商的流程来进行SSL卸载,SSL卸载完成后将数据轮询到不同的服务器上。
图1所示的是根据本公开实施例的通过SSL负载均衡设备自动识别国密和商密业务的方法的流程示意图。
如图1所示,在步骤S102中,在虚拟服务中配置国密SSL卸载策略、商密SSL卸载策略和负载均衡策略;
在步骤S104中,接收并解析客户端的SSL请求的报文。
在步骤S106中,当判断所述报文为client hello报文时,获取所述client hello报文的SSL协议版本类型。
在步骤S108中,当判断所述SSL协议版本类型为国密SSL报文时,自动对所述客户端的SSL请求实施所述国密SSL卸载策略进行SSL卸载,以及当判断所述SSL协议版本类型为商密SSL报文时,自动对所述客户端的SSL请求实施所述商密SSL卸载策略进行SSL卸载。
在步骤S110中,对所述客户端的SSL请求进行SSL卸载后获得的HTTP报文实施所述负载均衡策略进行负载均衡。
在步骤S112中,将所述HTTP报文向针对所述HTTP报文进行负载均衡后所指定的真实服务器转发以实现负载均衡。
根据本公开实施例的通过SSL负载均衡设备自动识别国密和商密业务的方法,其中,所述国密SSL卸载策略包括针对国密SSL报文的国密协商、国密握手以及指定国密加密套件和与所述国际加密套件对应的国密证书;所述商密SSL卸载策略包括针对商密SSL报文的商密协商、商密握手以及指定商密加密套件和与所述商密加密套件对应的商密证书。
根据本公开实施例的通过SSL负载均衡设备自动识别国密和商密业务的方法,其中,当判断所述报文为client hello报文时,获取所述client hello报文的第5和第6字节;当所述client hello报文的第5和第6字节为十六进制的0101时,判断所述client hello报文的SSL协议版本类型为国密SSL。
根据本公开实施例的通过SSL负载均衡设备自动识别国密和商密业务的方法,其中,当判断所述报文为client hello报文时,获取所述client hello报文的第5和第6字节;当所述client hello报文的第5和第6字节为十六进制的0301时,判断所述client hello报文的SSL协议版本类型为商密TSL1.1;当所述client hello报文的第5和第6字节为十六进制的0302时,判断所述client hello报文的SSL协议版本类型为商密TSL1.2;当所述clienthello报文的第5和第6字节为十六进制的0303时,判断所述client hello报文的SSL协议版本类型为商密TSL1.3。
根据本公开实施例的通过SSL负载均衡设备自动识别国密和商密业务的方法,其还包括:当判断所述报文为client hello报文时,获取所述client hello报文的第1字节并且当所述所述client hello报文的第1字节为十六进制的01时,或获取所述client hello报文的第5和第6字节并且当所述client hello报文的第5和第6字节不等于十六进制的0301、0302或0303时,向客户端回复RST报文并断开与客户端的连接。
更具体的,首先负载均衡设备上新建如下配置:
S1.配置真实服务器server1和真实服务器server2,该真实服务器server1和该真实服务器server2分别承担不同类型的服务;
S2.配置真实服务组,引用步骤S1中配置的两台真实服务器,设置负载均衡调度算法为轮询调度算法;
S3.配置虚拟服务的IP和端口,模式为七层,协议选择TCP协议,缺省实服务组为步骤S2中配置的真实服务组;
S4.配置一条如下的SSL卸载策略:
名称:SSL卸载策略1
证书类型:同时配置国密证书和RSA证书
加密套件:勾选ECC-SM4-SM3和TLS_RSA_WITH_AES_256_CBC_SHA
虚拟服务引用步骤S4中配置的字节SSL卸载策略1,启用虚拟服务,点击提交按钮。
需要说明的是上述步骤是配置针对国密SSL请求的SSL卸载策略,在配置针对商密SSL请求的SSL卸载策略时配置与商密SSL卸载相对应的加解密套件和相关证书,在此不做赘述。
在开启虚拟服务后,负载均衡设备在接收客户端发送的请求报文后对其进行解析。根据本公开实施例的通过SSL负载均衡设备自动识别国密和商密业务的方法,客户端发送的报文中的client hello中十六进制数据如下:
01 00 00 59 01 01......
首先,第一个字节01表示client hello,00 00 5d表示client hello长度为89,0101表示GMSSL,设备接收到client hello报文,解析出来client hello中第5字节和第6字节为01 01,则匹配国密协商流程,进行国密握手,设备选择国密加密套件及对应的国密证书。
01 00 00 59 03 03(或03 02或03 01)......
03 01或03 02或03 03分别表示TLS1.1,TLS1.2,TLS1.3,设备接收到clienthello报文,解析出来client hello中第5字节和第6字节为03 03(或03 02或03 01),则匹配商密协商流程,进行商密握手,设备选择商密加密套件及对应的商密证书。
若设备收到的报文非client hello报文,即第一个非01;或者收到了clienthello但第5字节和第6字节非上述值,即为不支持SSL协议版本,这种情况下,设备直接向客户端回复RST报文并断开该连接。
图2所示的是根据本公开实施例的通过SSL负载均衡设备自动识别国密和商密业务的方法的展开流程示意图。
如图2所示,在步骤S202中,接收客户端请求。
在步骤S204中,判断是否所述客户端请求为SSL请求。
在步骤S204中判断是否所述客户端请求为SSL请求的结果为“是”时进入步骤S206。在步骤S206中,判断是否所述SSL请求为过国密SSL请求。
在步骤S206中判断是否所述SSL请求为过国密SSL请求的结果为“是”时进入步骤S208。在步骤S208中,进行针对国密SSL请求的SSL卸载。在步骤S210中,负载均衡到应用服务器1。需要说明的是,将对所述国密SSL请求进行卸载后所获得的数据负载到应用服务器1是基于负载均衡设备当前配置的负载均衡策略指定的一种负载均衡结果,将对所述国密SSL请求进行卸载后所获得的数据负载到应用服务器2也是有可能的。
在步骤S206中判断是否所述SSL请求为过国密SSL请求的结果为“否”时进入步骤S212。在步骤S212中,进行针对商密SSL请求的SSL卸载。在步骤S214中,负载均衡到应用服务器2。同理,将对所述商密SSL请求进行卸载后所获得的数据负载到应用服务器1也是有可能的。
在步骤S204中判断是否所述客户端请求为SSL请求的结果为“否”时进入步骤S216。在步骤S216中,断开与客户端的连接。
图3所示的是根据本公开实施例的通过SSL负载均衡设备自动识别国密和商密业务的装置的原理示意图。
如图3所示,该装置包括:策略配置组件302,用于在所述虚拟服务中配置国密SSL卸载策略、商密SSL卸载策略和负载均衡策略;SSL请求报文接收及解析组件304,接收并解析客户端发送的SSL请求的报文;SSL协议版本类型获取组件306,用于当判断报文为clienthello报文时,获取所述client hello报文的SSL协议版本类型;SSL卸载组件308,用于当判断所述SSL协议版本类型为国密SSL报文时,自动对所述客户端的SSL请求实施所述国密SSL卸载策略进行SSL卸载,以及当判断所述SSL协议版本类型为商密SSL报文时,自动对所述客户端的SSL请求实施所述商密SSL卸载策略进行SSL卸载;负载均衡组件310,用于对客户端的SSL请求进行SSL卸载后获得的HTTP报文实施所述负载均衡策略进行负载均衡;报文转发组件312,用于将所述HTTP报文向针对所述HTTP报文进行负载均衡后所指定的真实服务器转发以实现负载均衡。
根据本公开实施例的的通过SSL负载均衡设备自动识别国密和商密业务的装置,其中,所述国密SSL卸载策略包括针对国密SSL报文的国密协商、国密握手以及指定国密加密套件和与所述国际加密套件对应的国密证书;所述商密SSL卸载策略包括针对商密SSL报文的商密协商、商密握手以及指定商密加密套件和与所述商密加密套件对应的商密证书。
根据本公开实施例的通过SSL负载均衡设备自动识别国密和商密业务的装置,其中所述SSL协议版本类型获取组件306还用于:当判断所述报文为client hello报文时,获取所述client hello报文的第5和第6字节;当所述所述client hello报文的第5和第6字节为十六进制的0101时,判断所述client hello报文的SSL协议版本类型为国密SSL。
根据本公开实施例的通过SSL负载均衡设备自动识别国密和商密业务的装置,其中,所述SSL协议版本类型获取组件306还用于:当判断所述报文为client hello报文时,获取所述client hello报文的第5和第6字节;当所述client hello报文的第5和第6字节为十六进制的0301时,判断所述client hello报文的SSL协议版本类型为商密TSL1.1;当所述client hello报文的第5和第6字节为十六进制的0302时,判断所述client hello报文的SSL协议版本类型为商密TSL1.2;当所述client hello报文的第5和第6字节为十六进制的0303时,判断所述client hello报文的SSL协议版本类型为商密TSL1.3。
根据本公开实施例的通过SSL负载均衡设备自动识别国密和商密业务的装置,其还包括异常终止组件314:用于当判断所述报文为client hello报文时,获取所述clienthello报文的第1字节并且当所述所述client hello报文的第1字节为十六进制的01时,或获取所述client hello报文的第5和第6字节并且当所述所述client hello报文的第5和第6字节不等于十六进制的0301、0302或0303时,向客户端回复RST报文并断开与客户端的连接。
综上,采用本公开的通过SSL负载均衡设备自动识别国密和商密业务的方法和装置,可以使负载均衡设备自动识别国密SSL和商密SSL,以通过一个虚拟服务VIP就可以同时支持国密和商密SSL卸载。具体而言,客户端发送的SSL请求到负载均衡设备后,匹配了虚拟服务,设备根据客户端请求中的协议字段自动识别为国密SSL请求或者商密SSL请求,与客户端进行相应的国密SSL协商或者商密SSL协商,实现客户端通过一个虚拟服务VIP根据需求通过国密SSL卸载或者商密SSL卸载后对后端服务器的正常访问,避免了国密客户端和商密客户端需访问不同的虚拟服务IP来访问服务器资源的问题。
总体而言,由于现有方案中,负载均衡设备的一个虚拟服务只能同时提供国密或者商密的SSL卸载,若客户端中既有基于国密协议的又有商密协议的,这种情况下一个虚服务就不能同时和这两种客户端协商,这时候就需要配置一个支持国密的虚拟服务,一个支持商密的虚拟服务,在实际使用中,若客户端既有国密浏览器,又有普通浏览器,需要访问不同的虚拟服务VIP.在这种背景下,需要负载均衡的一个虚拟服务自动识别商密和国密,进行SSL卸载。直观上的效果就是,无论国密或者商密的客户端均可以通过一个虚拟服务VIP访问后台服务器。因此,本公开通过对现有SSL负载均衡的改进,提供了一种自动识别商密和国密业务的SSL负载均衡实现方法,可以根据客户端的SSL请求中的client hello字段自动匹配商密或者国密的流程,使得一个虚拟服务就同时支持商密和国密SSL卸载。概括而言,负载均衡设备收到客户端发来的SSL请求,首先判断client hello的类型,根据clienthello的类型来进入国密或者商密的协商的流程来进行SSL卸载,SSL卸载完成后将数据轮询到不同的服务器上。具体来说,首先,新建配置负载均衡设备,配置真实服务器server1、真实服务器server2,以便分别承担不同类型的服务;还配置真实服务组,引用步骤一的两台真实服务器,调度算法选择轮询调度算法;还配置虚拟服务的IP和端口,模式为七层,协议选择TCP协议,缺省实服务组为步骤二的真实服务组;还配置一条SSL卸载策略,如名称:SSL卸载策略1、证书类型:同时配置国密证书和RSA证书、加密套件:勾选ECC-SM4-SM3和TLS_RSA_WITH_AES_256_CBC_SHA;最后,虚拟服务引用配置的字节SSL卸载策略1,启用虚拟服务,点击提交按钮。客户端client hello中十六进制数据可以为01 00 00 59 0101......,其中第一个字节01表示client hello,00 00 59表示client hello长度为89,0101表示GMSSL,设备接收到client hello报文,解析出来client hello中第5,6字节为0101,则匹配国密协商流程,进行国密握手,设备选择国密加密套件及对应的国密证书。可以为01 00 00 59 03 03(或03 02或03 01)......,其中03 01或03 02或03 03分别表示TLS1.1,TLS1.2,TLS1.3,设备接收到client hello报文,解析出来client hello中第5,6字节为03 03(或03 02或03 01),则匹配商密协商流程,进行商密握手,设备选择商密加密套件及对应的商密证书。若设备收到的报文非client hello报文,即第一个非01,或者收到了client hello但第5,6字节非上述值,即为不支持SSL协议版本,这种情况下,设备直接回RST断开该连接。因此,本公开的通过SSL负载均衡设备自动识别国密和商密业务的方法和装置使得客户端发送的SSL请求到负载均衡设备后,匹配了虚拟服务,设备根据客户端请求中的协议字段自动识别为国密或者商密的请求,与客户端进行国密或者商密的协商,是的客户端可以通过一个虚拟服务VIP根据需求通过国密或者商密的SSL卸载访问后端服务器,由此通过载均衡设备自动识别国密和商密,使得一个虚拟服务VIP就可以同时支持国密和商密SSL卸载。
所述软件产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本申请操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本领域技术人员可以理解上述各模块可以按照实施例的描述分布于装置中,也可以进行相应变化唯一不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本申请实施例的方法。
以上具体地示出和描述了本申请的示例性实施例。应可理解的是,本申请不限于这里描述的详细结构、设置方式或实现方法;相反,本申请意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。
Claims (6)
1.一种通过SSL负载均衡设备自动识别国密和商密业务的方法,包括:
在虚拟服务中配置国密SSL卸载策略、商密SSL卸载策略和负载均衡策略;
接收并解析客户端的SSL请求的报文;
当判断所述报文为client hello报文时,获取所述client hello报文的第5和第6字节,并在所述client hello报文的第5和第6字节为十六进制的0101时,判断所述clienthello报文的SSL协议版本类型为国密SSL,以及在所述client hello报文的第5和第6字节为十六进制的0301时,判断所述client hello报文的SSL协议版本类型为商密TSL1.1,在所述client hello报文的第5和第6字节为十六进制的0302时,判断所述client hello报文的SSL协议版本类型为商密TSL1.2,或者所述client hello报文的第5和第6字节为十六进制的0303时,判断所述client hello报文的SSL协议版本类型为商密TSL1.3;
当判断所述SSL协议版本类型为国密SSL报文时,自动对所述客户端的SSL请求实施所述国密SSL卸载策略进行SSL卸载,以及
当判断所述SSL协议版本类型为商密SSL报文时,自动对所述客户端的SSL请求实施所述商密SSL卸载策略进行SSL卸载;
对所述客户端的SSL请求进行SSL卸载后获得的HTTP报文实施所述负载均衡策略进行负载均衡;
将所述HTTP报文向针对所述HTTP报文进行负载均衡后所指定的真实服务器转发以实现负载均衡。
2.根据权利要求1所述的通过SSL负载均衡设备自动识别国密和商密业务的方法,其中,
所述国密SSL卸载策略包括针对国密SSL报文的国密协商、国密握手以及指定国密加密套件和与国际加密套件对应的国密证书;
所述商密SSL卸载策略包括针对商密SSL报文的商密协商、商密握手以及指定商密加密套件和与所述商密加密套件对应的商密证书。
3.根据权利要求1所述的通过SSL负载均衡设备自动识别国密和商密业务的方法,其还包括:当判断所述报文为client hello报文时,
获取所述client hello报文的第1字节并且当所述client hello报文的第1字节为十六进制的01时,或
获取所述client hello报文的第5和第6字节并且当所述client hello报文的第5和第6字节不等于十六进制的0301、0302或0303时,向客户端回复RST报文并断开与客户端的连接。
4.一种通过SSL负载均衡设备自动识别国密和商密业务的装置,包括:
策略配置组件,用于在虚拟服务中配置国密SSL卸载策略、商密SSL卸载策略和负载均衡策略;
SSL请求报文接收及解析组件,接收并解析客户端发送的SSL请求的报文;
SSL协议版本类型获取组件,用于当判断报文为client hello报文时,获取所述clienthello报文的第5和第6字节,并在所述client hello报文的第5和第6字节为十六进制的0101时,判断所述client hello报文的SSL协议版本类型为国密SSL,以及在所述clienthello报文的第5和第6字节为十六进制的0301时,判断所述client hello报文的SSL协议版本类型为商密TSL1.1,在所述client hello报文的第5和第6字节为十六进制的0302时,判断所述client hello报文的SSL协议版本类型为商密TSL1.2,或者所述client hello报文的第5和第6字节为十六进制的0303时,判断所述client hello报文的SSL协议版本类型为商密TSL1.3;
SSL卸载组件,用于当判断所述SSL协议版本类型为国密SSL报文时,自动对所述客户端的SSL请求实施所述国密SSL卸载策略进行SSL卸载,以及当判断所述SSL协议版本类型为商密SSL报文时,自动对所述客户端的SSL请求实施所述商密SSL卸载策略进行SSL卸载;
负载均衡组件,用于对客户端的SSL请求进行SSL卸载后获得的HTTP报文实施所述负载均衡策略进行负载均衡;
报文转发组件,用于将所述HTTP报文向针对所述HTTP报文进行负载均衡后所指定的真实服务器转发以实现负载均衡。
5.根据权利要求4所述的通过SSL负载均衡设备自动识别国密和商密业务的装置,其中,
所述国密SSL卸载策略包括针对国密SSL报文的国密协商、国密握手以及指定国密加密套件和与国际加密套件对应的国密证书;
所述商密SSL卸载策略包括针对商密SSL报文的商密协商、商密握手以及指定商密加密套件和与所述商密加密套件对应的商密证书。
6.根据权利要求4所述的通过SSL负载均衡设备自动识别国密和商密业务的装置,其还包括异常终止组件:用于当判断所述报文为client hello报文时,
获取所述client hello报文的第1字节并且当所述client hello报文的第1字节为十六进制的01时,或
获取所述client hello报文的第5和第6字节并且当所述client hello报文的第5和第6字节不等于十六进制的0301、0302或0303时,向客户端回复RST报文并断开与客户端的连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210609377.1A CN114979105B (zh) | 2022-05-31 | 2022-05-31 | 通过ssl负载均衡设备自动识别国密和商密业务的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210609377.1A CN114979105B (zh) | 2022-05-31 | 2022-05-31 | 通过ssl负载均衡设备自动识别国密和商密业务的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114979105A CN114979105A (zh) | 2022-08-30 |
CN114979105B true CN114979105B (zh) | 2023-06-27 |
Family
ID=82958673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210609377.1A Active CN114979105B (zh) | 2022-05-31 | 2022-05-31 | 通过ssl负载均衡设备自动识别国密和商密业务的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114979105B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115529186A (zh) * | 2022-09-29 | 2022-12-27 | 中国农业银行股份有限公司 | 基于软负载均衡的ssl证书卸载方法、装置及*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104378374A (zh) * | 2014-11-14 | 2015-02-25 | 国家超级计算深圳中心(深圳云计算中心) | 一种基于安全套接层建立通信的方法及*** |
CN104639534A (zh) * | 2014-12-30 | 2015-05-20 | 北京奇虎科技有限公司 | 网站安全信息的加载方法和浏览器装置 |
CN106101007A (zh) * | 2016-05-24 | 2016-11-09 | 杭州迪普科技有限公司 | 处理报文的方法及装置 |
CN112714053A (zh) * | 2020-12-25 | 2021-04-27 | 北京天融信网络安全技术有限公司 | 通信连接方法及装置 |
CN113572740A (zh) * | 2021-06-30 | 2021-10-29 | 长沙证通云计算有限公司 | 一种基于国密的云管理平台认证加密方法 |
CN114531272A (zh) * | 2022-01-10 | 2022-05-24 | 网宿科技股份有限公司 | 基于国密和国际算法的https请求的处理方法和装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9419942B1 (en) * | 2013-06-05 | 2016-08-16 | Palo Alto Networks, Inc. | Destination domain extraction for secure protocols |
US10567348B2 (en) * | 2017-07-06 | 2020-02-18 | Citrix Systems, Inc. | Method for SSL optimization for an SSL proxy |
-
2022
- 2022-05-31 CN CN202210609377.1A patent/CN114979105B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104378374A (zh) * | 2014-11-14 | 2015-02-25 | 国家超级计算深圳中心(深圳云计算中心) | 一种基于安全套接层建立通信的方法及*** |
CN104639534A (zh) * | 2014-12-30 | 2015-05-20 | 北京奇虎科技有限公司 | 网站安全信息的加载方法和浏览器装置 |
CN106101007A (zh) * | 2016-05-24 | 2016-11-09 | 杭州迪普科技有限公司 | 处理报文的方法及装置 |
CN112714053A (zh) * | 2020-12-25 | 2021-04-27 | 北京天融信网络安全技术有限公司 | 通信连接方法及装置 |
CN113572740A (zh) * | 2021-06-30 | 2021-10-29 | 长沙证通云计算有限公司 | 一种基于国密的云管理平台认证加密方法 |
CN114531272A (zh) * | 2022-01-10 | 2022-05-24 | 网宿科技股份有限公司 | 基于国密和国际算法的https请求的处理方法和装置 |
Non-Patent Citations (1)
Title |
---|
SSL协议应用中安全技术问题探究;陈庆;《信息网络安全》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114979105A (zh) | 2022-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4709721B2 (ja) | 通信サービスのためのサードパーティアクセスゲートウェイ | |
JP4526526B2 (ja) | 通信サービスのためのサードパーティアクセスゲートウェイ | |
EP1730925B1 (en) | Method and apparatus for providing transaction-level security | |
US8621206B2 (en) | Authority-neutral certification for multiple-authority PKI environments | |
CN104618108B (zh) | 安全通信*** | |
CA2598227C (en) | Mapping an encrypted https network packet to a specific url name and other data without decryption outside of a secure web server | |
US9264235B2 (en) | Apparatus, system and method for verifying server certificates | |
EP1766847B1 (en) | Method for generating and verifying an electronic signature | |
US20040249892A1 (en) | Secure header information for multi-content e-mail | |
US20010016907A1 (en) | Security protocol structure in application layer | |
US20060020783A1 (en) | Method, system and service for conducting authenticated business transactions | |
CN110020955B (zh) | 在线医保信息处理方法及装置、服务器和用户终端 | |
CN111369236B (zh) | 一种应用于区块链的数据管理方法和装置 | |
CN108156178A (zh) | 一种ssl/tls数据监控***和方法 | |
CN106101007B (zh) | 处理报文的方法及装置 | |
CN111917825A (zh) | 一种异构***数据交互的方法和装置 | |
US20190166160A1 (en) | Proactive transport layer security identity verification | |
CN114979105B (zh) | 通过ssl负载均衡设备自动识别国密和商密业务的方法和装置 | |
CN114049122A (zh) | 一种业务处理方法和*** | |
CN113438256B (zh) | 一种基于双层ssl的数据传输方法、***和代理服务器 | |
US8281123B2 (en) | Apparatus and method for managing and protecting information during use of semi-trusted interfaces | |
CN114598549B (zh) | 客户ssl证书验证方法及装置 | |
CN115348082A (zh) | 数据脱敏方法、装置、计算机设备和存储介质 | |
CN111049798B (zh) | 一种信息处理方法、装置和计算机可读存储介质 | |
CN114221799A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |