故障排查门诊
十四个损坏的配置,按一个称职工程师实际的工作顺序,在镜头前诊断并修复。涵盖证书、端点、穿过分层网络的反向连接、命名空间偏移,以及在 Wireshark 中解读加密会话。
| 课时 | 14 |
|---|---|
| 时间 | 约 112 分钟 |
| 先修要求 | A4;证书相关课程为 B3 |
| 成本 | 免费:文字课程开放,视频和实验需要免费账号 |
学完你将能够做到
- 你能够按诊断顺序处理一次失败的连接,而不是靠猜。
- 你能够仅凭状态码就修复任何一种常见的证书故障。
- 你能够用 reverse connect 穿过 NAT 和 Purdue 分层网络。
- 你能够在 Wireshark 中解密并读取一个 OPC UA 会话。
- 你能分辨服务器问题、客户端问题和网络问题。
课程大纲
-
1
按诊断顺序排查8 分钟
先确认 TCP 可达,再用安全模式 None 调 GetEndpoints,然后检查 EndpointDescriptions,最后尝试建立安全会话。跳过某一步正是人们只能靠猜的原因。
Asset 对一台故障服务器执行的四步流程,附每一步的输出
-
2
修复被拒绝的连接8 分钟
端口关闭、端口错误、防火墙、服务器未监听。一分钟内把它们区分开。
资料 用 nc、ss 和一次客户端连接尝试对付四种不同的故障模式,附各自输出
-
3
修复端点 URL 不匹配8 分钟
服务器公布的是配置给它的主机名,而不是你实际拨号使用的那个。该改什么、在哪里改。
交付物 一台通告了不可达内部主机名的服务器,以及返回的 EndpointDescription
-
4
修复双向的信任失败9 分钟
完整地而不是只做一半的 rejected 到 trusted 流程。大多数人只修了一边。
Asset 一次失败的首次连接,以及修复它所需的两处信任列表改动,用 UaExpert 截图展示
-
5
修复证书中的主机名或 URI 不匹配8 分钟
SAN 条目、ApplicationUri,以及为什么用 IP 连接一张基于 FQDN 的证书会失败。
交付物 失败证书的 openssl 输出,与连接日志并列对照
-
6
修复断裂的证书链8 分钟
缺失的中间证书、没有的 CRL,以及缺少 keyCertSign 和 cRLSign 的企业 CA。
交付物 一次证书链校验失败,通过 openssl 追溯到缺失的密钥用法
-
7
修复时钟问题6 分钟
完全有效的证书却出现时间相关的校验失败,以及为什么 NTP 是一项安全控制措施。
交付物 一份有效证书在时钟偏差 40 分钟的机器上被拒绝,NTP 校时后被接受
-
8
用 reverse connect 穿过 NAT10 分钟
ReverseHello,用于 Purdue 分层网络的纯出站模式,以及一个不直观的行为:客户端必须先取回证书、失去通道,然后等待下一次 hello。
Asset 一次穿过 NAT 建立的 reverse connect 会话,附完整报文序列
-
9
诊断一个连上之后又断开的客户端8 分钟
会话超时、keep-alive、服务器在不受支持的 reverse connect 之后中止,以及证书重新协商。四种原因,一种症状。
Asset 四段抓包摘录,表面症状相同,根因却各不相同
-
10
修复命名空间索引偏移8 分钟
PLC 下载之后写死的 ns=。即时的修复办法和长久的修复办法。
资料 程序下载前后的 NamespaceArray,以及出问题的客户端代码和它的修复
-
11
找出无人上报的数据丢失8 分钟
队列溢出却报告为 Good。如何事后检测它并证明它发生过。
交付物 一份存在静默缺口的数据集,以及指出缺口位置的溢出位
-
12
诊断一台慢速服务器9 分钟
采样负载、过多的不同间隔、忘了关的诊断、连接风暴,以及在动手改动之前如何判断到底是哪一个。
Asset 一台过载服务器的服务器诊断数据,以及修复它的那一处改动
-
13
在 Wireshark 中读 OPC UA8 分钟
内置解析器、opcua 过滤器,以及逐条消息地读懂握手过程。
交付物 一次连接的完整带注释抓包,从 Hello 到第一个 Publish 响应
-
14
读取加密会话6 分钟
导出会话密钥并解码一条 SignAndEncrypt 通道:这是调试某些问题的唯一途径。
交付物 用导出的密钥解码一次加密抓包,显示其中的服务调用
实验
最后核对日期 2026 年 9 月 7 日,对照 OPC UA 1.05.07。OPC UA Connect 是教育资源,与 OPC Foundation 无隶属关系。