Files
iAOP/docs/网络拓扑与隔离策略.md
T

125 lines
7.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 现场勘查:采集网 / 工业环网 / 办公网拓扑与隔离策略
> 对应 EPIC #2「[M1] 数据准备」子任务 **#19**(0.5d):
> 现场勘查采集网 / 工业环网 / 办公网三层网络拓扑,编制**隔离策略**。
> 目标:边缘网关**严格只读、不反控**(PRD 5.1 / 9 章安全-网络),
> 满足等保 2.0 三级路线(PRD 12 章),不因网络问题阻塞上线
> (PRD 13 章:网络与机房环境 → 现场勘测前置)。
---
## 1. 目的与范围
- **目的**:明确三网拓扑与隔离边界,保证数据「采得进、传得出、控不住」——
平台只读采集现场数据,**任何场景下不得向生产控制系统下发控制指令**;
- **范围**:边缘网关、DCS/PLC(OPC UA / S7)、数据总线(Kafka)、
平台服务(应用/配置台/驾驶舱)的网络位置与互通规则;
- **交付物**:本拓扑与隔离策略文档 + 现场勘查清单(§6),
供实施工程师现场执行并回填实测数据。
---
## 2. 三网拓扑模型
```
┌─────────────── 采集网(OT · 现场层) ───────────────┐
│ DCS 系统 PLC(S7) 称重/能源表 │
│ (和利时 DCS) (西门子 S7-1200) (Modbus/称重/能源) │
│ │ │ │ │
│ └──────┬──────┴───────┬───────┘ │
│ 只读镜像点/OPC UA 只读会话 │
│ │ │
│ ┌─────▼─────┐ │
│ │ 边缘网关 │ ← 部署于采集网,严格只读 │
│ │(Edge GW) │ 断点续传、本地缓存 │
│ └─────┬─────┘ │
└────────────────┼────────────────────────────────────┘
│ 单向网闸 / 工业防火墙(仅数据外发)
┌───────────────▼────────────── 工业环网(服务层) ────┐
│ Kafka 数据总线 TDengine PostgreSQL MinIO │
│ │ AI 模型服务 / LLM 网关 / RAG │
│ (内部通信 mTLS;与办公网经应用防火墙隔离) │
└────────────────────────┬─────────────────────────────┘
│ 应用防火墙(仅 Web 端口)
┌────────────────────────▼──────── 办公网(IT) ───────┐
│ 驾驶舱(Web/移动) 配置台(OAuth2 + RBAC) │
│ 运维监控(Prometheus/Grafana) │
└──────────────────────────────────────────────────────┘
```
---
## 3. 各网段职责与设备
| 网段 | 定位 | 主要设备 | 关键约束 |
| --- | --- | --- | --- |
| 采集网(OT) | 现场生产层 | DCS、PLC、称重/能源表、边缘网关 | 网关**只读**采集;严禁反控;与办公网物理/逻辑隔离 |
| 工业环网 | 平台服务层 | Kafka、TDengine、PostgreSQL、MinIO、AI/LLM 服务 | 内部通信 mTLS;承载核心数据,最小暴露面 |
| 办公网(IT) | 使用与运维层 | 驾驶舱、配置台、监控 | 仅开放必要 Web 端口;RBAC + OAuth2 |
---
## 4. 隔离策略
1. **只读采集(最高优先级)**:边缘网关仅建立 OPC UA 只读会话 / S7 只读连接
(`read-only`),驱动层不实现任何写寄存器动作;验收含「零控制指令下发」。
2. **单向网闸/工业防火墙**:采集网 → 工业环网**仅数据外发**单向放行;
反向(工业环网 → 采集网)默认拒绝,杜绝远程控制通道。
3. **服务间 mTLS**:边缘网关 ↔ 数据总线(Kafka)双向证书认证
(PRD 8.2 认证鉴权①),传输加密、防伪造。
4. **应用防火墙**:工业环网 → 办公网仅放行 Web(HTTPS 443)与
驾驶舱/配置台必需端口;其余全拒绝。
5. **等保 2.0 三级路线**:按等保三级要求部署安全审计、边界防护、
恶意代码防范(网闸/防火墙规则纳入基线管理,见 PRD 12 章)。
---
## 5. 通信矩阵(源 → 目的)
| # | 源 | 目的 | 协议/端口 | 方向 | 措施 |
| --- | --- | --- | --- | --- | --- |
| 1 | DCS/PLC | 边缘网关 | OPC UA 4840 / S7 102 | 单向(读) | 只读会话;白名单测点 |
| 2 | 边缘网关 | 数据总线(Kafka) | mTLS 9093 | 单向(发) | 双向证书;断点续传 |
| 3 | 边缘网关 | 配置台(心跳/健康) | HTTPS 443 | 单向(发) | 健康度上报(丢失率/P99) |
| 4 | 驾驶舱 | 平台 API | HTTPS 443 | 双向 | OAuth2 + RBAC;只读 API |
| 5 | 配置台 | 平台 API | HTTPS 443 | 双向 | OAuth2 + API Key 双因子 |
| 6 | 运维监控 | 平台指标 | HTTPS 443(Prometheus) | 单向(拉) | 白名单网段 |
| 7 | 任何 | DCS/PLC 写寄存器 | — | **禁止** | 防火墙/网闸双向拦截 |
---
## 6. 现场勘查清单(实施现场回填)
| 勘查项 | 说明 | 回填内容 |
| --- | --- | --- |
| 网络拓扑图 | 客户提供或现场测绘 | 三网拓扑图文件(含设备/交换机/防火墙) |
| 采集网 IP 段 | DCS/PLC/网关网段 | 网段与子网掩码 |
| 工业环网 IP 段 | 服务层网段 | 网段与子网掩码 |
| 办公网 IP 段 | 使用层网段 | 网段与子网掩码 |
| 隔离设备 | 网闸/防火墙品牌型号 | 型号、版本、当前规则集 |
| OPC 服务器 | 各 DCS 的 OPC 服务器信息 | 地址、是否支持只读会话、认证方式 |
| PLC 访问权限 | S7 连接授权 | 只读连接是否可开通、证书要求 |
| 机房条件 | 网关/服务器部署位置 | 机柜、供电、散热、动环监控 |
| 安全合规要求 | 客户等保/内网管理要求 | 等保级别、VPN/堡垒机要求、审批流程 |
---
## 7. 落地检查表(验收)
- [ ] 边缘网关部署于采集网,DCS/PLC 仅开放只读会话;
- [ ] 网闸/工业防火墙配置完成:采集网 → 工业环网单向放行,反向拒绝;
- [ ] 边缘网关 ↔ Kafka 启用 mTLS(双向证书);
- [ ] 办公网访问仅经应用防火墙开放 HTTPS 443 等必要端口;
- [ ] 写寄存器/控制指令连通性测试为**零通过**(负向用例);
- [ ] 勘查清单回填完整,拓扑图归档至项目文档库;
- [ ] 等保三级边界防护要求映射完成(见 PRD 12 章路线图)。
---
## 8. 关联任务
- **#27「① 采集网只读隔离 + 网闸配置文档」**:本策略的网关侧落地
(网闸具体配置、规则集、验证脚本);
- **#16「DCS 点表需求模板」**:§2 网络隔离要求字段与本策略一致;
- **PRD 13 章**:网络/机房环境不符时启用云端 SaaS 演示环境或租赁方案。