CN116633562A - 一种基于WireGuard的网络零信任安全交互方法及系统 - Google Patents

一种基于WireGuard的网络零信任安全交互方法及系统 Download PDF

Info

Publication number
CN116633562A
CN116633562A CN202310708017.1A CN202310708017A CN116633562A CN 116633562 A CN116633562 A CN 116633562A CN 202310708017 A CN202310708017 A CN 202310708017A CN 116633562 A CN116633562 A CN 116633562A
Authority
CN
China
Prior art keywords
sdp
client
controller
gateway
wireguard
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.)
Pending
Application number
CN202310708017.1A
Other languages
English (en)
Inventor
陈中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN202310708017.1A priority Critical patent/CN116633562A/zh
Publication of CN116633562A publication Critical patent/CN116633562A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3218Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • H04L9/3221Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs interactive zero-knowledge proofs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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/0485Networking architectures for enhanced packet encryption processing, e.g. offloading of IPsec packet processing or efficient security association look-up
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提出了一种基于WireGuard的网络零信任安全交互方法及系统,涉及网络安全领域。该方法包括:Gateway将产生的第一密钥及其他注册信息发送给Controller;接着,Client向所述Controller发起登录请求时,基于第三方的IDP对其进行身份认证,在认证成功后,Controller为Client动态分配一个WireGuard的UDP端口号,Client动态产生一对非对称的第二密钥;最后,基于第一密钥、第二密钥、Client能访问的服务器列表、以及WireGuard的UDP端口号,将可以进行建立WireGuard隧道,用以为Client访问Gateway后面的服务器提供隧道。其能够简化网络零信任安全交互实现过程,并在保证安全交互的同时大幅度提升其传输速率。

Description

