我们已经配置了一个接受客户端日志的 Syslog-ng 中继服务器。客户端和中继服务器使用 TLS 通信和转发日志。我们注意到我们的客户端出现以下错误。
我关注了Configuring syslog-ng PE clients设置 TLS 通信。
Dec 13 05:29:13 syslog-ng[10769]: Syslog connection established; fd='16', server='AF_INET(1**.1**.1.105:6514)', local='AF_INET(0.0.0.0:0)'
Dec 13 05:29:13 syslog-ng[10769]: Error setting up TLS session context; tls_error='PEM routines:PEM_read_bio:no start line'
问题是什么,我该如何解决?
最佳答案
PEM 文件中的客户端证书前面应该有一行,如下所示:
-----BEGIN CERTIFICATE-----
如果该行在文件中不存在,您看到的“无起始行”错误消息就是您得到的消息。
检查客户端 PEM 文件是否包含该行。 (它只是一个文本文件,您可以使用任何编辑器查看它。)如果它不包含该行,则说明该文件在您将其复制到客户端时已损坏,或者原始文件可能不正确。
如果您在 Unix 或 Linux 机器上生成 PEM 文件,然后将其复制到 Windows 机器,您可能需要将文件中的行尾从 LF 更改为 CR LF,以便它正确阅读。
关于ssl - Syslog-ng 证书问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47806877/