带有 HTTPS 的 NXLog:如何配置 SSL 和证书?
Posted
技术标签:
【中文标题】带有 HTTPS 的 NXLog:如何配置 SSL 和证书?【英文标题】:NXLog with HTTPS: How to configure SSL and certificate? 【发布时间】:2018-12-19 14:23:32 【问题描述】:我正在尝试使用 NXLog 在 https 中发布到服务。 不幸的是,我每次尝试发帖时都会收到此错误:
2018-12-19 09:11:14 ERROR SSL certificate verification failed: unable to get local issuer certificate (err: 20)
我们试图访问的服务是一个带有“让我们加密”证书的 HTTPS 端点。使用 Postman 等工具发布到端点没有问题。但是 NXLog 一直在抱怨。
我尝试使用 https 模块的多个选项,但由于我不太了解它们是什么,而且 documentation 不是很有帮助,我需要帮助。
我尝试将HTTPSAllowUntrusted
设置为TRUE
,但它并没有改变任何东西。还尝试提供来自 mozilla 的 .pem
文件以及 HTTPSCADir
和 HTTPSCAFile
中的各种来源,但这也没有任何改变。
这是我最新的.conf
文件尝试。欢迎任何能够配置 SSL 的帮助。
Panic Soft
#NoFreeOnExit TRUE
define ROOT C:\Program Files (x86)\nxlog
define CERTDIR %ROOT%\cert
define CONFDIR %ROOT%\conf
define LOGDIR %ROOT%\data
define LOGFILE %LOGDIR%\nxlog.log
LogFile %LOGFILE%
Moduledir %ROOT%\modules
CacheDir %ROOT%\data
Pidfile %ROOT%\data\nxlog.pid
SpoolDir %ROOT%\data
<Extension _syslog>
Module xm_syslog
</Extension>
<Extension _charconv>
Module xm_charconv
AutodetectCharsets iso8859-2, utf-8, utf-16, utf-32
</Extension>
<Extension csv>
Module xm_csv
Fields $contentName, $deviceName, $startTime, $endTime, $contentId, $deviceId
FieldTypes string, string, string, string, string, string
Delimiter ,
</Extension>
<Extension exec>
Module xm_exec
</Extension>
<Extension json>
Module xm_json
</Extension>
<Input in>
Module im_file
File "C:\\MagicInfo Premium\\runtime\\upload\\pop\\report\\*W*.csv"
Exec csv->parse_csv(); to_json();
</Input>
<Output http>
Module om_http
URL https://my-service.com/api/v1/proof-of-play-log/
HTTPSCAFile %CERTDIR%/cacert.pem
ContentType application/json
</Output>
<Route 1>
Path in => http
</Route>
总结一下:我需要什么 .pem 文件以及需要设置什么参数才能对具有“让我们加密”证书的 https 端点进行简单的发布。
编辑
最后,我意识到 NXLog 完全是错误的,而且编码很糟糕,所以我们改用另一个解决方案......
【问题讨论】:
有问题的网站是什么?我将看看 OpenSSL 调试器。还可以尝试将网站放入在线 ssl 检查器中。我的猜测是,他们通过省略中介证书错误配置了服务器,但它在其他地方也能正常工作,因为它是一个常见的中介,我已经在缓存中用于您在其他网站上使用过的 Postman 等工具。 最后,我意识到 NXLog 完全是错误的,而且编码很糟糕,所以我们改用另一个解决方案...... 【参考方案1】:可能缺少中间体
这种情况很少见,可能无法解决您的问题,但它可以解决某些症状完全相同的问题。
不可信的选项可能会失败,因为它可能允许不可信的证书链,但不允许孤立/不完整的链(略有不同)。不过,再想一想,这可能无法区分......
但如果是这种情况,您想要包含的额外证书是https://letsencrypt.org/certificates/“活动”和“备用”部分中列出的中间体
【讨论】:
会试一试。所以只是为了确保我理解。我把这些文件都放在一个文件夹里,用HTTPSCADir
表示这个文件夹?
文件的命名有影响吗?我是否需要 NXLog 中的其他配置字段才能使其工作?以上是关于带有 HTTPS 的 NXLog:如何配置 SSL 和证书?的主要内容,如果未能解决你的问题,请参考以下文章
如何为 Heroku 应用程序配置带有 SSL 的 Amazon Route
在哪里/如何编辑 nginx.conf 以在 Elastic Beanstalk 上启用带有附加标头的 SSL