一种基于WireGuard的网络零信任安全交互方法及系统
技术领域
本发明涉及网络安全领域,具体而言,涉及一种基于WireGuard的网络零信任安全交互方法及系统。
背景技术
软件定义边界(Software-Defined Perimeter,SDP)是由云安全联盟(CSA)于2013年提出的一种以身份为中心实施对资源访问控制的安全框架,是零信任模型的一种实现方式。
该框架基于美国国防部的“Need-to-Know”模型,每个终端在连接服务器前必须进行验证,确保每台设备都是被允许接入的。其核心思想是通过SDP架构隐藏核心网络资产与设施,使之不直接暴露在互联网下,使得网络资产与设施免受外来安全威胁。
SDP安全模型由3大组件构成,分别是:SDP Client,即SDP客户端软件;SDPGateway,即SDP业务代理网关;SDP Controller,即SDP控制中心。3大组件构成控制平面和数据平面两个平面。如图1所示,SDP客户端和SDP网关之间的连接通过SDP Controller与安全控制信道的交互来管理。该结构使得控制平面能够与数据平面保持分离,以便实现完全可扩展的安全系统。
如图2所示,在SDP建立连接过程中,单包授权技术的工作流程大致是:
a.终端发送SPA包到网关,请求TCP连接;b.如果网关判断SPA合法有效(向Controller进行验证),则允许访问源IP建立TCP连接,随后进行建立mTLS连接所需的双向身份认证;c.终端发起带有独特服务标识的服务连接请求到网关;d.网关代替客户端与业务服务建立连接;e.网关告知客户端连接请求是否成功;f.客户端通过网关与业务服务进行数据消息转发,即正常的业务访问;g.由客户端或者网关发送给对方服务关闭消息,将连接关闭,完成业务访问过程。其中,IH全称为:Initiate Host,即发起请求的主机,这里指SDP-Client;AH全称为:Authentication Host,即认证主机,这里指SDP-Gateway;服务是指SDP-Client最终需要接入的服务器。
即,SDP通过SPA+mTLS方式对业务访问源进行身份校验,从而起到SDP服务端口以及业务端口的隐藏,避免非法用户与SDP网关建立SSL/TLS连接。具体的,在SDP1.0标准中,首先要进行TCP连接,再进行SPA敲门,如此一来会导致端口暴露,从而增加安全风险;而在SDP2.0标准中,将SPA流程放在了第一步进行。这个改变进一步隐藏了SDP-Gateway的端口,使SDP-Gateway免受DoS的攻击,从而更加安全。
由于传统网络安全模型逐渐失效,零信任安全日益成为新时代下的网络安全的新理念、新架构,甚至已经上升为美国国家的网络安全战略。零信任安全只是理念,企业实施零信任安全理念需要依靠技术方案才能将零信任真正落地。除了目前流行的软件定义边界SDP技术方案外,在NIST《零信任架构标准》白皮书中列举了3个技术方案,可以归纳为“SIM”组合:(1)SDP,软件定义边界;(2)IAM,身份权限管理;(3)MSG,微隔离。
从以上国内外业界通用的零信任+SDP的实现方法可以看出,比起传统的安全的架构,零信任框架是安全更可见、可控。但是,其交互过程中存在着较多包的交互,实现较为复杂,从而传输速率较差。因此,如何对其框架进行优化,利用更简单有效的框架进行实现,在保证安全交互的同时提升传输速率是亟需解决的技术问题。
发明内容
本发明的目的在于提供一种基于WireGuard的网络零信任安全交互方法及系统,其能够简化网络零信任安全交互实现过程,并在保证安全交互的同时大幅度提升其传输速率。
本发明是这样实现的:
第一方面,本申请提供一种基于WireGuard的网络零信任安全交互方法,包括以下步骤:
SDP Gateway产生一对非对称的包括第一公钥和第一私钥的第一密钥,并将上述第一公钥、预定的注册信息发送至SDP Controller;SDP Client向上述SDP Controller发起登录请求时,SDP Controller将SDP Client重定向到第三方的IDP进行身份认证;身份认证成功后,SDP Controller为SDP Client动态分配一个WireGuard的UDP端口号,SDPClient动态产生一对非对称的第二密钥,上述第二密钥包括第二公钥和第二私钥,并将第二公钥发送至SDP Controller;SDP Controller将SDP Client能访问的服务器列表、WireGuard的UDP端口号、以及接收的第一公钥,发送至SDP Client;以及SDP Controller将SDP Client能访问的服务器列表、WireGuard的UDP端口号、以及接收的第二公钥,发送至SDP Gateway后,SDP Client和SDP Gateway基于接收的信息建立WireGuard隧道,上述WireGuard隧道用于为SDP Client访问SDP Gateway后面的服务器提供隧道。
进一步的,上述SDP Client和SDP Gateway基于接收的信息建立WireGuard隧道,包括:SDP Client基于第一密钥、第二公钥以及WireGuard的UDP端口号发出建立WireGuard隧道的握手启动包,上述握手启动包同时用作SPA包,用于向SDP Gateway进行认证SDPClient;SDP Gateway回复建立WireGuard隧道的握手响应包,用以建立WireGuard隧道。
进一步的,上述握手启动包同时用作SPA包,用于向SDP Gateway进行认证SDPClient,包括:若SDP Client提供的第一密钥错误,SDP Gateway则通过drop语句处理上述握手启动包。
进一步的,上述SDP Controller将SDP Client重定向到第三方的IDP进行身份认证时包括:认证成功后,上述第三方的IDP通过预先注册的回调Callback函数通知SDPController认证成功的相关信息。
第二方面,本申请提供一种基于WireGuard的网络零信任安全交互系统,其包括:
注册模块,用于SDP Gateway产生一对非对称的包括第一公钥和第一私钥的第一密钥,并将上述第一公钥、预定的注册信息发送至SDP Controller;登录认证模块,用于SDPClient向上述SDP Controller发起登录请求时,SDP Controller将SDP Client重定向到第三方的IDP进行身份认证;动态分配模块,用于身份认证成功后,SDP Controller为SDPClient动态分配一个WireGuard的UDP端口号,SDP Client动态产生一对非对称的第二密钥,上述第二密钥包括第二公钥和第二私钥;隧道建立模块,用于SDP Controller将SDPClient能访问的服务器列表、WireGuard的UDP端口号、以及接收的第一公钥,发送至SDPClient;以及SDP Controller将SDP Client能访问的服务器列表、WireGuard的UDP端口号、以及接收的第二公钥,发送至SDP Gateway后,SDP Client和SDP Gateway基于接收的信息建立WireGuard隧道,上述WireGuard隧道用于为SDP Client访问SDP Gateway后面的服务器提供隧道。
第三方面,本申请提供一种电子设备,包括至少一个处理器、至少一个存储器和数据总线;其中:上述处理器与上述存储器通过上述数据总线完成相互间的通信;上述存储器存储有被上述处理器执行的程序指令,上述处理器调用上述程序指令以执行如上述第一方面中任一项所述的方法。
第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述第一方面中任一项上述的方法。
相对于现有技术,本发明至少具有如下优点或有益效果:
(1)将轻量级的WireGuard应用于零信任解决方案替代传统的重量级的mTLS,使系统的传输速率提高,同时大大减少系统的延时;
(2)将WireGuard的第一个Handshake包兼用于SPA(Single PacketAuthentication),简化了零信任的实现;
(3)每一次用户认证会重新生成新的Client密钥对,提高系统的安全性;
(4)SPA包和WireGuard包的端口是动态生成,进一步降低了系统受到DOS(Denailof Service)攻击的可能性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为现有技术中的SDP框架示意图;
图2为现有技术中的SDP的包交互示意图;
图3为本发明一种基于WireGuard的网络零信任安全交互方法一实施例的流程图;
图4为本发明一实施例的信令图;
图5为本发明一实施例的SDP的包交互示意图;
图6为本发明一种基于WireGuard的网络零信任安全交互系统一实施例的结构框图;
图7为本发明实施例提供的一种电子设备的结构框图。
图标:1、注册模块;2、登录认证模块;3、动态分配模块;4、隧道建立模块;5、处理器;6、存储器;7、数据总线。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的各个实施例及实施例中的各个特征可以相互组合。
实施例1
本申请实施例提供了一种基于WireGuard的网络零信任安全交互方法,其能够简化网络零信任安全交互实现过程,并在保证安全交互的同时大幅度提升其传输速率。
为便于理解,下面对本发明涉及的部分技术术语作简要说明如下:
SPA:全称为Single Packet Authorization,是一种轻量级的安全协议。
重定向(Redirect):通过各种方法将各种网络请求重新定个方向转到其它位置,例如:网页重定向、域名的重定向、路由选择的变化也是对数据报文经由路径的一种重定向。
IDP,身份验证和认证技术,用以通过身份验证和身份认证来确认用户身份和授权状态。
请参阅图3-4,该一种基于WireGuard的网络零信任安全交互方法包括以下步骤:
步骤S101:SDP Gateway产生一对非对称的包括第一公钥和第一私钥的第一密钥,并将上述第一公钥、预定的注册信息发送至SDP Controller。
上述步骤中,在SDP Gateway去SDP Controller上进行注册的时候,此动作仅需要做一次,可以有效的节约交互流程。并且由于每一次用户认证会重新生成新的密钥对,可以提升系统的安全性。
步骤S102:SDP Client向上述SDP Controller发起登录请求时,SDP Controller将SDP Client重定向到第三方的IDP进行身份认证。
终端与资源服务器相互未知,终端预先不知道会访问那些网站,网站不知道会被哪些用户使用终端访问,因此需要一个长久运行的可信第三方建立信任。即在上述步骤中,通过第三方的IDP对SDP Client进行身份认证,可以用以验证连接的合法性。
示例性地,在本发明的一些实施例中,上述SDP Controller将SDP Client重定向到第三方的IDP进行身份认证时包括:认证成功后,上述第三方的IDP通过预先注册的回调Callback函数通知SDP Controller认证成功的相关信息。
Callback函数,即回调函数,是一个通过函数指针调用的函数。如果把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。也即是说,上述步骤中通过Callback函数可以使得SDP Controller了解到SDP Client认证成功的相关信息。
步骤S103:身份认证成功后,SDP Controller为SDP Client动态分配一个WireGuard的UDP端口号,SDP Client动态产生一对非对称的第二密钥,上述第二密钥包括第二公钥和第二私钥,并将第二公钥发送至SDP Controller。
上述步骤中,在分配端口号的时候,采用了动态的WireGuard端口号,这比静态缺省的路由增加了一成安全因素。因为,攻击者不可能预先知道动态产生的端口号,而对此端口实现DOS攻击。其中,DoS是Denial of Service的简称,即拒绝服务,造成DoS的攻击行为被称为DoS攻击。DoS攻击并非入侵主机也不能窃取机器上的资料,它的目的是:耗尽被攻击对象的资源,使其无法提供正常的服务。同时,SDP Client的密钥对(即第二密钥)是每次登录动态产生的,下次登录会使用一对新的密钥,这减少了重复使用相同密钥造成的可破解的可能性。而在现有技术中,是通过使用数字证书措施进行的,密钥会重复使用,直到证书过期,其安全性远小于本发明中的技术方案。
步骤S104:SDP Controller将SDP Client能访问的服务器列表、WireGuard的UDP端口号、以及接收的第一公钥,发送至SDP Client;以及SDP Controller将SDP Client能访问的服务器列表、WireGuard的UDP端口号、以及接收的第二公钥,发送至SDP Gateway后,SDP Client和SDP Gateway基于接收的信息建立WireGuard隧道,上述WireGuard隧道用于为SDP Client访问SDP Gateway后面的服务器提供隧道。
WireGuard是一个安全的网络隧道,在第3层运行,作为Linux的内核虚拟网络接口实现(因此运行效率极高),同时更安全、性能更高且更易于使用。上述步骤中,基于WireGuard进行建立加密隧道,其在加密的安全性上和TLS(传输层安全性协议)是相当的,并且由于本发明中使用了双方的非对称密钥对,等同于mTLS(双向TLS)的双方证书认证。也就是说,在基于SDP Client能访问的服务器列表、WireGuard的UDP端口号、第一公钥、以及第二公钥进行建立WireGuard隧道后,SDP Client将可以通过此隧道进行访问位于SDPGateway后面的Server(服务器)资源,实现业务系统的隐藏,阻止未经认证授权的客户端对业务资源的访问。需要说明的是,WireGuard使用UDP协议传输数据,在不使用的情况下默认不会传输任何UDP数据包,所以比常规VPN省电很多。并且,WireGuard是为嵌入式设备开发的,支持IP地址漫游,也就是网络断开再连,对它不会有影响。
如图5所示,图5为本发明一实施例的SDP的包交互示意图,也就是通过本发明进行简化后的包交互示意图,相对的,在图2中示出了现有技术中的SDP的包交互示意图。从中可以得知,本发明实施例的技术方案中,具有更少的包交互,实现过程更加简单高效。需要说明的是,图5中的验证连接合法性是指SDP Client只能访问SDP Controller发来的服务器资源,而不能访问其他服务器资源。
具体的,在SDP的实现上的通用做法是:首先使用SPA包打开端口,其次使用mTLS来实现双向认证和隧道加密。而mTLS可以使用Tcp或者Udp,使用Udp包时能得到更好的性能和更短的延时。使用mTLS需要SDP Client和SDP Gateway上使用数字证书,系统需要有一套证书的管理体系。以上是国内外业界通用的零信任+SDP的实现方法。比起传统的安全的架构,零信任框架是安全更可见、可控。
而在本发明实施例中是基于零信任+SDP的构架,用另一种WireGuard的技术来替代SPA+mTLS的实现,在保证相同的安全的同时,实现:更少的包交互、更简单的实现和更快的传输速率。具体的,在发明人进行示例性的实测中,基于WireGuard的本发明实现方案,相对于现有技术中的基于TLS的OpenVPN而言,达到了4倍的传输速率,和几乎1/4的网络延迟。
其中,在发明的一些实施例中,上述SDP Client和SDP Gateway基于接收的信息建立WireGuard隧道,包括:
SDP Client基于第一密钥、第二公钥以及WireGuard的UDP端口号发出建立WireGuard隧道的握手启动包,上述握手启动包同时用作SPA包,用于向SDP Gateway进行认证SDP Client;SDP Gateway回复建立WireGuard隧道的握手响应包,用以建立WireGuard隧道。
上述步骤中,在建立WireGuard隧道过程中,SDP Client在获取了第一密钥、第二公钥以及WireGuard的UDP端口号等用于建立WireGuard隧道的所有信息后,将开始发出建立隧道的第一包Handshake Initiation(握手启动包)。这个包也被同时用作SPA包,让SDPGateway认证SDP Client。接着,SDP Gateway回复WireGuard的第二个包HandshakeResponse,至此WireGuard的安全隧道已全部建立,这比使用Tcp的mTLS协议更加轻量,后者一般需要3-4个roundtrip(往返),而此实现方案仅需要一个roundtrip(往返)。其中,由于SPA(Single Packet Authentication)包和WireGuard包的端口是动态生成,进一步降低了系统受到DOS(Denail of Service)攻击的可能性。
在发明的一些实施例中,上述握手启动包同时用作SPA包,用于向SDP Gateway进行认证SDP Client,包括:若SDP Client提供的第一密钥错误,SDP Gateway则通过drop语句处理上述握手启动包。
上述步骤中,通过drop语句可以实现既删除表结构又删除表中的数据,其中drop语句将删除表的结构、被依赖的约束(constrain),触发器(trigger),索引(index);依赖于该表的存储过程/函数将保留,但是变为无效(invalid)状态。即,通过drop语句进行处理可以在保证安全的同时,大幅度提升处理速度。
需要说明的是,在某些实施方式中,在Handshake Initiation(握手启动)的包中,SDP Client并不直接提供第二密钥,而是用第二密钥加密一段信息,SDP Gateway可以用SDP client的公钥来解密从而验证此信息发自SDP client。同理SDP Client可以用第一公钥来验证Handshake Response(握手响应)包确实来自SDP Gateway。如验证失败,SDPclient或SDP gateway都会drop对方的packet(包),隧道就不会建立。
实施例2
请参阅图6,本申请实施例提供了一种基于WireGuard的网络零信任安全交互系统,其包括:
注册模块1,用于SDP Gateway产生一对非对称的包括第一公钥和第一私钥的第一密钥,并将上述第一公钥、预定的注册信息发送至SDP Controller;登录认证模块2,用于SDP Client向上述SDP Controller发起登录请求时,SDP Controller将SDP Client重定向到第三方的IDP进行身份认证;动态分配模块3,用于身份认证成功后,SDP Controller为SDP Client动态分配一个WireGuard的UDP端口号,SDP Client动态产生一对非对称的第二密钥,上述第二密钥包括第二公钥和第二私钥,并将第二公钥发送至SDP Controller;隧道建立模块4,用于SDP Controller将SDP Client能访问的服务器列表、WireGuard的UDP端口号、以及接收的第一公钥,发送至SDP Client;以及SDP Controller将SDP Client能访问的服务器列表、WireGuard的UDP端口号、以及接收的第二公钥,发送至SDP Gateway后,SDPClient和SDP Gateway基于接收的信息建立WireGuard隧道,上述WireGuard隧道用于为SDPClient访问SDP Gateway后面的服务器提供隧道。
上述系统具体实现过程请参照实施例1中提供的一种基于WireGuard的网络零信任安全交互方法,在此不再赘述。
实施例3
请参阅图7,本申请实施例提供了一种电子设备,该电子设备包括至少一个处理器5、至少一个存储器6和数据总线7;其中:处理器5与存储器6通过数据总线7完成相互间的通信;存储器6存储有可被处理器5执行的程序指令,处理器5调用程序指令以执行一种基于WireGuard的网络零信任安全交互方法。例如实现:
SDP Gateway产生一对非对称的包括第一公钥和第一私钥的第一密钥,并将上述第一公钥、预定的注册信息发送至SDP Controller;SDP Client向上述SDP Controller发起登录请求时,SDP Controller将SDP Client重定向到第三方的IDP进行身份认证;身份认证成功后,SDP Controller为SDP Client动态分配一个WireGuard的UDP端口号,SDPClient动态产生一对非对称的第二密钥,上述第二密钥包括第二公钥和第二私钥,并将第二公钥发送至SDP Controller;SDP Controller将SDP Client能访问的服务器列表、WireGuard的UDP端口号、以及接收的第一公钥,发送至SDP Client;以及SDP Controller将SDP Client能访问的服务器列表、WireGuard的UDP端口号、以及接收的第二公钥,发送至SDP Gateway后,SDP Client和SDP Gateway基于接收的信息建立WireGuard隧道,上述WireGuard隧道用于为SDP Client访问SDP Gateway后面的服务器提供隧道。
其中,存储器6可以是但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。
处理器5可以是一种集成电路芯片,具有信号处理能力。该处理器5可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
可以理解,图7所示的结构仅为示意,电子设备还可包括比图7中所示更多或者更少的组件,或者具有与图7所示不同的配置。图7中所示的各组件可以采用硬件、软件或其组合实现。
实施例4
本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器5执行时实现一种基于WireGuard的网络零信任安全交互方法。例如实现:
SDP Gateway产生一对非对称的包括第一公钥和第一私钥的第一密钥,并将上述第一公钥、预定的注册信息发送至SDP Controller;SDP Client向上述SDP Controller发起登录请求时,SDP Controller将SDP Client重定向到第三方的IDP进行身份认证;身份认证成功后,SDP Controller为SDP Client动态分配一个WireGuard的UDP端口号,SDPClient动态产生一对非对称的第二密钥,上述第二密钥包括第二公钥和第二私钥,并将第二公钥发送至SDP Controller;SDP Controller将SDP Client能访问的服务器列表、WireGuard的UDP端口号、以及接收的第一公钥,发送至SDP Client;以及SDP Controller将SDP Client能访问的服务器列表、WireGuard的UDP端口号、以及接收的第二公钥,发送至SDP Gateway后,SDP Client和SDP Gateway基于接收的信息建立WireGuard隧道,上述WireGuard隧道用于为SDP Client访问SDP Gateway后面的服务器提供隧道。
上述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其它的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。

