您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码:  验证码,看不清楚?请点击刷新验证码 必填



  求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Model Center 汽车系统工程   模型库  
会员   
   
软件架构设计方法、案例与实践
9月24日-25日 北京+线上
AI辅助软件测试方法与实践
9月26日-27日 北京+线上
SysML和EA进行系统设计与建模
11月19-20日 北京+线上
     
   
 
 订阅
在实际项目中,系统安全架构是怎样的?
 
 
  28  次浏览      5 次
2025-9-8
 
编辑推荐:
本文主要介绍了构建系统安全纵深防御体系所涵盖的六大层级(终端、边界、网络、应用、数据、主机)及两大核心隔离策略(逻辑隔离DMZ、物理隔离网闸),希望对您的学习有所帮助。
本文来自于小核桃编程,由火龙果软件Alice编辑、推荐。

安全性是系统架构设计中常考的架构知识点,也是系统架构设计中必备的需求和质量属性。安全性通常需要分析业务目标和质量场景,才能确定在架构设计中有针对性的对安全性方面进行设计。实际上系统安全性可包括多个方面,从外向内分别是:终端安全、边界安全、网络安全、应用服务安全、数据安全、主机安全。每一层的安全性都需要在系统中得以保证。

终端安全通常包括终端程序加固,系统防越权访问等;边界安全一般指多个不同的网络区域的跨区域访问,就如外网发送请求到 DMZ区 ,DMZ区请求到内网区等这些跨网络边界的安全,通常都使用防火墙做限制ip或端口的方式,从而限制了非法访问。网络边界安全范围比较广,内外网交互方式也比较多,为了保护内网的数据、应用服务等安全性,通常使用 物理隔离 装置进行防护,并设定数据交互原则,比较典型的物理隔离装置是网闸或光闸。网闸 / 光闸是专用的网络隔离设备,其隔离安全性最高,基本原理是阻断网络通信协议,在内部采用私有通信协议,同一时间只连接一个网络,轮流连接两个网络进行 数据摆渡 。此外还有刚刚说的逻辑隔离,这个通常在网络上划分一段网络区域,我们管它叫DMZ区,外部网络请求首先到DMZ区,再通过DMZ区的服务转发到内网区,从而对外隔离了内网应用服务器和数据。

网络传输安全设置网络通道,像vpn安全隧道、https传输协议、专线等,来保证数据的传输安全,以保证数据在传输过程中不会被拦截或篡改,从而避免了对内网数据或应用服务造成攻击。应用系统安全主要包括权限认证和访问控制,主要通过程序控制用户的身份和非法越权访问等。数据安全主要是指存储安全性,要保证数据不能被非法获取,敏感或隐私数据要加密存储,同时要保证数据的完整性和可用性,最重要的是要对数据进行备份,以免数据丢失。再就是服务器的主机也要保证安全,比如定期进行入侵检测、漏洞扫描,做好主机访问记录和监督,时刻关注主机的关键参数等,若有异常及时报警等。

以上,从外到内罗列了各层级的安全方案,实际上架构师考察的也基本上就这些了。从整体上搞清楚软件架构的安全设计要素,再往细节深挖。

逻辑隔离DMZ

DMZ隔离区是网络安全架构中常用的划分网络区,知道的人觉得它比较好理解,不知道的可能听起来有些抽象,DMZ 区不是具体的硬件设备,而是一个通过网络配置划分出来的逻辑区域,本质是网络中的 “过渡带”。它的核心作用可以用三个关键词概括:

隔离:隔开外网的风险(如黑客攻击、恶意流量)和内网的核心资源(如数据库、敏感服务器);

交互:允许外网通过 DMZ 区访问必要的对外服务(如 APP 的登录接口、企业官网);

缓冲:即使 DMZ 区的设备被攻击,内网核心资源仍能通过隔离机制保D持安全。

打个比方:内网像家里的卧室(存放贵重物品),外网像小区外的街道(人来人往,有安全风险),DMZ 区则像家门口的玄关或快递柜 —— 街道上的人(外网用户)可以把东西放在快递柜(DMZ 设备)里,家里人(内网服务器)再从快递柜取东西,既实现了 “对外收发” 的需求,又不用让外人直接进卧室。DMZ 区的划分完全依赖网络配置,不需要额外的物理设备。例如:通过路由器或防火墙将网络划分为三个网段(外网、DMZ 区、内网),给每个网段分配独立的 IP 地址范围(如外网用公网 IP,DMZ 区用 192.168.2.xx,内网用 192.168.3.xx),再通过防火墙规则限制网段间的通信,就能 “圈出” 一个 DMZ 区。

