CN112187747A - 一种远程容器登录方法、装置及电子设备 - Google Patents

一种远程容器登录方法、装置及电子设备 Download PDF

Info

Publication number
CN112187747A
CN112187747A CN202010968889.8A CN202010968889A CN112187747A CN 112187747 A CN112187747 A CN 112187747A CN 202010968889 A CN202010968889 A CN 202010968889A CN 112187747 A CN112187747 A CN 112187747A
Authority
CN
China
Prior art keywords
container
command
target container
user
request
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
CN202010968889.8A
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.)
China Citic Bank Corp Ltd
Original Assignee
China Citic Bank Corp Ltd
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 China Citic Bank Corp Ltd filed Critical China Citic Bank Corp Ltd
Priority to CN202010968889.8A priority Critical patent/CN112187747A/zh
Publication of CN112187747A publication Critical patent/CN112187747A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/14Two-way operation using the same type of signal, i.e. duplex
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种远程容器登录方法、装置及电子设备,该方法包括:检测到用户在前端发送进入目标容器请求,根据容器云平台对容器请求进行认证和鉴权;认证和鉴权成功后,获取进入目标容器的会话ID;根据容器引擎服务器的接口与目标容器建立通信连接;在通信连接中对命令进行检查,当检查到命令为危险命令时,且满足拦截操作条件,则对危险命令进行拦截。本发明实施例中用户或者管理员可以通过网页终端灵活的调试运行在容器内部的应用,而无需登录容器所在宿主机执行docker exec或者通过kubectl exec命令进入容器内部,可提供危险命令预警并邮件通知容器云平台用户和管理员,为企业应用的安全运维提供保障。

Description