Claims (7)

1.一种基于WireGuard的网络零信任安全交互方法,其特征在于,包括以下步骤:
SDP Gateway产生一对非对称的包括第一公钥和第一私钥的第一密钥,并将所述第一公钥、预定的注册信息发送至SDP Controller;
SDP Client向所述SDP Controller发起登录请求时,SDP Controller将SDP Client重定向到第三方的IDP进行身份认证;
身份认证成功后,SDP Controller为SDP Client动态分配一个WireGuard的UDP端口号,SDP Client动态产生一对非对称的第二密钥,所述第二密钥包括第二公钥和第二私钥,并将第二公钥发送至SDP Controller;
SDP Controller将SDP Client能访问的服务器列表、WireGuard的UDP端口号、以及接收的第一公钥,发送至SDP Client;以及SDP Controller将SDP Client能访问的服务器列表、WireGuard的UDP端口号、以及接收的第二公钥,发送至SDP Gateway后,SDP Client和SDP Gateway基于接收的信息建立WireGuard隧道,所述WireGuard隧道用于为SDP Client访问SDP Gateway后面的服务器提供隧道。
2.如权利要求1所述的一种基于WireGuard的网络零信任安全交互方法,其特征在于,所述SDP Client和SDP Gateway基于接收的信息建立WireGuard隧道,包括:
SDP Client基于第一密钥、第二公钥以及WireGuard的UDP端口号发出建立WireGuard隧道的握手启动包,所述握手启动包同时用作SPA包,用于向SDP Gateway进行认证SDPClient;SDP Gateway回复建立WireGuard隧道的握手响应包,用以建立WireGuard隧道。
3.如权利要求2所述的一种基于WireGuard的网络零信任安全交互方法,其特征在于,所述握手启动包同时用作SPA包,用于向SDP Gateway进行认证SDP Client,包括:
若SDP Client提供的第一密钥错误,SDP Gateway则通过drop语句处理所述握手启动包。
4.如权利要求1所述的一种基于WireGuard的网络零信任安全交互方法,其特征在于,所述SDP Controller将SDP Client重定向到第三方的IDP进行身份认证时包括:
认证成功后,所述第三方的IDP通过预先注册的回调Callback函数通知SDPController认证成功的相关信息。
5.一种基于WireGuard的网络零信任安全交互系统,其特征在于,包括:
注册模块,用于SDP Gateway产生一对非对称的包括第一公钥和第一私钥的第一密钥,并将所述第一公钥、预定的注册信息发送至SDP Controller;
登录认证模块,用于SDP Client向所述SDP Controller发起登录请求时,SDPController将SDP Client重定向到第三方的IDP进行身份认证;
动态分配模块,用于身份认证成功后,SDP Controller为SDP Client动态分配一个WireGuard的UDP端口号,SDP Client动态产生一对非对称的第二密钥,所述第二密钥包括第二公钥和第二私钥,并将第二公钥发送至SDP Controller;
隧道建立模块,用于SDP Controller将SDP Client能访问的服务器列表、WireGuard的UDP端口号、以及接收的第一公钥,发送至SDP Client;以及SDP Controller将SDP Client能访问的服务器列表、WireGuard的UDP端口号、以及接收的第二公钥,发送至SDP Gateway后,SDP Client和SDP Gateway基于接收的信息建立WireGuard隧道,所述WireGuard隧道用于为SDP Client访问SDP Gateway后面的服务器提供隧道。
6.一种电子设备,其特征在于,包括至少一个处理器、至少一个存储器和数据总线;其中:所述处理器与所述存储器通过所述数据总线完成相互间的通信;所述存储器存储有被所述处理器执行的程序指令,所述处理器调用所述程序指令以执行如权利要求1-4任一项所述的方法。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1-4中任一项所述的方法。
CN202310708017.1A 2023-06-14 2023-06-14 一种基于WireGuard的网络零信任安全交互方法及系统 Pending CN116633562A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310708017.1A CN116633562A (zh) 2023-06-14 2023-06-14 一种基于WireGuard的网络零信任安全交互方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310708017.1A CN116633562A (zh) 2023-06-14 2023-06-14 一种基于WireGuard的网络零信任安全交互方法及系统

