3 排错
一般建议
- 从理解开始,哪个组件充当TLS客户端,哪个组件充当问题的TLS服务器。
Zabbix server, proxies and agents,取决于它们之间的交互,都可以作为TLS服务器和客户端。
例如,Zabbix server连接到agent进行被动检查,充当TLS客户端。该agent是TLS服务器的角色。
Zabbix agent,请求从proxy的主动检查列表,充当TLS客户端。prox服务器是TLS服务器。zabbix_get
并且zabbix_sender
程序始终作为TLS客户端。
* Zabbix使用相互验证。
每一方验证对方,并可拒绝连接。
例如,如果agent的证书无效,则连接到agent的Zabbix server可以立即关闭连接。反之亦然 - 如果服务器不被agent信任,Zabbix agent可关闭来自服务器的连接。
检查双方的日志文件 - 在TLS客户端和TLS服务器中。
拒绝连接的一方可能会记录为什么被拒绝的准确理由。其他方面经常报告相当普遍的错误(例如“Connection closed by peer”, “connection was non-properly terminated”)。有时配置错误的加密会导致混淆的错误消息,而不会指向真正的原因。
在下面的小节中,我们尝试提供一个(简单的)的消息收集和可能有助于故障排除的可能原因。
请注意,不同的加密工具包(OpenSSL,GnuTLS,mbed TLS(PolarSSL))在相同的问题情况下经常产生不同的错误消息。
有时错误消息甚至依赖于两端的密码工具包的特定组合。