希望我的问题是正确的。
我目前正在尝试将 syslog 从 Ubuntu 机器转发到 Qradar 机器。它们在同一个网络上,我已经设法让 Rsyslog 工作,但 Qradar 不支持它。因此,我不得不切换到 Syslog-ng。
IBM 官方文档指出,这只需在 /etc/syslog-ng/syslog-ng.conf 文件中添加几行即可:
source qr_source {
internal();
system();
};
filter qr_filter {
facility(auth, authpriv);
};
destination qr_destination {
tcp("<qradar_ip_address>" port(514));
};
log{
source(qr_source);
filter(qr_filter);
destination(qr_destination);
};
不幸的是,当我这样做并且必须重新启动 syslog-ng 时,它会给我错误。
******@****:/etc/syslog-ng$ sudo service syslog-ng restart
Job for syslog-ng.service failed because the control process exited with error code.
See "systemctl status syslog-ng.service" and "journalctl -xe" for details.
******@*****:/etc/syslog-ng$ syslog-ng
syslog-ng: Error setting capabilities, capability management disabled; error='Operation not permitted'
[2021-05-23T19:53:13.519942] Error opening control socket, bind() failed; socket='/var/lib/syslog-ng/syslog-ng.ctl', error='Address already in use (98)'
[2021-05-23T19:53:13.536721] Error creating persistent state file; filename='/var/lib/syslog-ng/syslog-ng.persist-', error='Permission denied (13)'
显然我是 sudo 用户。我还注意到生成错误的代码行是与日志相关的。我确实添加了 SYSLOGNG_OPTS="--no-caps"。我确实尝试过停止并启动而不是重新启动。我真的不知道如何继续,我有点绝望。如果有人能提供任何帮助,我将不胜感激。
谢谢。