Publications (1)

Publication Number Publication Date
CN116633562A true CN116633562A (zh) 2023-08-22

Family

ID=87617066

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310708017.1A Pending CN116633562A (zh) 2023-06-14 2023-06-14 一种基于WireGuard的网络零信任安全交互方法及系统

Country Status (1)

Country Link
CN (1) CN116633562A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117201022A (zh) * 2023-09-12 2023-12-08 联通(广东)产业互联网有限公司 基于WireGuard的加密通信网络系统的搭建方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117201022A (zh) * 2023-09-12 2023-12-08 联通(广东)产业互联网有限公司 基于WireGuard的加密通信网络系统的搭建方法
CN117201022B (zh) * 2023-09-12 2024-03-19 联通(广东)产业互联网有限公司 基于WireGuard的加密通信网络系统的搭建方法

Similar Documents

Publication Publication Date Title
US10673861B2 (en) Identity proxy to provide access control and single sign on
CN110870277B (zh) 将中间盒引入到客户端与服务器之间的安全通信中
US10264001B2 (en) Method and system for network resource attack detection using a client identifier
Drucker et al. Selfie: reflections on TLS 1.3 with PSK
US10257171B2 (en) Server public key pinning by URL
JP2023514736A (ja) 安全な通信のための方法及びシステム
US20180375648A1 (en) Systems and methods for data encryption for cloud services
WO2023174143A1 (zh) 数据传输方法、设备、介质及产品
CN115603932A (zh) 一种访问控制方法、访问控制系统及相关设备
WO2023279782A1 (zh) 一种访问控制方法、访问控制系统及相关设备
CN114553480B (zh) 跨域单点登录方法、装置、电子设备及可读存储介质
CN116633562A (zh) 一种基于WireGuard的网络零信任安全交互方法及系统
US11689517B2 (en) Method for distributed application segmentation through authorization
CN113612790B (zh) 基于设备身份预认证的数据安全传输方法及装置
US11784993B2 (en) Cross site request forgery (CSRF) protection for web browsers
CN112087427B (zh) 通信验证方法、电子设备及存储介质
CN106576050B (zh) 三层安全和计算架构
CN115801347A (zh) 一种基于单包授权技术增强网络安全的方法和系统
JP2011054182A (ja) ディジタルバトンを使用するシステムおよび方法、メッセージを認証するためのファイアウォール、装置、および、コンピュータ読み取り可能な媒体
US20200053059A1 (en) Secure Method to Replicate On-Premise Secrets in a Cloud Environment
Maidine et al. Cloud Identity Management Mechanisms and Issues
Azizul et al. Authentication and Authorization Design in Honeybee Computing
CN116846614A (zh) 基于可信计算的mqtt协议消息安全处理方法及系统
CN116760595A (zh) 访问方法、计算设备及计算机存储介质
CN117061140A (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