我怎样才能强制syslogstream量使用TCP而不是UDP?

Centos 5.x

我想我的系统日志stream量使用TCP而不是UDP。

CentOS股票系统日志守护进程是否支持这个? 如果是的话,我会在哪里设置该选项?

-M

我相信在Centos5上的股票系统日志守护进程不支持这一点。 另外请注意,端口514 / tcp是为'shell'访问保留的,但我认为这是不赞成的。

查看rsyslog ,它已成为Ubuntu和RedHat 6 beta (和Centos 6)中默认的syslog守护进程。 它可以在没有任何改变的情况下读取你现有的syslog.conf文件 ,也可以扩展安静一点。 它也支持通过tcp的syslog 。

我发现syslog-ng有更好的文档logging,并有更多的社区示例。 但是,rsyslog.conf的语法与syslog.conf的语法更相似。 如果使用syslog-ng,那么可以随意使用syslog-ng。 如果你有一些现有的syslog.conf,那么查看rsyslog。

在我的Ubuntu系统上,我将旧的syslog.conf放入/etc/rsyslog.d/50-default.conf,并马上运行。 后来,我能够添加几个我自己的function,例如将远程系统日志存储在/var/log/syslogs/$REMOTE_HOST/$FACILITY.log。


更新20110524:

有关这方面的更多信息,请参阅http://tools.ietf.org/html/rfc5426 ,其中特别build议通过TLS系统日志 。

看看支持TCP的syslog-ng可能是值得的(并且是一个更好的解决scheme)。

http://freshmeat.net/projects/syslog-ng/