划分 DMZ 区其实不复杂,第一步是划分子网,给它单独编号,比如让对外服务的服务器用 192.168.2.xx,内网核心设备用 192.168.3.xx;第二步是设防火墙规则,这是关键,就像给缓冲带装门禁 —— 外网只能通过 443 端口(HTTPS)访问 DMZ,其他端口全拦;DMZ 想进内网,默认全拒绝,除非专门开个小口(比如 8080 端口),还得限制只有指定设备能过;内网管理员要去 DMZ 维护或维护内网设备或数据等,得走专用通道(比如 22 端口),还得通过 堡垒机 登记,堡垒机一般部署在内网,目的是给监控和审计运维人员的操作。最后在 DMZ 里放那些必须对外暴露的内容,比如接收 APP 请求的 Web 服务器、校验用户身份的 API 网关,还有拦截攻击的 WAF,核心数据库就在内网,绝不直接放出来。

再说说说内外网是如何交互的。DMZ 区与内外网的交互需遵循 可控、可追溯、低风险原则,核心是禁止直接连接,通过规则化路径传输,具体方案如下:

外网→DMZ 区

外网用户(如 APP 用户)的请求需经过多层过滤才能进入 DMZ 区:

第一步:加密传输用户设备与 DMZ 区的服务器通过 HTTPS(TLS 1.3)通信,确保数据在公网传输时不被窃听;

第二步:防火墙初检外网防火墙验证 SSL 证书有效性,仅允许 443 端口的合法流量进入 DMZ 区,阻断端口扫描、DDoS 等攻击;

第三步:DMZ 内部处理反向代理(如 Nginx)将请求分发至 API 网关,网关校验用户令牌(如 JWT)、过滤恶意参数(如 “<script>” 标签),通过后转发至 DMZ 区的应用服务器。

DMZ 区→内网

DMZ 区的请求需严格遵循 “被动响应” 原则,禁止主动访问内网,具体流程:

针对 同步请求场景 (如用户查订单):DMZ 区的 API 网关通过防火墙开放的 8080 端口,向内网应用服务器发送请求(需携带身份凭证);内网应用服务器处理后,将结果返回给 API 网关,再由 DMZ 区返回给外网用户;

针对 异步请求场景 (如订单状态通知):内网服务器将通知数据发送至 DMZ 区的内网侧消息队列;DMZ 区的中间转发器(自研程序)定期从内网队列拉取数据,经脱敏(如隐藏身份证后 6 位)、病毒扫描后,推送至外网侧消息队列;外网 APP 从外网队列拉取数据,避免内网服务器直接对外发送请求。

内网→DMZ 区

内网管理员需管理 DMZ 设备(如更新软件、排查故障)时,需通过 “堡垒机 + 审计日志” 实现可控访问:

管理员先登录堡垒机(内网设备),输入身份验证(如密码 + 动态令牌);

堡垒机记录管理员的操作(如登录时间、执行命令),再通过 SSH(22 端口)连接 DMZ 区的服务器;

操作完成后,堡垒机自动生成审计报告,确保 “谁操作、做了什么” 可追溯。

核心技术:如何隐藏内网信息?

NAT 地址转换:DMZ 区的服务器对外显示公网 IP(如 202.103.xx.xx),对内使用私有 IP(如 192.168.2.10),避免内网网段暴露;

协议转换:DMZ 区与内网使用不同协议(如外网用 HTTPS,内网用私有二进制协议),降低协议层漏洞风险;

日志审计:DMZ 区的所有交互(请求源 IP、处理结果、时间戳)均被 ELK 等系统记录,异常行为(如短时间大量请求敏感接口)会触发告警。

综上描述,DMZ安全性还是比较高的,基本上都是逻辑隔离,保证了网络各个区域的安全,成本也比较低。大概安全网络架构图如下:

物理隔离光闸/网闸

网闸技术的需求来自内网与外网数据互通的要求,目前在很多中大型项目并且安全需求较高的项目中会使用,比如政府的电子政务是对公众服务,与互联网连通,而内网的政府办公网络,由于保密的要求,内网若与网连通,则面临来自公网的各种威胁。安全专家给出的建议是:由于目前的安全技术,无论防火墙、UTM等防护系统都不能保证攻击的一定阻断,入侵检测等监控系统也不能保证入侵行为完全捕获,所以最安全的方式就是物理的分开,所以在公安部的技术要求中,要求电子政务的内、外网络之间“物理隔离”。没有连接,来自外网对内网的攻击就无从谈起。

但是,网络的物理隔离,给数据的通讯带来很多不便,比如工作人员出差只能接入互联网,要取得内网的文件就没有办法,只能让办公室的人把文件放在外网上。另外,内网办公系统需要从外网提供的统计数据,由于服务隔离,数据的获取也很困难。因此,随着网络业务的日益成熟,数据交换的需求提议强烈。

最初的解决办法就是人工的“传递”,用U盘或光盘在内外网之间倒换数据。随着业务的增多,数据量的扩大,人工的方式显然成为很多业务的瓶颈,在内、外网之间建立一个既符合“物理隔离”安全要求,又能进行数据交换的设备或解决方案,这就诞生了网闸技术。

