gpt4 book ai didi

rsyslog 使用不同的 TLS 配置记录到多个服务器

转载 作者:行者123 更新时间:2023-12-02 18:06:06 26 4
gpt4 key购买 nike

是否可以将 rsyslog 记录到具有不同 TLS 配置的多个服务器?我们当前正在使用以下内容登录到本地系统日志服务器:

$DefaultNetstreamDriver gtls
$DefaultNetstreamDriverCAFile /etc/pki/rsyslog/ca.pem
$DefaultNetstreamDriverCertFile /etc/pki/rsyslog/local-cert.pem
$DefaultNetstreamDriverKeyFile /etc/pki/rsyslog/local-key.pem
$ActionSendStreamDriverAuthMode anon
$ActionSendStreamDriverMode 1

*.* @@10.50.59.241:6514

我们现在正在设置第三方日志记录,并希望在那里使用 TLS。他们指出我们应该像这样设置 rsyslog:

$DefaultNetstreamDriverCAFile /path/to/their/ca.crt
$ActionSendStreamDriver gtls
$ActionSendStreamDriverMode 1
$ActionSendStreamDriverAuthMode x509/name
$ActionSendStreamDriverPermittedPeer *.theirhost.theirdomain

*.* @@theirhost.theirdomain:6514

我认为我可以简单地将 CA 合并到一个文件中并将 DefaultNetstreamDriverCAFile 设置为该文件。但是,如果我只是将剩余的第二组选项添加到 rsyslog.conf 的底部,那么允许的对等点会导致与第一台主机发生冲突。那么有没有什么方法可以配置 rsyslog(我们目前使用的是 7.4.8),以便对两个不同的目标使用截然不同的 TLS 设置?

最佳答案

经过一番绞尽脑汁,我自己想出了这个办法。首先,某些版本的 rsyslog 中存在一个错误,该错误会阻止其工作(您永远不会看到与一台或多台目标服务器建立的连接),因此请确保您使用的是 7.6 或更高版本的 rsyslog。

确保您的 CA 文件具有其中列出的所有目标所需的任何 CA。顺序并不重要。那么你的conf文件应该是这样的:

$DefaultNetstreamDriverCAFile /etc/pki/rsyslog/ca.pem

*.* action(type="omfwd"
protocol="tcp"
Target="10.50.59.241"
Port="6514"
StreamDriverMode="1"
StreamDriver="gtls"
StreamDriverAuthMode="anon"
)

*.* action(type="omfwd"
Protocol="tcp"
Target="some.other.host.com"
Port="6514"
StreamDriverMode="1"
StreamDriver="gtls"
StreamDriverAuthMode="x509/name"
StreamDriverPermittedPeers="*.some.other.host.com"
)

关于rsyslog 使用不同的 TLS 配置记录到多个服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22052111/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com