一种远程容器登录方法、装置及电子设备
技术领域
本发明涉及计算机技术领域,尤其涉及一种远程容器登录方法、装置及电子设备。
背景技术
随着云原生领域的发展,越来越多的企业会选择将应用及其依赖环境打包到可移植的容器镜像里面,容器镜像的最大创新在于包含了一个应用所需的完整环境,即整个操作***的文件***,具有一致性、轻量级、可移植、语言无关的特性,可以实现”一次构建,随处运行”。而Kubernetes作为云原生时代的Linux,用于自动部署,扩展和管理容器化应用程序的容器编排调度***,使得容器应用进入大规模工业生产。进而催生出基于Kubernetes技术的容器云平台大规模落地,而面对上万甚至上百万个容器的运维和调试,采用传统的方式,即通过命令docker exec或者kubectl exec的方式进入容器,并在容器内部执行调试命令,需要先找到目标容器所在宿主机地址,然后找到容器标识ID,最后通过命令进入容器,这种方式很繁琐,且安全性不高。现有技术中有针对上述问题提出方法,即通过容器平台的网页终端的方式,通过访问docker或者kubernetes的websockt接口进入容器。这种方式简化了用户登录目标容器的操作,提升了工作效率,但是没有对用户输入命令进行记录和审计,当用户输入命令为危险命令时,可能会造成***崩溃。
因此,现有技术还有待于改进和发展。
发明内容
鉴于上述现有技术的不足,本发明的目的在于提供一种远程容器登录方法、装置及电子设备,旨在解决现有技术中现有技术中在登录容器时无法对用户输入命令进行记录和审计,当用户输入命令为危险命令时,可能会造成***崩溃的技术问题。
本发明的技术方案如下:
一种远程容器登录方法,所述方法包括:
检测到用户在前端发送进入目标容器请求,根据容器云平台对容器请求进行认证和鉴权;
认证和鉴权成功后,获取进入目标容器的会话ID;根据容器引擎服务器的接口与目标容器建立通信连接;
在通信连接中对命令进行检查,当检查到命令为危险命令时,且满足拦截操作条件,则对危险命令进行拦截。
进一步地,所述认证和鉴权成功后,获取进入目标容器的会话ID;根据容器引擎服务器的接口与目标容器建立通信连接后,还包括:
记录用户输入的命令,将所述命令存储到数据库中。
进一步优选地,所述认证和鉴权成功后,获取进入目标容器的会话ID;根据容器引擎服务器的接口与目标容器建立通信连接后,还包括:
接收前端与目标容器的输入与输出数据,将所述输入与输出数据写入脚本定时输出文件和脚本终端输出文件。
进一步优选地,所述检测到用户在前端发送进入目标容器请求,根据容器云平台对容器请求进行认证和鉴权,包括:
检测到用户在前端发送目标容器请求,所述目标容器请求包括目标容器引擎服务器的认证信息、用户信息以及目标容器信息;
根据容器云平台对目标容器引擎服务器的认证信息、用户信息以及目标容器信息进行认证和鉴权。
优选地,所述认证和鉴权成功后,获取进入目标容器的会话ID;根据容器引擎服务器的接口与目标容器建立通信连接,包括:
认证和鉴权成功后,获取进入目标容器的会话ID;根据Kubernetes提供的WebSocket接口与目标容器建立全双工通信连接。
进一步地,所述检测到用户在前端发送进入目标容器请求,根据容器云平台对容器请求进行认证和鉴权前,包括:
预先对危险命令列表进行设置。
则在通信连接中对命令进行检查,当检查到命令为危险命令时,且满足拦截操作条件,则对危险命令进行拦截,包括:
在通信连接中对命令进行检查,若检查到命令在危险命令列表中,则对危险命令进行拦截,并通过邮件发送给管理员。
进一步地,所述检测到用户在前端发送进入目标容器请求,根据容器云平台对容器请求进行认证和鉴权前,还包括:
预先对特殊字符列表进行设置;
则记录用户输入的命令,将所述命令存储到数据库中,包括:
获取用户输入的命令,判断用户输入的命令是否在特殊字符列表中;
若用户输入的命令在特殊字符列表中,则不存储命令;
若用户输入的命令不在特殊字符列表中,则将所述命令存储到数据库中。
本发明的另一实施例提供了一种远程容器登录装置,包括:
认证和鉴权模块,用于检测到用户在前端发送进入目标容器请求,根据容器云平台对容器请求进行认证和鉴权;
通信连接建立模块,用于认证和鉴权成功后,获取进入目标容器的会话ID;根据容器引擎服务器的接口与目标容器建立通信连接;
危险命令拦截模块,用于在通信连接中对命令进行检查,当检查到命令为危险命令时,且满足拦截操作条件,则对危险命令进行拦截。
本发明的另一实施例提供了一种电子设备,其特征在于,包括处理器和存储器;
所述存储器,用于存储操作指令;
所述处理器,用于通过调用所述操作指令,执行上述任一项所述的远程容器登录方法。
本发明的另一实施例还提供了一种非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储有计算机程序,该计算机程序令被处理器执行时实现上述任一项所述的远程容器登录方法。
有益效果:本发明实施例中用户或者管理员可以通过网页终端灵活的调试运行在容器内部的应用,而无需登录容器所在宿主机执行docker exec或者通过kubectl exec命令进入容器内部,可提供危险命令预警并邮件通知容器云平台用户和管理员,为企业应用的安全运维提供保障。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1为本发明一种远程容器登录方法较佳实施例的流程图;
图2为本发明一种远程容器登录方法的较佳实施例的危险命令列表的示意图;
图3为本发明一种远程容器登录方法的较佳实施例的特殊字符列表的示意图;
图4为本发明一种远程容器登录装置的较佳实施例的结构示意图;
图5为本发明一种电子设备的较佳实施例的结构示意图。
具体实施方式
为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。以下结合附图对本发明实施例进行介绍。
本发明实施例提供了一种远程容器登录方法。请参阅图1,图1为本发明一种远程容器登录方法较佳实施例的流程图。如图1所示,其包括步骤:
步骤S100、检测到用户在前端发送进入目标容器请求,根据容器云平台对容器请求进行认证和鉴权;
步骤S200、认证和鉴权成功后,获取进入目标容器的会话ID;根据容器引擎服务器的接口与目标容器建立通信连接;
步骤S300、在通信连接中对命令进行检查,当检查到命令为危险命令时,且满足拦截操作条件,则对危险命令进行拦截。
具体实施时,堡垒机,也称跳板机,是一类可作为跳板批量操作远程设备的网络设备,一般通过ssh协议实现远程管理。为了保证操作的安全性,堡垒机一般需要支持用户认证和权限管理,即一方面验证用户身份(比如与LDAP、SSO集成),另一方面管理用户能以什么权限登录哪些远程设备。本发明实施例容器引擎服务器为Kubernetes,为了在容器云平台上实现”堡垒机”功能。
本发明实施例提出了一种基于Kubernetes技术的容器进入与审计方法,应用于基于Kubernetes技术的容器云平台中实现远程进入容器和审计用户输入命令的方法。主要根据Kubernetes提供的接口,实现一种通过远程网页终端远程进入容器,支持Linux命令审计。通过该方法用户或者管理员可以通过Web Terminal(网页终端)灵活的调试运行在容器内部的应用,而无需登录容器所在宿主机执行docker exec或者通过kubectl exec命令进入容器内部,可提供危险命令(rm、shutdown、mv等)预警并邮件通知容器云平台用户和管理员。
本发明实施例结合容器云平台的安全性,提供用户远端进入容器的认证和授权,保证***安全;提供危险命令预警,以便及时拦截和处理危险命令,防患于未然。
进一步地,认证和鉴权成功后,获取进入目标容器的会话ID;根据容器引擎服务器的接口与目标容器建立通信连接后,还包括:
记录用户输入的命令,将所述命令存储到数据库中。
具体实施时,建立会话的同时会创建缓存来保存用户输入的命令,当遇到回车字符CR时会调用saveCommand进行存储,过程中会需要忽略掉上下箭头,然后清空。缓存过程中会保证命令的合法性,然后保存用户输入的完整命令。
进一步地,认证和鉴权成功后,获取进入目标容器的会话ID;根据容器引擎服务器的接口与目标容器建立通信连接后,还包括:
接收前端与目标容器的输入与输出数据,将所述输入与输出数据写入脚本定时输出文件和脚本终端输出文件。
具体实施时,对于用户完成操作会话的回放功能,会话中也会创建缓存来存储用户前端与容器交互的输入与输出数据。底层原理采用scrpiteplay实现。在用户与容器交互过程中,会在固定目录下根据会话记录的主键ID为每个用户创建会话目录,规则如/cloud/data/sessions/{ID}/,创建脚本定时输出文件timing file和脚本终端输出文件typescript file用来存储会话过程中的操作历史。回放用户会话完整操作历史是通过SessionID和用户信息条件查找记录文件,SessionID为会话ID,利用scriptreplay命令回放用户会话操作。该步骤提供用户输入命令历史回放功能,便于查看用户的完整操作历史。
进一步地,检测到用户在前端发送进入目标容器请求,根据容器云平台对容器请求进行认证和鉴权,包括:
检测到用户在前端发送目标容器请求,所述目标容器请求包括目标容器引擎服务器的认证信息、用户信息以及目标容器信息;
根据容器云平台对目标容器引擎服务器的认证信息、用户信息以及目标容器信息进行认证和鉴权。
具体实施时,容器云平台用户或者管理员,以后统称用户,发起进入目标容器请求,该请求内包含目标Kubernets集群的认证信息、用户信息和目标容器信息等内容;后端服务接收到前端发来的进入容器请求后,会云容器云平台进行认证和授权。
进一步地,认证和鉴权成功后,获取进入目标容器的会话ID;根据容器引擎服务器的接口与目标容器建立通信连接,包括:
认证和鉴权成功后,获取进入目标容器的会话ID;根据Kubernetes提供的WebSocket接口与目标容器建立全双工通信连接。
具体实施时,认证和鉴权成功后,获取进入目标容器的Session ID,并启动一个协程等待建立连接;
后端服务获取到SessionID后,通过Kubernetes APIServer的WebSocket接口与容器建立全双工通信。WebSocket协议是基于TCP(Transmission Control Protocol,传输控制协议)的一种全双工通信协议。WebSocket协议可以实现浏览器和服务器之间的全双工(full-duplex)通信。根据WebSocket协议可以将https或http连接转换为wss连接,该wss连接可以用于实现浏览器和服务器之间的全双工通信。通信过程中,前端与容器的交互原理是用户前端输入字符,容器会响应用户的任何输入,响应中会包含用户输入的回显。
通信过程中会检查命令是否危险,提供预警功能,决定是否拦截并通过邮件通知用户。
进一步地,检测到用户在前端发送进入目标容器请求,根据容器云平台对容器请求进行认证和鉴权前,包括:
预先对危险命令列表进行设置。
则在通信连接中对命令进行检查,当检查到命令为危险命令时,且满足拦截操作条件,则对危险命令进行拦截,包括:
在通信连接中对命令进行检查,若检查到命令在危险命令列表中,且命令在危险命令列表中设置为拦截操作,则对危险命令进行拦截,并通过邮件发送给管理员。
具体实施时,通信过程中会检查命令是否危险,提供预警功能,决定是否拦截并通过邮件通知用户。如图2所示,预先设置一个危险命令列表。危险命令列表中还设置有拦截操作。具体地,当检测到危险命令列表中的危险命令时,获取危险命令列表中设置的操作,若命令对应的操作为拦截操作,则对危险命令进行拦截,并通过邮件发送给管理员;若命令对应的操作为不拦截操作,则不拦截危险命令,并通过邮件发送管理员。
进一步地,检测到用户在前端发送进入目标容器请求,根据容器云平台对容器请求进行认证和鉴权前,还包括:
预先对特殊字符列表进行设置;
则记录用户输入的命令,将所述命令存储到数据库中,包括:
获取用户输入的命令,判断用户输入的命令是否在特殊字符列表中;
若用户输入的命令在特殊字符列表中,则不存储命令;
若用户输入的命令不在特殊字符列表中,则将所述命令存储到数据库中。
具体实施时,通信过程中会开启另外一个协程记录用户输入的命令,并存储到数据库用于命令查询,该过程中会忽略标准输入的特殊字符,防止记录的用户命令有乱码,不利于用户输入的历史命令检索。该步骤提供用户输入命令历史的检索功能,便于后续容器问题复盘和审计。
如图3所示,预先设置一个特殊字符列表。当命令为特殊字符列表中的一种时,不存储命令,防止数据库中存在乱码,为用户检索命令带来隐患。当命令不是特殊字符列表中的一种时,将命令存储到数据库中。
本发明还提供了一种远程容器登录方法的具体实施例,具体实施例中webterminal即网页终端,可采用xterm插件去实现,后端服务逻辑可采用Go语言开发实现。
***可以按照微服务的思想分为三个微服务,分别为提供用户远程进入容器并执行操作的前端服务WebShell;提供处理用户进入容器请求的后端服务,该服务提供用户认证与授权,建立WebShell与目标容器全双工通信,提供命令审计功能:危险预警、特殊字符过滤、记录用户命令和存储用户命令会话文件等功能的ContainerShell服务;提供用户命令检索与用户操作会话回放功能的CommandCheck服务。
三个微服务部署在kubernetes环境里,且ContainerShell和CommandCheck挂载在同一个对象存储或者网络存储目录下,原因是ContainerShell服务记录命令,而CommandCheck提供用户会话回放功能,这两个微服务读写的是同一个目录下的文件。
WebShell微服务可与企业现有的容器云平台合并,本身ContainerShell会暴露标准restful接口供前端使用。
由以上方法实施例可知,本发明实施例提供了一种远程容器登录方法,结合容器云平台的安全性,提供用户远端进入容器的认证和授权,保证***安全。提供用户输入命令历史的的检索功能,便于后续容器问题复盘和审计。提供用户输入命令历史回放功能,便于查看用户的完整操作历史。提供危险命令预警,以便及时拦截和处理危险命令,防患于未然。
需要说明的是,上述各步骤之间并不必然存在一定的先后顺序,本领域普通技术人员,根据本发明实施例的描述可以理解,不同实施例中,上述各步骤可以有不同的执行顺序,亦即,可以并行执行,变可以交换执行等等。
本发明另一实施例提供一种远程容器登录装置,如图4所示,装置1包括:
认证和鉴权模块11,用于检测到用户在前端发送进入目标容器请求,根据容器云平台对容器请求进行认证和鉴权;
通信连接建立模块12,用于认证和鉴权成功后,获取进入目标容器的会话ID;根据容器引擎服务器的接口与目标容器建立通信连接;
危险命令拦截模块13,用于在通信连接中对命令进行检查,当检查到命令为危险命令时,且满足拦截操作条件,则对危险命令进行拦截。
具体实施方式上见述方法实施例,此处不再赘述。
可选地,所述***还包括命令记录模块,用于记录用户输入的命令,将所述命令存储到数据库中。
可选地,所述***还包括命令写入模块,用于接收前端与目标容器的输入与输出数据,将所述输入与输出数据写入脚本定时输出文件和脚本终端输出文件。
可选地,认证和鉴权模块11还用于检测到用户在前端发送目标容器请求,所述目标容器请求包括目标容器引擎服务器的认证信息、用户信息以及目标容器信息;
根据容器云平台对目标容器引擎服务器的认证信息、用户信息以及目标容器信息进行认证和鉴权。
可选地,通信连接建立模块12还用于认证和鉴权成功后,获取进入目标容器的会话ID;根据Kubernetes提供的WebSocket接口与目标容器建立全双工通信连接。
可选地,所述***还包括预先设置模块,预先设置模块用于预先对危险命令列表进行设置。
危险命令拦截模块还用于在通信连接中对命令进行检查,若检查到命令在危险命令列表中,则对危险命令进行拦截,并通过邮件发送给管理员。
可选地,预先设置模块还用于预先对特殊字符列表进行设置;
命令写入模块还用于获取用户输入的命令,判断用户输入的命令是否在特殊字符列表中;
若用户输入的命令在特殊字符列表中,则不存储命令;
若用户输入的命令不在特殊字符列表中,则将所述命令存储到数据库中。
本发明另一实施例提供一种电子设备10,如图5所示,包括处理器110和存储器120;
存储器120,用于存储操作指令;
处理器110,用于通过调用所述操作指令,执行上述任一项所述的远程容器登录方法。
处理器110用于完成电子设备10的各种控制逻辑,其可以为通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、单片机、ARM(Acorn RISCMachine)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。还有,处理器110还可以是任何传统处理器、微处理器或状态机。处理器110也可以被实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器结合DSP核、或任何其它这种配置。
存储器120作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的远程容器登录方法对应的程序指令。处理器110通过运行存储在存储器120中的非易失性软件程序、指令以及单元,从而执行电子设备10的各种功能应用以及数据处理,即实现上述方法实施例中的远程容器登录方法。
存储器120可以包括存储程序区和存储数据区,其中,存储程序区可存储操作装置、至少一个功能所需要的应用程序;存储数据区可存储根据电子设备10使用所创建的数据等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器120可选包括相对于处理器110远程设置的存储器,这些远程存储器可以通过网络连接至电子设备10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
一个或者多个单元存储在存储器120中,当被处理器110执行时,执行上述任意方法实施例中的远程容器登录方法,例如,执行以上描述的图1中的方法步骤S100至步骤S300。
本发明实施例提供了一种非易失性计算机可读存储介质,计算机可读存储介质存储有计算机程序,该计算机程序令被处理器执行时实现上述任一项所述的远程容器登录方法行,例如,执行以上描述的图1中的方法步骤S100至步骤S300。
作为示例,非易失性存储介质能够包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦ROM(EEPROM)或闪速存储器。易失性存储器能够包括作为外部高速缓存存储器的随机存取存储器(RAM)。通过说明并非限制,RAM可以以诸如同步RAM(SRAM)、动态RAM、(DRAM)、同步DRAM(SDRAM)、双数据速率SDRAM(DDR SDRAM)、增强型SDRAM(ESDRAM)、Synchlink DRAM(SLDRAM)以及直接Rambus(兰巴斯)RAM(DRRAM)之类的许多形式得到。本文中所描述的操作环境的所公开的存储器组件或存储器旨在包括这些和/或任何其他适合类型的存储器中的一个或多个。
以上所描述的实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施例的描述,本领域的技术人员可以清楚地了解到各实施例可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件实现。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存在于计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)执行各个实施例或者实施例的某些部分的方法。
除了其他之外,诸如"能够'、"能"、"可能"或"可以"之类的条件语言除非另外具体地陈述或者在如所使用的上下文内以其他方式理解,否则一般地旨在传达特定实施方式能包括(然而其他实施方式不包括)特定特征、元件和/或操作。因此,这样的条件语言一般地还旨在暗示特征、元件和/或操作对于一个或多个实施方式无论如何都是需要的或者一个或多个实施方式必须包括用于在有或没有输入或提示的情况下判定这些特征、元件和/或操作是否被包括或者将在任何特定实施方式中被执行的逻辑。
已经在本文中在本说明书和附图中描述的内容包括能够提供远程容器登录方法及装置的示例。当然,不能够出于描述本公开的各种特征的目的来描述元件和/或方法的每个可以想象的组合,但是可以认识到,所公开的特征的许多另外的组合和置换是可能的。因此,显而易见的是,在不脱离本公开的范围或精神的情况下能够对本公开做出各种修改。此外,或在替代方案中,本公开的其他实施例从对本说明书和附图的考虑以及如本文中所呈现的本公开的实践中可能是显而易见的。意图是,本说明书和附图中所提出的示例在所有方面被认为是说明性的而非限制性的。尽管在本文中采用了特定术语,但是它们在通用和描述性意义上被使用并且不用于限制的目的。

