摘 要:在数字化时代,软件应用的快速交付和高效部署对于企业的成功至关重要,传统的应用部署方式往往复杂且耗时,容易导致运维困难和资源浪费,企业面对软件功能需求的不断变化,需要快速响应产品的变化,快速部署软件以产生效益。随着容器化技术、微服务等云原生技术的发展,为服务的频繁发布、快速交付及风险反馈等提供了技术保障。本系统基于云边协同场景,利用云原生、云边协同和安全数据通道技术,实现了基于本地云、远端服务为一体的云边协同的远程安全运维系统。
随着企业数字化转型升级,业务逐渐互联网化、多云化和移动化,内外网边界变得愈发模糊。同时,攻防对抗技术的不断升级,以及来自监管单位的演练保障压力,使企业面临的网络安全挑战也变得愈发严峻,而传统网络安全防护架构和安全设备部署运维的方式,已无法满足当前日益复杂的安全需求。此外,受限于安全投入的成本压力,企业需要更简单、更安全、更智能、更便捷使用和维护的安全运维新模式。
软件定义广域网络(Software-Defined Networking in a Wide Area Network,SD-WAN) 是 一系列技术的集合,主要是将软件定义网络技术应用于管理广域网络。SD-WAN 技术使用虚拟化技术,简化资料中心的管理及运维工作,将相关技术应用于广域网络之上,简化企业级用户对于广域网络的管控。
云边协同架构是一种新兴的计算模式,应用于各种行业和领域,如智慧城市、智慧交通、智慧零售等物联网场景 。旨在将云计算和边缘计算融合,以实现云原生场景下更高效的数据处理和决策支持。云边协同技术的不断演进,成为实现深度集成的跨层次服务的关键,其典型架构为:云端提供数据的处理、收集、计算及中心业务逻辑处理;边端提供数据的采集,请求云端的数据,以及接受来自云端的指令,往往一个云端会关联多个边端设备 ,因此会存在复杂的云边端服务部署、维护和升级操作。借助云边协同,企业可以只允许合法的、值得信任的终端设备接入网络进行联动计算和安全防护。
1
研究现状
针对前文所述的远程安全运维系统的挑战和特征,众多学者致力于研究自动化快速部署、配置管理和智能监控预警等方面的技术,以提高安全设备的管理效率和防护能力,各级运维人员对现场运维的及时性和消缺率更加重视。文献 [4] 将现有智能运维的落地实施过程归纳为3 个阶段:对各种类型数据(指标、日志、调用链、配置文件、工作流和多媒体数据)的获取,对采集到的数据进行预处理,对分析结果进行可视化展示。此外,在提到未来趋势的综述性研究中,有学者将智能运维技术适配于虚拟化技术的运维对象(如虚拟机监视器、虚拟机和容器等)中,以适应一些更为复杂的运维场景。
1.2 远程安全运维的研究需求
2
远程安全运维系统架构与实现
图 1 远程安全运维系统总体架构
云端安全运营中心由安全运营平台和安全专家组成。其中,安全运营平台具备监测分析、指挥管理、安全运维、资产管理、威胁情报及网站云防御等能力;安全专家由运营交付人员和攻防渗透人员组成。客户可通过 ESSG 接入运营中心,通过共享式平台工具及人员团队服务,按需开展 7×24 h 监测分析、响应处置等远程安全运维服务。
虚拟运营骨干网络是打通云端运营中心与边缘侧客户网络的一体化基础支撑网络,由遍布全国的 SD-WAN 入网点(Point-of-Presence,PoP)组成,分布范围包括各网络业务提供商数据中心、公有云节点等,属于互联网逻辑链路,通过专有虚拟网络隧道协议及互联网传输状态监测,结合云端运营中心网络控制中台,优化路由选址,提升网络传输质量及云边协同效率。
ESSG 是远程安全运维系统的必备服务工具,内置安全运营骨干网络的 SD-WAN 入网基础模块和安全数据采集模块,能够建立与云端安全运营中心的安全连接,并采用 Docker 架构实现安全组件的动态组合,满足客户个性化安全托管需求。同时,可根据不同客户网络环境提供硬件网关及镜像部署两种模式,实现传统数据中心及云化网络安全托管的全场景覆盖。
2.2 远程安全运维场景分析
远程安全运维系统在云端部署中心管理服务、相关的业务模块及数据处理模块,借助ESSG 内置采集器采集客户侧的安全日志,并将其动态传输到云端的安全运营中心,建立云上云下全场景安全托管模式,安全运维系统实现在云端的安全可视、协同响应,并通过在云端的数据分析中心,分析海量安全日志,智能化发现安全威胁,并借助 ESSG 进行安全设备联动处置,实现人机共智的安全托管,为客户实现远程安全赋能,远程安全运维主要覆盖如下 3 种场景。
2.2.1 云边协同服务远程安全服务交付
云边协同服务赋能流程如图 2 所示,详细说明如下:
图 2 云边协同的远程安全服务交付场景
(1)服务下发。通过 ESSG 联动云端安全运营中心的服务仓库,将服务仓库中的安全服务能力动态延伸到边端,实现安全服务在边缘安全服务网关上即发即用、用完销毁等功能,以保证不占用网关的存储和计算资源。
(2)编排指令下发。
(3)下载安全服务并部署。
(4)服务运行状态上报。
(5)获取授权。云端向边端下发安全服务,需要获取用户授权,同时在云端监控边端服务的运行状态。
2.2.2 云边协同远程应急响应处置
ESSG 部署后,自动建立与运营中心安全服务的专属运维通道,在获取用户授权后运营中心可进行漏洞扫描处置、网际互联协议(Internet Protocol,IP)封堵处置等应急响应,根据不同的场景处置流程可分为内置安全服务处置流程和安全服务处置流程,如图 3 所示,详细说明如下:
图 3 云边协同的远程应急响应处置场景
(1)安全服务处置流程。
①应急响应模块针对内置安全服务下发处置响应指令到设备联动适配层;
②设备联动适配层下发指令到 ESSG 上的内置安全服务模块。
(2)客户侧安全服务处置流程。
①应急响应模块针对客户侧安全服务下发处置响应指令到设备联动适配层;
②设备联动适配层下发指令到客户侧安全设备的端点检测与响应(Endpoint Detection and Response,EDR)。
2.2.3 云边协同远程运维风险态势监测
ESSG 安全数据采集模块基于专用网络通道和权限管理模型实现云、边、端的安全交互。通过专用安全数据通道管理远端的运维指令,实现指令的安全下达,权限管理模型控制各个运维人员的操作,实现远程运维工具的安全使用。云边协同远程运维风险态势监测如图 4 所示,详细实现如下:
图 4 云边协同的远程运维风险态势监测场景
(1)获取采集授权。利用 ESSG 上的授权管理模块进行权限判断。
(2)采集安全数据。被动采集客户单位现场所有安全设备及系统的告警数据。
(3)数据预处理。将客户侧安全设备采集到的数据同步到 ESSG 进行范式解析预处理,并对采集的数据进行打标签处理,标记来源设备信息,以区分各客户单位数据。
(4)数据分析。由 ESSG 上的数据分析模块进行分析。
(5)数据上报授权。根据授权管理模块获取数据上报权限。
(6)数据上报转发。授权需要上报的数据通过 SD-WAN 加密隧道回传至运营中心分析平台。
(7)数据监测。云端运营中心将上报的数据进行自动化融合分析及情报碰撞,同时进行7×24 h 全时监测,针对客户安全态势监测过程中产生的安全威胁事件,运营中心运营团队实时向用户进行安全通报,并定期推送监测报告。此外,还可根据客户需要,由运营中心定期推送威胁情报到 ESSG 供客户获取人工情报及本地安全设备进行机读情报集成,完善客户本地的安全态势监测能力。同时,可以联动应急响应处置模块,实现基于安全分析的远程安全处置运维。
2.3 关键技术
云边协同技术的远程安全运维系统依托Kubernetes 和 KubeEdge 为底层基座,实现安全服务镜像化管理和云边协同,进而实现对边端ESSG 的动态管理及安全服务的动态下发。在云端运营中心部署远程安全运维系统,运维人员在云端的安全运维系统内选择需要部署的安全服务镜像,同时选择需要部署的边端 ESSG,即可将服务部署到边端 ESSG 上,其中边缘安全数据通道用来保证边端服务的数据上传或云端服务编排指令的下达。
云边协同技术的远程安全运维系统,关键在于服务仓库的建设、服务的编排、服务的运行监测及安全数据通道。本系统具有如下几个特点:云边协同的统一服务仓库和服务监测、云边协同的服务编排、专用数据通道。
2.3.1 基于虚拟容器化技术的服务仓库
服务仓库用来存储安全服务制品,所谓的安全服务制品是指 ESSG 上的安全服务镜像,为了服务运行环境的统一,避免部署时可能出现的环境异常情况,ESSG 使用 Docker 容器技术作为技术基座,实现只隔离应用程序的运行环境,但服务之间可以共享同一个操作系统 [7]。服务仓库的服务使用流程如图 5 所示。
图 5 服务仓库的使用流程
具体操作流程如下:
(1)服务制品的生产。开发人员通过 Docker技术将服务打包为镜像文件并存储为 .tar 格式文件,输出相应的配置参数文档。
(2)服务制品的上传。运维人员上传服务制品文件和配置参数到服务仓库中进行存储,再根据具体的业务同步更新到对应的镜像仓库Harbor 中,在 Harbor 中需要对服务制品进行版本管理。
(3)服务制品的运行。运维人员根据需要,利用服务编排模块,以及专用骨干网络提供的数据安全通道,将镜像文件下发到远端 ESSG 中,进行部署。
(4)服务制品更新。当某个安全服务需要升级时,需要再一次将服务打包为镜像文件,然后上传,同步到 Harbor 中,每一个版本都是一个需要备份的单独制品。
2.3.2 基于云边协同技术和容器编排技术的服务编排
服务通过虚拟容器化技术进行打包、管理后,需要把服务部署到边端服务器中,这也是远程安全运维的核心模块。在这个运维场景中,需要把服务的镜像文件变成运行的容器状态并且运行在边端服务器上,这个过程需要自动化完成。为解决这两个核心技术点,本文采用了Kubernetes 的容器编排管理技术和 KubeEdge 的云边协同技术。
Kubernetes 提供了大规模部署容器的编排与管理能力,能够构建多容器的应用服务,在集群上调度或伸缩这些容器,以及管理它们随时间变化的健康状态 。Kubernetes 通过将容器分类组成 Pod 来解决容器增殖带来的许多常见问题。Pod 为容器分组提供了一层抽象,以此协助调度工作负载,以及为这些容器提供类似网络与存储这类必要的服务。Kubernetes 的其他组件帮助用户对 Pod 进行负载均衡,以保证有合适数量的容器支撑用户的工作负载 [9]。在生产环境中使用 Kubernetes 的主要优势在于其提供了在物理机或虚拟机集群上调度和运行容器的平台。更宽泛地说,Kubernetes 能帮助用户在生产环境中构建基于容器底座的基础设施。由于 Kubernetes本质上就是运维任务的自动化平台,用户可以执行一些其他应用程序平台或管理系统支持的操作,只不过操作对象变成了容器。
KubeEdge 用于将容器化应用程序编排功能扩展到 Edge 的主机。它构建在 kubernetes 之上,并为网络应用程序提供基础架构支持、云和边缘之间的部署和元数据同步 ,从而实现边缘计算,将容器化应用编排功能扩展到边缘的节点和设备,并为云和边缘之间的网络、应用部署和元数据同步提供基础架构支持 。同时,KubeEdge 还 支 持 消 息 队 列 遥 感 传 输(Message Queuing Telemetry Transport,MQTT),并允许开发人员编写自定义逻辑并在 Edge 上启用一定资源的设备进行通信 。
利 用 Kubernetes 的 容 器 编 排 技 术, 结 合KubeEdge 的云边协同技术完成云边协同的服务部署,结合二者相辅相成的关系实现将安全服务的能力按需下放到边端。
具体的底层运行流程如下:
(1)服务启动。首先,当运维人员需要部署一个新的服务制品到边端时,在服务编排模块选择一个服务以及其对应的版本,服务加版本确定服务的唯一性;其次,直接发送一个部署指令,服务编排模块就会从服务仓库将该制品下发到边端并运行。在服务编排模块可以实时查看该服务的运行状态和日志输出,确认该服务是否正常运行。
(2)服务更新。该模块具有滚动更新功能,以保证原有业务和功能不受影响。滚动更新是指当更新一个新的版本时,不会立即停止原来的服务,会先将新的服务启动,正常运行后,将网络流量全部导入新的服务,这时才停止旧的服务。如果新的服务在启动时出现异常,就不会将流量导入新的服务,这样在整个更新流程中,服务正常运行,不会影响现有的业务,也不会在服务更新过程中出现数据丢失的现象。例如,当需要将某个安全服务从原来的 1.0 版本升级到 1.1 版本时,将该服务的 1.1 版本上传到服务仓库后,可以从服务仓库的服务列表上看到该服务的两个版本,同时可以看到需要更新的 ESSG 上运行的服务状态版本为 1.0 版本,可以直接将 1.1 版本号发送给服务编排模块,实现服务的更新。
(3)服务停止。当服务需要停止时,首先由运维人员发送停止请求到服务编排模块,编排模块根据需要停止的服务名称和该服务所在边端 ESSG 的信息生成一个停止指令,最后通过云边协同功能直接下发停止指令到边端服务器上,删除该服务。
2.3.3 基于副本控制器和 Kubelet 技术的运行监测
为保证边端服务安全、可靠地运行,本系统从服务的正常运行和状态监控两个维度保障系统的安全运行。
首先,需要确保服务正常运行。边端服务通过 Kubernetes 运行后,Kubernetes 的副本控制器(Replication Controller,RC) 会 保 证 容 器 一直处于持续运行状态,从而保证服务的高可用性。RC 的工作原理是一直监控 Kubernetes 容器,即服务的运行状态,一旦发现服务存在异常,RC 就 会 控 制 Kubernetes 启 动 一 个 新 的 Pod,以此保证这个服务的高可用运行。其中 Pod 是Kubernetes 部署时的基本单元。一个 Pod 由一个或多个共享相同网络命名空间和 IP 地址的容器组成,通俗地说,服务通过容器运行在 Pod 中,而 Pod 运行在服务器上。
其次,要想实现对边端的精确状态监控,就需要实现云端对所有边端服务运行状态的监控。本系统将每个边端节点通过 kubelet 技术加入集群中,实现了云端对边端服务器中央处理器利用率、内存使用情况、磁盘压力、网络带宽的监控,以及对每个服务运行的 pod 环境的相应指标数据的监测。通过云端远程监控,可以直观地看出服务器上每个 pod 所占用的资源情况,为运维和开发人员提供数据指导,方便运维人员的日常维护和迭代升级,从而达到资源的合理利用。
2.3.4 基于 SD-WAN 技术的专用数据通道
云边端的专用数据通道通过 SD-WAN 网络本身的安全性保障数据通道的安全,SD-WAN通过身份认证、数据加密、数据验证和权限控制等措施,避免非法接入、信息泄露和数据篡改等安全问题。特别是针对边缘安全服务网关(以下简称“服务网关”)的接入场景,SDWAN 解决方案基于零信任的安全理念,严格验证服务网关的身份信息,防止身份仿冒,确保只有合法可信的服务网关才能接入,从而避免非法远端设备的接入。本系统的数据通信主要基于 SD-WAN 的专用数据通道进行。
除了利用 SD-WAN 技术,本系统还根据不同的数据类型建设了不同的安全机制,以保障数据通道的安全性。安全机制包含如下两点:
(1)服务编排指令的下达。通过 KubeEdge本身的 Websocket 数据通道进行下达,该数据通道基于 Websocket+Tls 对数据进行加密,以及通过云端 Token 验证,保障了编排指令数据的安全性。
(2)云边端服务的数据访问。通过此服务进行数据转发,其核心是利用 EdgeMesh 进行 云 边 服 务 的 数 据 转 发。EdgeMesh 项 目 解 决了边缘计算场景下复杂网络的通信问题,中心化 的 EdgeMesh-Server 作 为 一 个 中 继 组 件, 协助其他节点进行网络穿透和流量中转。此组件具有高可用性,不仅能应对性能瓶颈与单点故障场景,而且能够保障系统更加稳定地运行,还覆盖了多种边缘网络的痛点场景,如分布式动态中继连接场景和私有局域网的网络自治场景等。
3
远程安全运维系统应用
图 6 远程安全运维系统部署
远程安全信息部署中的管理端集群主要由部署在云端环境的 Master 节点组成,用于云边协同的远程安全运维系统的管理工作,例如,边端 ESSG 的注册与激活,服务的编排等。边端ESSG 作为云端节点的 Worker 节点,主要承载用户的边缘业务,与云端运营中心进行联动。
运维人员首先通过云端运营中心的运维模块,完成边缘安全服务网关的生产、激活;其次完成远程安全服务的新增、删除、服务生命周期的策略管理、服务的启停、监控、配置、发布;最后完成远程安全运维操作权限的申请。客户可通过登录云端的安全运营中心,完成远程安全运维操作权限的审批,以及边端安全服务网关的动态监控。
为了直观地展示边端服务运行状态,本系统提供了可视化大屏方案,以服务维度展示当前所有服务的运行状态,通过关系图展示各个服务之间的网络关联和数据流情况,同时深钻各个服务相关的资源,如部署的 Node 资源,Pod 状态,以及当前服务的启停历史、运行日志;真正做到整个系统的一屏监控。
4
结 语
许 勇,男,学士,工程师,主要研究方向为云安全、安全服务运营;
文占婷,女,硕士,工程师,主要研究方向为云与大数据安全;
付猛林,男,学士,工程师,主要研究方向为云原生在安全服务方面的应用;
请联系:15710013727(微信同号)
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...