CN114785575B - 一种安全网关及其创建方法、用户访问内部服务的方法、电子设备及存储介质 - Google Patents

一种安全网关及其创建方法、用户访问内部服务的方法、电子设备及存储介质 Download PDF

Info

Publication number
CN114785575B
CN114785575B CN202210363284.5A CN202210363284A CN114785575B CN 114785575 B CN114785575 B CN 114785575B CN 202210363284 A CN202210363284 A CN 202210363284A CN 114785575 B CN114785575 B CN 114785575B
Authority
CN
China
Prior art keywords
user
gateway
server
stealth
browser
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
Application number
CN202210363284.5A
Other languages
English (en)
Other versions
CN114785575A (zh
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.)
Harbin Institute of Technology
CETC 54 Research Institute
Original Assignee
Harbin Institute of Technology
CETC 54 Research Institute
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 Harbin Institute of Technology, CETC 54 Research Institute filed Critical Harbin Institute of Technology
Priority to CN202210363284.5A priority Critical patent/CN114785575B/zh
Publication of CN114785575A publication Critical patent/CN114785575A/zh
Application granted granted Critical
Publication of CN114785575B publication Critical patent/CN114785575B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • 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
    • H04L63/0227Filtering policies
    • H04L63/0263Rule management
    • 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
    • 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/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • 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/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

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)
  • Power Engineering (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提出一种安全网关及其创建方法、用户访问内部服务的方法、电子设备及存储介质,属于访问控制技术领域。包括隐身网关、统一认证中心和应用网关;所述隐身网关用于检测客户端的硬件设备特征合法性;所述统一认证中心用于验证用户身份,确定用户访问的系统;所述应用网关用于为用户提供服务;通过对防火墙动态添加和删除规则,实现对客户的动态授权,在默认情况下不信任任何人员和设备,对用户的每一次访问请求进行评估,只有当用户的信息符合所配置的安全策略时才可对指定用户开放访问权限,实现了边界的动态授权,解决了现有技术中存在的防火墙的边界安全防护能力不足的技术问题。

Description

一种安全网关及其创建方法、用户访问内部服务的方法、电子 设备及存储介质
技术领域
本申请涉及一种安全网关,尤其涉及一种安全网关及其创建方法、用户访问内部服务的方法、电子设备及存储介质,属于访问控制技术领域。
背景技术
针对网络边界的防护,传统的方法是使用网络安全设备,包括防火墙、IDS/IPS等,实现对外部传入连接的访问控制,其缺点在于需要检测传入的数据包,且对边界外部具有一定的暴露面,导致攻击者可能根据边界对外暴露的信息进行漏洞扫描、资产侦查,对资产造成威胁。
此外,来自网络内部的安全威胁同样不可忽视,攻击者可能通过病毒、钓鱼邮件在网络内部潜伏;同时,内部成员的误操作导致一些信息被配置成了对外网开放,对整个网络带来巨大的安全挑战。
发明内容
在下文中给出了关于本发明的简要概述,以便提供关于本发明的某些方面的基本理解。应当理解,这个概述并不是关于本发明的穷举性概述。它并不是意图确定本发明的关键或重要部分,也不是意图限定本发明的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。
鉴于此,为解决现有技术中存在的防火墙的边界安全防护能力不足的技术问题,本发明提供一种安全网关及其创建方法、用户访问内部服务的方法、电子设备及存储介质。
方案一:一种安全网关,其特征在于,包括隐身网关、统一认证中心和应用网关;
所述隐身网关用于检测客户端的硬件设备特征合法性;
所述统一认证中心用于验证用户身份,确定用户访问的系统;
所述应用网关用于为用户提供服务。
方案二:一种创建安全网关的方法,包括以下步骤:
S1.构建隐身网关;
S2.配置统一认证中心。
优选的,所述构建隐身网关的方法具体包括以下步骤:
S11.为iptables防火墙配置默认拒绝策略,丢弃所有传入的数据包;
S12.在端口敲击服务器上安装Fwknop客户端,并开放端口敲击接口,调用所述接口令服务器向网关发送端口敲击包;
S13.在隐身网关安装Fwknop服务端,令iptables的INPUT链的第一条规则为FWKNOP_INPUT链;
S14.在浏览器上安装插件,所述插件添加监听事件,监听到用户访问指定URL,向端口敲击服务器发送端口敲击包。
优选的,所述配置统一认证中心的具体方法是,包括以下步骤:
S21.编写Sa-client处理逻辑,用于处理用户的访问请求;
S22.编写Sa-server处理逻辑,完成用户登录功能;
S23.配置Nginx服务器,作为身份认证与访问控制的基础,并提供Web应用服务;
优选的,所述配置默认拒绝策略的方法具体为,在隐身网关上执行两条命令以在iptables的INPUT链上添加规则;所述规则包括:
第一条规则:允许已建立连接的数据包通过,以避免删除临时准入规则后原来已建立的连接被断开;
第二条规则:拒绝所有传入数据包,使得对外部而言所有端口处于“关闭”状态。
优选的,所述编写Sa-client处理逻辑的具体方法是,Sa-client负责检查用户是否登录,通过判断用户浏览器中是否具有Sa-server网站的cookie,如果用户浏览器中有对应cookie,则从中取出Token并查询Redis以判断此Token是否有效,如果用户浏览器未存储cookie或者Token被判断为无效,则抛出未登录异常。
优选的,所述配置Nginx服务器的具体方法是,为Nginx添加auth_request模块,令该模块指向具备用户登录检查功能的服务器,并在该模块中配置拦截403错误码的处理地址,使得用户登录检查服务器返回403错误时用户浏览器根据该模块的配置跳转到指定的地址进行登录,从而为Nginx提供身份验证功能。
方案三:一种用户访问内部服务的方法,包括以下步骤:
步骤一.用户于浏览器输入目标URL;
步骤二.浏览器插件向端口敲击服务器发送敲击请求;
步骤三.端口敲击服务器根据请求信息,向隐身网关发送端口敲击包,所述隐身网关为权利要求1所述的隐身网关或权利要求2所述构建的隐身网关;
步骤四.隐身网关验证用户认证因素,随后对此用户开放端口;
步骤五.统一认证中心发送302重定向,引导用户进入登录页面登录;
步骤六.用户输入正确的身份信息,统一认证中心引导用户访问对应服务。
方案四:一种电子设备,包括存储器和处理器,存储器存储有计算机程序,所述的处理器执行所述计算机程序时实现方案二所述的一种创建安全网关的方法的步骤。
方案五:一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现方案二所述的一种创建安全网关的方法。
本发明的有益效果如下:本发明通过对防火墙动态添加和删除规则,实现对客户的动态授权;在默认情况下不信任任何人员和设备,对用户的每一次访问请求进行评估,只有当用户的信息符合所配置的安全策略时才可对指定用户开放访问权限,实现了边界的动态授权,解决了现有技术中存在的防火墙的边界安全防护能力不足的技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1安全网关结构连接示意图;
图2客户浏览器安装插件示意图;
图3用户认证流程1示意图;
图4添加临时HTTP(S)准入规则示意图;
图5编写Sa-client处理逻辑示意图;
图6未登录异常示意图;
图7配置Nginx服务器示意图;
图8编写Sa-server处理逻辑示意图;
图9一种用户访问内部服务的方法流程示意图;
图10Sa-server用户登录界面。
具体实施方式
为了使本申请实施例中的技术方案及优点更加清楚明白,以下结合附图对本申请的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本申请的一部分实施例,而不是所有实施例的穷举。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
实施例1、参照图1说明本实施方式,一种安全网关,包括隐身网关、统一认证中心和应用网关;
所述隐身网关用于检测客户端的硬件设备特征合法性;
具体的,本实施例所述隐身网关使用Fwknop实现,以Linux的iptables防火墙为基础;iptables默认情况下只有一条对所有传入的连接全部丢弃的默认规则,通过在默认丢弃规则之前动态添加和删除新的准入规则,实现对用户设备的访问控制。
所述统一认证中心(SSO)用于验证用户身份,确定用户访问的系统;具体的,本实施例所述统一认证中心使用开源Sa-Token框架搭建,该框架采用Java语言编写,需与Redis配合使用,并结合Nginx的auth_basic模块以进行用户身份认证;Sa-Token分为两个部分:Sa-client和Sa-server,其中,Sa-client主要根据用户浏览器cookie是否具有有效的Token来判断用户是否已经登录;Sa-server则主要对用户进行身份验证,验证通过则生成Ticket给用户存储要访问的域名的cookie中。
所述应用网关用于为用户提供服务;
所述应用网关包含Web代理网关、网络隧道网关和API网关;
具体的,Web代理网关对用户提供Web服务,网络隧道网关为用户提供VPN服务,API网关为用户提供API接口服务。
实施例2、参照图2-10说明本实施方式:一种创建安全网关的方法,包括以下步骤:
S1.构建隐身网关,具体包括以下步骤:
S11.为iptables防火墙配置默认拒绝策略,丢弃所有传入的数据包;
所述配置默认拒绝策略的方法具体为,在隐身网关上执行两条命令以在iptables的INPUT链上添加规则;所述规则包括:
第一条规则:允许已建立连接的数据包通过,以避免删除临时准入规则后原来已建立的连接被断开;第二条规则:拒绝所有传入数据包,使得对外部而言所有端口处于“关闭”状态。
S12.在端口敲击服务器上安装Fwknop客户端,并开放“/knock”的Restful API接口,调用所述接口令服务器向网关发送端口敲击包;
S13.在隐身网关安装Fwknop服务端,令iptables的INPUT链的第一条规则为FWKNOP_INPUT链,此链用于记录临时准入规则,由于该链位于INPUT的第一条,因此对于合法用户传入的包会匹配FWKNOP_INPUT链的临时规则,从而被放行;一段时间后临时规则便会被自动删除,服务器恢复对外部的所有端口的“关闭”状态。参照图4的FWKNOP_INPUT链添加了临时HTTP(S)准入规则,仅对IP为111.42.148.120的用户放行。
S14.在浏览器上安装插件,所述插件添加监听事件,监听到用户访问指定URL,向端口敲击服务器发送端口敲击包。
S2.配置统一认证中心,参照图3,包括以下步骤:
S21.编写Sa-client处理逻辑,用于处理用户的访问请求;
Sa-client负责检查用户是否登录,通过判断用户浏览器中是否具有Sa-server网站的cookie,如果用户浏览器中有对应cookie,则从中取出Token并查询Redis以判断此Token是否有效,如果用户浏览器未存储cookie或者Token被判断为无效,则抛出未登录异常,以便后续引导用户进入认证流程完成身份验证。
代码处理逻辑如图5所示,其中的StpUtil.isLogin()(编写接口)以检查用户浏览器是否有Sa-server网站的cookie,若有cookie则取出Token,然后向Redis查询以判断Token是否有效,如果无cookie为空或者Token无效,则判定为“未登录”状态,此时便抛出图6所示的未登录异常;
S22.配置Nginx服务器,作为身份认证与访问控制的基础,具体方法是,为Nginx添加auth_request模块,令该模块指向具备用户登录检查功能的服务器,并在该模块中配置拦截403错误码的处理地址,使得用户登录检查服务器返回403错误时用户浏览器根据该模块的配置跳转到指定的地址进行登录,
具体的,实施过程:在/isLogin配置项中添加“proxy_pass http://jklm23.asia:9001/isLogin”,并添加“error_page 403=@error403”,且“@error403”配置为“retur n302http://center.jklm23.asia:9001/sso/login?back=$scheme://$http_host$request_uri”,形成的配置文件如图7所示,从而为Nginx提供身份验证功能。
在用户未登录时,访问center.jklm23.asia网关(目标网关),经过浏览器扩展发出端口敲击请求后开放了网关的HTTP(S)端口,此时便可访问Nginx服务,由于网站启用了auth_request模块(图9①),所以先访问检查用户是否登录的服务器,如图9②所示,/isLogin是统一认证中心的Sa-client部分,由于用户未登录,Sa-client则抛出异常,根据图7的实现,此时便返回403错误码;Nginx根据403状态码和图9①的配置找到重定向的url(路由地址)(图9③),对应的Sa-client的登录功能,此时Sa-client会引导用户浏览器跳转到Sa-server的登录页面以进行身份验证,用户验证通过后浏览器将再次重定向至auth_request模块配置的服务器以重新判断用户是否具有有效cookie。
S23.编写Sa-server处理逻辑,完成用户登录功能;
Sa-server核心功能是为用户提供登录功能,主要方法是为用户提供登录页面(参照图10),用户在此页面中输入账号和密码,点击“登录”按钮后Sa-server便检查用户提供的信息是否合法,若合法则生成有效cookie存储到用户浏览器中,并令用户浏览器重定向回Sa-client。
参照图8说明Sa-server处理逻辑,令用户浏览器重定向至登录页面(参照图10),以验证用户身份。
用户输入账号密码并登录成功,浏览器再次发生重定向,并携带Ticket码参数,同时将Token存储到用户浏览器;
例如,浏览器将Token存储到本地center.jklm23.asia和jklm23.asia的cookie:http://center.jklm23.asia/sso/login?back=http://center.jklm23.asia&Ticket=xxxx xxxxx;其中back参数为登录成功后要重定向的URL。
Sa-client根据Ticket码从Redis中获取账号id,并登录此账号会话,然后再次重定向至用户要访问的页;
此时Nginx的auth_request模块再次起作用,该模块使用配置的服务器检查用户是否登录,不同的是,此时可以从用户浏览器的cookie中取出有效Token,Sa-client发现用户已经登录,便返回200状态码,不会触发Nginx的重定向。
由于Nginx没有触发重定向,便正常代理内网页面此时用户便可以访问。
访问Sa-server时,发现用户的cookie中包含了有效Token,此时便不会弹出登录页面登录,直接重定向至Sa-client并返回Ticket进行后续的流程,用户便无需输入用户名和密码便可访问其他页面。
实施例3、参照图9说明本实施方式:一种用户访问内部服务的方法,包括以下步骤:
步骤一.用户于浏览器输入目标URL;
步骤二.浏览器插件向端口敲击服务器发送敲击请求;
步骤三.端口敲击服务器根据请求信息,向隐身网关发送端口敲击包;
步骤四.隐身网关验证用户认证因素,随后对此用户开放端口;
步骤五.统一认证中心发送302重定向,引导用户进入登录页面登录;
步骤六.用户输入正确的身份信息,统一认证中心引导用户访问对应服务。
缩略语和关键术语定义:
iptables:防火墙,对Linux系统提供网络数据包的进入和转发进行控制;
Fwknop:单包授权方案,在防火墙上动态添加、删除规则以实现权限的动态控制;
Sa-Token:开源java权限认证框架,提供单点登录、身份认证、访问控制等功能;
Redis:key-value存储系统,一种跨平台的非关系型数据库;
Nginx:HTTP和反向代理web服务器,提供Web服务;
Cookie:保存在客户端的纯文本文件,每一文件与特定的网站相关联;
Token:临时认证,用于验证用户身份的合法性;
Ticket:身份票据,用于验证用户身份的合法性;
INPUT:iptables链,匹配所有目标IP是本机的数据包,根据配置在此链上的规则进行数据包的传入控制;
FWKNOP_INPUT:单包授权输入链,在此链上添加具有有效期的传入规则,超过有效期的规则将被自动清除;
auth_request:Nginx的一个安装模块,实现权限控制拦截;
本发明的实现过程:
通过对防火墙动态添加和删除规则,实现对客户的动态授权。默认情况下防火墙被配置成默认拒绝策略,即会丢弃所有传入的数据包,因此服务器相较于外网用户而言所有端口处于“关闭”状态,从而降低了网络资产的暴露风险。为访问服务器,客户端需要在浏览器上安装定制的插件,此插件在监听到用户访问特定的URL时,会向端口敲击服务器发送请求,由端口敲击服务器向目标服务器发送敲击包,服务器端口敲击守护进程随后向客户端开放部分端口,并结合单点登录技术对用户进行身份认证和访问控制,最大化地减少资产在网络中的暴露面。
本发明的核心关键点:
1.利用iptables的filter表添加默认拒绝所有传入数据包策略实现端口对外网的“隐身”;
2.利用Fwknop和iptables的filter表的第一条规则为FWKNOP_INPUT链实现对指定客户端的临时端口开放,从而最大程度地减少服务器对外网的攻击面,降低暴露风险;
3.利用Sa-Token开源框架实现统一认证中心(SSO),基于Nginx完成用户的身份认证和访问控制;同时,本发明通过上述框架实现了单点登录功能,由于用户浏览器存储了cookie,使得用户仅登录一次便可在访问其他内网系统时无需再次进入登录页面登录。
实施例4、本发明的计算机装置可以是包括有处理器以及存储器等装置,例如包含中央处理器的单片机等。并且,处理器用于执行存储器中存储的计算机程序时实现上述的构建安全网关方法的步骤。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
实施例5、计算机可读存储介质实施例
本发明的计算机可读存储介质可以是被计算机装置的处理器所读取的任何形式的存储介质,包括但不限于非易失性存储器、易失性存储器、铁电存储器等,计算机可读存储介质上存储有计算机程序,当计算机装置的处理器读取并执行存储器中所存储的计算机程序时,可以实现上述的构建安全网关方法的步骤。
所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。

Claims (5)

1.一种安全网关,其特征在于,包括隐身网关、统一认证中心和应用网关;
所述隐身网关用于检测客户端的硬件设备特征合法性;
隐身网关的构建方法:使用Fwknop实现,以Linux的iptables防火墙为基础;iptables默认情况下只有一条对所有传入的连接全部丢弃的默认规则,通过在默认丢弃规则之前动态添加和删除新的准入规则,实现对用户设备的访问控制,具体为:
S11. 为iptables防火墙配置默认拒绝策略,丢弃所有传入的数据包;
配置默认拒绝策略的方法为,在隐身网关上执行两条命令以在iptables的INPUT链上添加规则;所述规则包括:
第一条规则:允许已建立连接的数据包通过,以避免删除临时准入规则后原来已建立的连接被断开;
第二条规则:拒绝所有传入数据包,使得对外部而言所有端口处于“关闭”状态;
S12. 在端口敲击服务器上安装Fwknop客户端,并开放端口敲击接口,调用所述接口令服务器向网关发送端口敲击包;
S13. 在隐身网关安装Fwknop服务端,令iptables的INPUT链的第一条规则为FWKNOP_INPUT链;
S14. 在浏览器上安装插件,所述插件添加监听事件,监听到用户访问指定URL,向端口敲击服务器发送端口敲击包;
所述统一认证中心用于验证用户身份,确定用户访问的系统;
配置统一认证中心的方法是,包括以下步骤:
S21. 编写Sa-client处理逻辑,用于处理用户的访问请求;Sa-client负责检查用户是否登录,通过判断用户浏览器中是否具有Sa-server网站的cookie,如果用户浏览器中有对应cookie,则从中取出Token并查询Redis以判断此Token是否有效,如果用户浏览器未存储cookie或者Token被判断为无效,则抛出未登录异常;
S22. 配置Nginx服务器,作为身份认证与访问控制的基础,并提供Web应用服务;为Nginx添加auth_request模块,令该模块指向具备用户登录检查功能的服务器,并在该模块中配置拦截403错误码的处理地址,使得用户登录检查服务器返回403错误时用户浏览器根据该模块的配置跳转到指定的地址进行登录,从而为Nginx提供身份验证功能;
S23. 编写Sa-server处理逻辑,完成用户登录功能;
Sa-server处理逻辑,令用户浏览器重定向至登录页面,以验证用户身份;用户输入账号密码并登录成功,浏览器再次发生重定向,并携带Ticket码参数,同时将Token存储到用户浏览器;Sa-client根据 Ticket码从Redis中获取账号id,并登录此账号会话,再次重定向至用户要访问的页;此时Nginx的auth_request模块再次起作用,配置的服务器检查用户是否登录,不同的是,此时从用户浏览器的cookie中取出有效Token,Sa-client发现用户已经登录,便返回200状态码,不会触发Nginx的重定向;由于Nginx没有触发重定向,便正常代理内网页面此时用户便可以访问;访问Sa-server时,发现用户的cookie中包含了有效Token,此时,不会弹出登录页面登录,直接重定向至Sa-client并返回Ticket进行后续的流程,用户便无需输入用户名和密码便可访问其他页面;
所述应用网关用于为用户提供服务。
2.一种创建安全网关的方法,其特征在于,包括以下步骤:
S1. 构建隐身网关,具体包括以下步骤:
S11. 为iptables防火墙配置默认拒绝策略,丢弃所有传入的数据包;
配置默认拒绝策略的方法具体为,在隐身网关上执行两条命令以在iptables的INPUT链上添加规则;所述规则包括:
第一条规则:允许已建立连接的数据包通过,以避免删除临时准入规则后原来已建立的连接被断开;
第二条规则:拒绝所有传入数据包,使得对外部而言所有端口处于“关闭”状态;
S12. 在端口敲击服务器上安装Fwknop客户端,并开放端口敲击接口,调用所述接口令服务器向网关发送端口敲击包;
S13. 在隐身网关安装Fwknop服务端,令iptables的INPUT链的第一条规则为FWKNOP_INPUT链;
S14. 在浏览器上安装插件,所述插件添加监听事件,监听到用户访问指定URL,向端口敲击服务器发送端口敲击包;
S2. 配置统一认证中心,包括以下步骤:
S21. 编写Sa-client处理逻辑,用于处理用户的访问请求,具体方法是,Sa-client负责检查用户是否登录,通过判断用户浏览器中是否具有Sa-server网站的cookie,如果用户浏览器中有对应cookie,则从中取出Token并查询Redis以判断此Token是否有效,如果用户浏览器未存储cookie或者Token被判断为无效,则抛出未登录异常;
S22. 配置Nginx服务器,作为身份认证与访问控制的基础,并提供Web应用服务;
S23. 编写Sa-server处理逻辑,完成用户登录功能,具体方法是,为Nginx添加auth_request模块,令该模块指向具备用户登录检查功能的服务器,并在该模块中配置拦截403错误码的处理地址,使得用户登录检查服务器返回403错误时用户浏览器根据该模块的配置跳转到指定的地址进行登录,从而为Nginx提供身份验证功能。
3.一种用户访问内部服务的方法,其特征在于,包括以下步骤:
步骤一. 用户于浏览器输入目标URL;
步骤二. 浏览器插件向端口敲击服务器发送敲击请求;
步骤三. 端口敲击服务器根据请求信息,向隐身网关发送端口敲击包,所述隐身网关为权利要求1所述的隐身网关或权利要求2所述构建的隐身网关;
步骤四. 隐身网关验证用户认证因素,随后对此用户开放端口;
步骤五. 统一认证中心发送302重定向,引导用户进入登录页面登录,所述统一认证中心为权利要求1所述的统一认证中心或权利要求2所述配置统一认证中心;
步骤六.用户输入正确的身份信息,统一认证中心引导用户访问对应服务。
4.一种电子设备,其特征在于,包括存储器和处理器,存储器存储有计算机程序,所述的处理器执行所述计算机程序时实现权利要求2所述的一种创建安全网关的方法的步骤。
5.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求2所述的一种创建安全网关的方法。
CN202210363284.5A 2022-04-07 2022-04-07 一种安全网关及其创建方法、用户访问内部服务的方法、电子设备及存储介质 Active CN114785575B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210363284.5A CN114785575B (zh) 2022-04-07 2022-04-07 一种安全网关及其创建方法、用户访问内部服务的方法、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210363284.5A CN114785575B (zh) 2022-04-07 2022-04-07 一种安全网关及其创建方法、用户访问内部服务的方法、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN114785575A CN114785575A (zh) 2022-07-22
CN114785575B true CN114785575B (zh) 2024-03-15

Family

ID=82427136

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210363284.5A Active CN114785575B (zh) 2022-04-07 2022-04-07 一种安全网关及其创建方法、用户访问内部服务的方法、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN114785575B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104185181A (zh) * 2014-08-20 2014-12-03 成都千牛信息技术有限公司 一种基于iptables的WiFi用户接入控制方法
CN105430000A (zh) * 2015-12-17 2016-03-23 北京华油信通科技有限公司 云计算安全管理系统
CN105871881A (zh) * 2016-05-06 2016-08-17 中国科学技术大学 一种基于Openwrt路由器的Portal认证的方法
CN110881044A (zh) * 2019-12-05 2020-03-13 北京宏达隆和科技有限公司 一种计算机防火墙动态防御安全平台
CN112261067A (zh) * 2020-12-21 2021-01-22 江苏易安联网络技术有限公司 一种多级单包授权的方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104185181A (zh) * 2014-08-20 2014-12-03 成都千牛信息技术有限公司 一种基于iptables的WiFi用户接入控制方法
CN105430000A (zh) * 2015-12-17 2016-03-23 北京华油信通科技有限公司 云计算安全管理系统
CN105871881A (zh) * 2016-05-06 2016-08-17 中国科学技术大学 一种基于Openwrt路由器的Portal认证的方法
CN110881044A (zh) * 2019-12-05 2020-03-13 北京宏达隆和科技有限公司 一种计算机防火墙动态防御安全平台
CN112261067A (zh) * 2020-12-21 2021-01-22 江苏易安联网络技术有限公司 一种多级单包授权的方法及系统

Also Published As

Publication number Publication date
CN114785575A (zh) 2022-07-22

Similar Documents

Publication Publication Date Title
US10382436B2 (en) Network security based on device identifiers and network addresses
Fett et al. The web sso standard openid connect: In-depth formal security analysis and security guidelines
US9912677B2 (en) Evaluating a questionable network communication
US9015090B2 (en) Evaluating a questionable network communication
US7313618B2 (en) Network architecture using firewalls
US9529994B2 (en) Call stack integrity check on client/server systems
AU2002252371B2 (en) Application layer security method and system
US8621604B2 (en) Evaluating a questionable network communication
US7882265B2 (en) Systems and methods for managing messages in an enterprise network
US9021586B2 (en) Apparatus and methods for preventing cross-site request forgery
US20010034847A1 (en) Internet/network security method and system for checking security of a client from a remote facility
CA2921345A1 (en) Evaluating a questionable network communication
AU2002252371A1 (en) Application layer security method and system
CN109067937A (zh) 终端准入控制方法、装置、设备、系统及存储介质
Fett et al. Analyzing the BrowserID SSO system with primary identity providers using an expressive model of the web
Chandra et al. Authentication and authorization mechanism for cloud security
Pashalidis et al. Impostor: A single sign-on system for use from untrusted devices
Rødfoss Comparison of open source network intrusion detection systems
US11095682B1 (en) Mitigating phishing attempts
CN114785575B (zh) 一种安全网关及其创建方法、用户访问内部服务的方法、电子设备及存储介质
Sinha et al. CookieArmor: Safeguarding against cross‐site request forgery and session hijacking
KR101910496B1 (ko) 광역망 인터넷 프로토콜(wan ip) 검증을 통한 네트워크 기반 프록시 설정 탐지 시스템 및 그를 이용한 유해 사이트 접속 차단 방법
Odirichukwu et al. Security concept in Web database development and administration—A review perspective
Luo SSRF vulnerability Attack and Prevention based on PHP
US12003537B2 (en) Mitigating phishing attempts

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