一种基于白名单的容器运行安全验证处理方法及系统技术方案

技术编号:15448090 阅读:45 留言:0更新日期:2017-05-29 22:50
本发明专利技术公开了一种基于白名单的容器运行安全验证处理方法及系统,包括:Docker客户端创建运行云应用镜像请求,Docker Engine服务接收到Docker客户端的请求后,解析指令信息,并调用白名单客户端插件进行安全验证;白名单客户端插件发送验证请求到白名单服务器,白名单服务器根据接收的元数据信息调用服务器端的白名单进行对比验证,并返回验证信息至白名单客户端插件,白名单客户端插件将验证信息返回给Docker engine服务。本发明专利技术强化Docker engine安全,完全杜绝了运行未经验证、不安全云应用镜像的安全风险,特别适用于生产环境和高安全要求行业如银行、公安行业客户等的安全要求。

Method and system for verifying running safety of containers based on whitelist

The invention discloses a container operation safety verification processing method and system based on white list includes: Docker client create cloud application image Docker Engine service request, received Docker client request, analytical instruction information, and call the white list client plug-in security verification; whitelist verification client plug-in request to the white list server, the server whitelist is verified according to the received information metadata server called white list, and returns the information to verify whitelist client plug-in, whitelist client plug-in will verify the information back to the Docker engine service. The invention engine Docker enhanced security, completely eliminate the operation without a security risk, verify quanyun application image, especially suitable for the production environment and high safety requirements of industries such as banking, public security industry customer safety requirements.

【技术实现步骤摘要】
一种基于白名单的容器运行安全验证处理方法及系统
本专利技术涉及容器安全
,具体涉及基于白名单的Docker容器服务运行时镜像安全验证处理方法及系统。
技术介绍
在云计算技术发展过程中,以Docker为代表的云容器技术被称之为是虚拟化后最重要的云计算技术,Docker这样的容器能够提高云应用的可移植性,并让企业用户能够更高效地使用IT资源。容器云安全的一个问题是云应用镜像安全,如果企业创建了它自己的容器镜像,那么这个镜像的安全性水平将取决于企业本身的安全技术能力;如果企业需要从一个存储库中获得一个容器,它可能并不能确切地知道正在下载什么内容;例如,如果容器有一个记录按键操作的技术可将用户名和密码上传至远程服务器,那么就会存在致命的安全风险。现有的技术方案中,为方便企业用户在公有云和私有云环境下使用Docker容器云技术,Docker开发了registry企业仓库,来统一管理企业容器运行环境运行的云应用镜像,通过registry管理和认证授权云应用镜像,但由于Docker宿主机在执行创建并运行一个云应用镜像指令时,首先是从本机存储的镜像列表中查询要运行的云应用镜像,如果本地存在云应用镜像,就直接执行指令,创建并启动镜像实例,不再去Registry企业镜像仓库中进行查询和下载镜像。所以用户可用文件拷贝或加载的方式运行未经验证的云应用镜像,这样对会容器运行环境带来很大的安全风险。
技术实现思路
为解决现有技术存在的不足,本专利技术公开了一种基于白名单的容器运行安全验证处理方法及系统,本专利技术基于DockerEnginePlugin插件机制,为容器运行镜像增加镜像白名单安全检查功能,实现与DockerEngine无缝集成,用户在操作时,由DockerEngine自动完成,不需要人工操作干预。为实现上述目的,本专利技术的具体方案如下:一种基于白名单的容器运行安全验证处理方法,包括以下步骤:Docker客户端创建运行云应用镜像请求,DockerEngine服务接收到Docker客户端的请求后,解析指令信息,并调用白名单客户端插件进行安全验证;白名单客户端插件发送验证请求到白名单服务器,白名单服务器根据接收的元数据信息调用服务器端的白名单进行对比验证,并返回验证信息至白名单客户端插件,白名单客户端插件将验证信息返回给Dockerengine服务;DockerEngine服务程序如果接收到的是验证通过信息,在宿主机创建并运行云应用镜像实例,并将运行信息返回给Docker客户端;如果接收到的是验证不通过信息,Dockerengine服务程序终止命令的执行。进一步的,Docker客户端创建运行云应用镜像请求之前需要在Docker宿主机环境,安装白名单客户端插件程序。更进一步的,白名单客户端插件程序安装方式,一种是在Docker宿主机环境先安装Docker官方的DockerEngine服务程序,然后安装独立的白名单客户端程序;另一种是直接安装包含白名单客户端的重新打包好的DockerEngine服务安装程序。进一步的,安装白名单客户端插件程序之后,用文本编辑器软件修改并保存配置文件中的白名单服务器地址,停止Docker服务,然后重新启动DockerEngine服务,确保宿主机上运行的DockerEngine服务能够正确的加载白名单客户端插件程序。进一步的,白名单服务器指定白名单数据保存在配置文件中,配置文件中还包含一组服务器程序运行需要的配置参数;配置参数包括服务端口、数据存取方式类型、数据存取方式URL地址、数据存取用户名、数据存取密码、日志配置参数等。进一步的,白名单服务器对每次验证请求都进行记录,将请求信息记录到数据文件或数据库中。基于白名单的DockerEngine服务运行镜像安全验证处理系统,包括:Docker客户端,用于创建运行云应用镜像请求;DockerEngine服务,在接收到Docker客户端的请求后,解析指令信息,并调用白名单客户端插件进行安全验证;白名单客户端插件,发送验证请求到白名单服务器;白名单服务器,根据接收的元数据信息调用服务器端的白名单进行对比验证,并返回验证信息至白名单客户端插件,白名单客户端插件将验证信息返回给Dockerengine服务;DockerEngine服务,如果接收到的是验证通过信息,在宿主机创建并运行云应用镜像实例,并将运行信息返回给Docker客户端;如果接收到的是验证不通过信息,Dockerengine服务程序终止命令的执行。进一步的,Docker客户端在创建运行云应用镜像请求之前需要在Docker宿主机环境,安装白名单客户端插件程序。更进一步的,白名单客户端插件程序安装方式,一种是在Docker宿主机环境先安装Docker官方的DockerEngine服务程序,然后安装独立的白名单客户端程序;另一种是直接安装包含白名单客户端的重新打包好的DockerEngine服务安装程序。进一步的,安装白名单客户端插件程序之后,用文本编辑器软件修改并保存配置文件中的白名单服务器地址,停止Docker服务,然后重新启动DockerEngine服务,确保宿主机上运行的DockerEngine服务能够正确的加载白名单客户端插件程序。进一步的,白名单服务器指定白名单数据保存在配置文件中,配置文件中还包含一组服务器程序运行需要的配置参数;配置参数包括服务端口、数据存取方式类型、数据存取方式URL地址、数据存取用户名、数据存取密码、日志配置参数等。进一步的,白名单服务器对每次验证请求都进行记录,将请求信息记录到数据文件或数据库中。本专利技术适用于在云计算容器云环境下通过白名单管理Docker宿主机节点运行的Docker云应用镜像,增强容器运行环境安全,可与DockerEngine无缝集成,应用范围广,适用于任何运行Docker的云环境,既适用于使用Docker单机环境,也可应用在GoogleKubernetes、DockerSwarm、ApacheMesos等Docker容器集群环境,同样对于在亚马逊AWS或阿里云等公有云环境上运行容器云应用镜像也可以使用,可大大增强容器的运行安全。本专利技术的有益效果:1、本专利技术强化Dockerengine安全,完全杜绝了运行未经验证、不安全云应用镜像的安全风险,特别适用于生产环境和高安全要求行业如银行、公安行业客户等的安全要求。2、本专利技术的系统软件使用场景非常灵活,可与DockerEngine无缝集成,应用范围广,适用于任何运行Docker和云环境,既适用于使用Docker单机环境,也可应用在GoogleKubernetes、DockerSwarm、ApacheMesos等Docker容器集群环境,同样对于在亚马逊AWS或阿里云等公有云环境上运行容器云应用镜像也可以使用。3、本专利技术的软件集成方便,白名单服务器程序可以作为私有镜像仓库的一部分也可以作为独立程序来运行;白名单服务器程序可以与容器云管理平台或容器云PaaS平台结合,作为其中的一部分提升用户的安全和操作。4、本专利技术能够实现与DockerEngine无缝集成,白名单客户端插件完全符合DockerPlugins插件规范,适用于Dockerv.1.9以上所有版本,对用户操作Docker没有任何影响。附图说明图1本文档来自技高网...
一种基于白名单的容器运行安全验证处理方法及系统