Claims (10)

1.一种远程容器登录方法,其特征在于,包括:
检测到用户在前端发送进入目标容器请求,根据容器云平台对容器请求进行认证和鉴权;
认证和鉴权成功后,获取进入目标容器的会话ID;根据容器引擎服务器的接口与目标容器建立通信连接;
在通信连接中对命令进行检查,当检查到命令为危险命令时,且满足拦截操作条件,则对危险命令进行拦截。
2.根据权利要求1所述的方法,其特征在于,所述认证和鉴权成功后,获取进入目标容器的会话ID;根据容器引擎服务器的接口与目标容器建立通信连接后,还包括:
记录用户输入的命令,将所述命令存储到数据库中。
3.根据权利要求2所述的方法,其特征在于,所述认证和鉴权成功后,获取进入目标容器的会话ID;根据容器引擎服务器的接口与目标容器建立通信连接后,还包括:
接收前端与目标容器的输入与输出数据,将所述输入与输出数据写入脚本定时输出文件和脚本终端输出文件。
4.根据权利要求3所述的方法,其特征在于,所述检测到用户在前端发送进入目标容器请求,根据容器云平台对容器请求进行认证和鉴权,包括:
检测到用户在前端发送目标容器请求,所述目标容器请求包括目标容器引擎服务器的认证信息、用户信息以及目标容器信息;
根据容器云平台对目标容器引擎服务器的认证信息、用户信息以及目标容器信息进行认证和鉴权。
5.根据权利要求4所述的方法,其特征在于,所述认证和鉴权成功后,获取进入目标容器的会话ID;根据容器引擎服务器的接口与目标容器建立通信连接,包括:
认证和鉴权成功后,获取进入目标容器的会话ID;根据Kubernetes提供的WebSocket接口与目标容器建立全双工通信连接。
6.根据权利要求5所述的方法,其特征在于,所述检测到用户在前端发送进入目标容器请求,根据容器云平台对容器请求进行认证和鉴权前,包括:
预先对危险命令列表进行设置。
则在通信连接中对命令进行检查,当检查到命令为危险命令时,且满足拦截操作条件,则对危险命令进行拦截,包括:
在通信连接中对命令进行检查,若检查到命令在危险命令列表中,则对危险命令进行拦截,并通过邮件发送给管理员。
7.根据权利要求6所述的方法,其特征在于,所述检测到用户在前端发送进入目标容器请求,根据容器云平台对容器请求进行认证和鉴权前,还包括:
预先对特殊字符列表进行设置;
则记录用户输入的命令,将所述命令存储到数据库中,包括:
获取用户输入的命令,判断用户输入的命令是否在特殊字符列表中;
若用户输入的命令在特殊字符列表中,则不存储命令;
若用户输入的命令不在特殊字符列表中,则将所述命令存储到数据库中。
8.一种远程容器登录装置,其特征在于,包括:
认证和鉴权模块,用于检测到用户在前端发送进入目标容器请求,根据容器云平台对容器请求进行认证和鉴权;
通信连接建立模块,用于认证和鉴权成功后,获取进入目标容器的会话ID;根据容器引擎服务器的接口与目标容器建立通信连接;
危险命令拦截模块,用于在通信连接中对命令进行检查,当检查到命令为危险命令时,且满足拦截操作条件,则对危险命令进行拦截。
9.一种电子设备,其特征在于,包括处理器和存储器;
所述存储器,用于存储操作指令;
所述处理器,用于通过调用所述操作指令,执行权利要求1-7任一项所述的方法。
10.一种非易失性计算机可读存储介质,其特征在于,所述非易失性计算机可读存储介质存储有计算机程序,该计算机程序令被处理器执行时实现权利要求1-7任一项所述的方法。
CN202010968889.8A 2020-09-15 2020-09-15 一种远程容器登录方法、装置及电子设备 Pending CN112187747A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010968889.8A CN112187747A (zh) 2020-09-15 2020-09-15 一种远程容器登录方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010968889.8A CN112187747A (zh) 2020-09-15 2020-09-15 一种远程容器登录方法、装置及电子设备

