我试图testing一个使用ssl的rsyslog的设置。 我(可能是错误的) – 理解如果我使用sslstream量的starttls,我应该能够接收ssl和纯系统日志stream量在同一个tcp端口作为ssl会话协商,如果需要的话。
不过,我有一个testing平台的系统日志客户端和testing平台ssl系统日志客户端,但我无法做到这一点。 我可以根据$ InputTCPServerDriverMode为0或1的设置获取stream量,但不能同时设置。
所以我真的问:这甚至可能吗? 如果是这样,什么是rsyslogconfiguration语法来实现它?
我明白,rsyslog可以与starttls,但现在我开始怀疑它。
目前服务器configuration看起来有点像这样:
$ ModLoad imuxsock $ ModLoad imklog $ ModLoad imtcp.so $ DefaultNetstreamDriver gtls $ DefaultNetstreamDriverCAFile /root/syslog-ca-cert.crt $ DefaultNetstreamDriverCertFile /root/syslog-server-cert.crt $ DefaultNetstreamDriverKeyFile /root/syslog-server-key.key $ InputTCPServerStreamDriverMode 1 $ InputTCPServerStreamDriverAuthMode x509 / certvalid $ InputTCPServerRun 514
根据rsyslog'd文档 ,gtls驱动程序支持所有非encryption传输,就像ptcp驱动程序将InputTCPServerStreamDriverMode设置为0或TLS模式设置为1一样。
它还指出:
注意:模式0不提供任何超过ptcp驱动程序的好处。 这种模式存在技术上的原因,但不应该使用。 它可能在将来被删除。
因此,看来你必须selectencryption或不encryption,至less对于特定的IP地址+端口组合。 所以你将不得不设置两个端口,一个使用ptcp驱动程序,另一个使用gtls驱动程序。 或者,如果每个有日志logging的系统都支持encryption,只能使用encryption的系统日志连接