网闸实现的是个安全的概念,与防火墙等网络安全设备不同的地方是他阻断通讯的连接,只完成数据的交换,没有业务的连接,攻击就没有了载体,如同网络的“物理隔离”。网闸其实就是模拟人工数据倒换,利用中间数据倒换区,分时地与内外网连接,但一个时刻只与一个网络连接,保持“物理的分离”,实现数据的倒换。这就象从前长江上的摆渡船,既没有“物理的连接”大桥,也实现了货物的交换。它的原理可以用 “两岸摆渡” 来通俗理解,关键是 “先断开连接,再传递数据”,彻底避免两个网络直接通信。

其实,除了电子政务内外网的交换需求,其他各种涉密网络与公用网络的互联都有这种需求,比如:广电的编播网和互联网、电力的控制网与办公网、海关的运行网和报关查询网络、银行的业务网与网上银行网络等等。

网闸的核心设计是切断两个网络的直接连接,同时通过  “数据摆渡”  机制实现有限的数据交换,具体分三步:

物理隔离:两个网络 “永不直接相连”

网闸内部有两个完全独立的处理单元(类似两台隔离的小服务器),分别连接两个需要隔离的网络(比如 “内网处理单元” 连涉密内网,“外网处理单元” 连非涉密外网)。这两个处理单元之间没有任何物理的网络连接(没有网线、无线信号,甚至没有共享的内存空间),相当于被一道 “物理鸿沟” 隔开 —— 这是和防火墙最本质的区别(防火墙是逻辑隔离,允许网络层直接通信)。

数据摆渡:像 “渡船” 一样传递数据

既然两个网络不能直接连,数据怎么传?网闸靠 “中间缓冲区” 和 “切换机制” 实现 “摆渡”:

当内网要向外网传数据时:

       ① 内网处理单元先接收内网的数据,进行安全检查(比如格式校验、病毒扫描);

       ② 内网处理单元将 “净化后” 的数据写入一个独立的中间缓冲区(类似 “河中间的小岛”);

       ③ 内网处理单元与中间缓冲区断开连接(物理层面的电气断开,确保内网和缓冲区无连接);

       ④ 外网处理单元与中间缓冲区建立连接,读取数据,再传递到外网;

       ⑤ 外网处理单元与中间缓冲区断开连接。

反之,外网向内网传数据时,流程相同,只是方向相反,且内外网处理单元绝对不会同时连接中间缓冲区(就像渡船不会同时在两岸和小岛之间架桥)。

数据净化 :只让 “干净的数据” 通过

网闸不是简单传递原始数据,而是会对数据进行 “剥离与过滤”:

协议剥离:彻底去掉数据携带的网络协议(如 TCP/IP、HTTP 等),只保留 “纯数据内容”(比如文件本身、数据库记录),避免协议漏洞被利用;

内容过滤:按预设规则检查数据(比如只允许 txt、pdf 文件,禁止 exe、zip;过滤含敏感词的文本);

病毒查杀:对文件型数据进行病毒扫描,防止恶意程序通过摆渡传入内网。

此外,网闸可以设置严格的 “单向传输” 策略(这也是 “光闸” 名称的由来之一,类似光线单向传播),比如政府涉密网向非涉密网推送公开信息时,可设置 “只允许内网→外网传输,禁止外网→内网”;即使是双向传输,也会限制传输的内容类型、频率、大小(比如每分钟最多传 10 个文件,单个不超过 10MB)。

   
28 次浏览       5
相关文章

一文了解汽车嵌入式AUTOSAR架构
嵌入式Linux系统移植的四大步骤
嵌入式中设计模式的艺术
嵌入式软件架构设计 模块化 & 分层设计
相关文档

企点嵌入式PHP的探索实践
ARM与STM简介
ARM架构详解
华为鸿蒙深度研究
相关课程

嵌入式C高质量编程
嵌入式操作系统组件及BSP裁剪与测试
基于VxWorks的嵌入式开发、调试与测试
嵌入式单元测试最佳实践

最新活动计划
基于 UML 和EA进行分析设计 9-9[北京]
软件架构设计方法、案例实践 9-24[北京]
AI辅助软件测试方法与实践 9-26[北京]
代码质量标准与评审方法 11-6[北京]
OCSMP认证:OCSMP-MBF 11-18[北京]
Web应用安全、入侵检测 12-11[北京]
 
 
最新文章
物联网安全概述
史上最详细的区块链技术架构分析
一文读懂区块链整体架构及应用案例
区块链技术架构
安全架构评审实战
最新课程
Web应用安全架构、入侵检测与防护
物联网关键技术、安全与边缘计算
区块链安全技术实践指南
云服务与安全架构
互联网安全开发方法与实践
成功案例
中国银行 信息安全技术及深度防御
北京 Web应用安全架构、入侵检测与防护
某财税领域知名IT服务商 Web安全测试
普瑞克斯 web安全设计、测试与优化
北京和利时 性能和安全性测试