Publications (1)

Publication Number Publication Date
CN112187747A true CN112187747A (zh) 2021-01-05

Family

ID=73921232

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010968889.8A Pending CN112187747A (zh) 2020-09-15 2020-09-15 一种远程容器登录方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN112187747A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113162936A (zh) * 2021-04-25 2021-07-23 亿次网联(杭州)科技有限公司 一种防止异常动态分析的方法和***
CN113609485A (zh) * 2021-08-13 2021-11-05 杭州安恒信息安全技术有限公司 危险命令检测方法、***、计算机设备及可读存储介质
CN117271169A (zh) * 2023-11-03 2023-12-22 广东保伦电子股份有限公司 一种面向容器调用宿主机命令的通讯方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106529315A (zh) * 2016-11-04 2017-03-22 杭州华澜微电子股份有限公司 一种硬盘安全防护方法及***
CN107679399A (zh) * 2017-10-19 2018-02-09 郑州云海信息技术有限公司 一种基于容器的恶意代码检测沙盒***及检测方法
US20190377656A1 (en) * 2018-06-11 2019-12-12 TmaxOS Co., Ltd. Integrated Management System for Container-Based Cloud Servers
CN111176794A (zh) * 2020-01-02 2020-05-19 腾讯科技(深圳)有限公司 一种容器管理方法、装置及可读存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106529315A (zh) * 2016-11-04 2017-03-22 杭州华澜微电子股份有限公司 一种硬盘安全防护方法及***
CN107679399A (zh) * 2017-10-19 2018-02-09 郑州云海信息技术有限公司 一种基于容器的恶意代码检测沙盒***及检测方法
US20190377656A1 (en) * 2018-06-11 2019-12-12 TmaxOS Co., Ltd. Integrated Management System for Container-Based Cloud Servers
CN111176794A (zh) * 2020-01-02 2020-05-19 腾讯科技(深圳)有限公司 一种容器管理方法、装置及可读存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113162936A (zh) * 2021-04-25 2021-07-23 亿次网联(杭州)科技有限公司 一种防止异常动态分析的方法和***
CN113162936B (zh) * 2021-04-25 2023-04-07 亿次网联(杭州)科技有限公司 一种防止异常动态分析的方法和***
CN113609485A (zh) * 2021-08-13 2021-11-05 杭州安恒信息安全技术有限公司 危险命令检测方法、***、计算机设备及可读存储介质
CN117271169A (zh) * 2023-11-03 2023-12-22 广东保伦电子股份有限公司 一种面向容器调用宿主机命令的通讯方法