【技术保护点】
一种基于白名单的容器运行安全验证处理方法,其特征是,包括以下步骤:Docker客户端创建运行云应用镜像请求,Docker Engine服务接收到Docker客户端的请求后,解析指令信息,并调用白名单客户端插件进行安全验证;白名单客户端插件发送验证请求到白名单服务器,白名单服务器根据接收的元数据信息调用服务器端的白名单进行对比验证,并返回验证信息至白名单客户端插件,白名单客户端插件将验证信息返回给Docker engine服务;Docker Engine服务程序如果接收到的是验证通过信息,在宿主机创建并运行云应用镜像实例,并将运行信息返回给Docker客户端;如果接收到的是验证不通过信息,Docker engine服务程序终止命令的执行。

【技术特征摘要】
1.一种基于白名单的容器运行安全验证处理方法,其特征是,包括以下步骤:Docker客户端创建运行云应用镜像请求,DockerEngine服务接收到Docker客户端的请求后,解析指令信息,并调用白名单客户端插件进行安全验证;白名单客户端插件发送验证请求到白名单服务器,白名单服务器根据接收的元数据信息调用服务器端的白名单进行对比验证,并返回验证信息至白名单客户端插件,白名单客户端插件将验证信息返回给Dockerengine服务;DockerEngine服务程序如果接收到的是验证通过信息,在宿主机创建并运行云应用镜像实例,并将运行信息返回给Docker客户端;如果接收到的是验证不通过信息,Dockerengine服务程序终止命令的执行。2.如权利要求1所述的一种基于白名单的容器运行安全验证处理方法,其特征是,Docker客户端创建运行云应用镜像请求之前需要在Docker宿主机环境,安装白名单客户端插件程序。3.如权利要求2所述的一种基于白名单的容器运行安全验证处理方法,其特征是,白名单客户端插件程序安装方式,一种是在Docker宿主机环境先安装Docker官方的DockerEngine服务程序,然后安装独立的白名单客户端程序;另一种是直接安装包含白名单客户端的重新打包好的DockerEngine服务安装程序。4.如权利要求1所述的一种基于白名单的容器运行安全验证处理方法,其特征是,安装白名单客户端插件程序之后,用文本编辑器软件修改并保存配置文件中的白名单服务器地址,停止Docker服务,然后重新启动DockerEngine服务,确保宿主机上运行的DockerEngine服务能够正确的加载白名单客户端插件程序。5.如权利要求1所述的一种基于白名单的容器运行安全验证处理方法,其特...

【专利技术属性】
技术研发人员:车帅张辉石磊程栋
申请(专利权)人:乾云众创北京信息科技研究院有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1