Similar Documents

Publication Publication Date Title
CN111651757B (zh) 攻击行为的监测方法、装置、设备及存储介质
US11233826B2 (en) System and method of microservice-based application deployment with automating authorization configuration
US11822637B2 (en) Adaptive authentication in spreadsheet interface integrated with web service
CN112187747A (zh) 一种远程容器登录方法、装置及电子设备
CN110519380B (zh) 一种数据访问方法、装置、存储介质及电子设备
US9998470B1 (en) Enhanced data leakage detection in cloud services
CN108989355B (zh) 一种漏洞检测方法和装置
WO2014109881A1 (en) Methods and apparatus for increased security in issuing application tokens
CN111176794B (zh) 一种容器管理方法、装置及可读存储介质
CN107302586A (zh) 一种Webshell检测方法以及装置、计算机装置、可读存储介质
CN113469866A (zh) 数据处理方法、装置和服务器
WO2017215650A1 (zh) 微端的自动登录方法、装置、程序及介质
CN103971059A (zh) 一种Cookie本地存储与使用方法
CN114189553B (zh) 一种流量回放方法、***及计算设备
CN112118238A (zh) 认证登录的方法、装置、***、设备及存储介质
CN108600259B (zh) 设备的认证和绑定方法及计算机存储介质、服务器
CN108322420A (zh) 后门文件的检测方法和装置
CN112699034B (zh) 虚拟登录用户构建方法、装置、设备及存储介质
CN115333872B (zh) 安全网关解析功能验证方法、装置、终端设备及存储介质
CN115065510B (zh) 登录方法、装置、***、电子设备及可读存储介质
CN110633432A (zh) 一种获取数据的方法、装置、终端设备及介质
CN110321507A (zh) 浏览器跨域通信方法及装置
CN109831496B (zh) 一种终端数据的调试方法
CN111131152B (zh) 一种跨平台的远程登录防护***的自动化验证方法及***
CN113852592A (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