syslog 中的 local6(和所有其他 local#)设施是什么?

Ala*_*Ali 51 syslog

我的理解

在 *nix 服务器上,我们使用 配置发送日志facility.severity,其中facility是系统的(我们称之为)“组件”的名称,例如内核、身份验证等;并且severity是设施记录的每个日志的“级别”,例如info(信息)、crit(关键)日志。

因此,如果我想发送内核关键日志,我将使用kern.crit.

设施和严重性的组合被称为优先级,例如......

  • 优先级 = kern.crit
  • 设施 = kern
  • 严重性=暴击

还有所谓的“设施”local0local7

这些local#设施到底是什么?我特别询问local6,因为它通常是我在搜索中找到的最常见的。

我的问题实际上是因为我正在配置 Snort(SourceFire 入侵传感器)来发送日志,所以我想知道facility使用哪个。不过,我的问题不是 Snort 特定的,因为local#设施无处不在;例如,在 Cisco 和 IBM 的 WebSphere Application Server 上。

研究

Ala*_*Ali 42

基本信息

这些设施local0local7在“自定义”未使用的设施,系统日志提供给用户。如果开发人员创建了一个应用程序并希望将其记录到 syslog,或者如果您想将任何内容的输出重定向到 syslog(例如,Apache 日志),您可以选择将其发送到任何local#设施。然后,您可以使用/etc/syslog.conf(或/etc/rsyslog.conf) 将发送到该local#文件的日志保存到文件中,或将其发送到远程服务器。

回答我的问题

我问这个问题是因为我想将日志发送到外部服务器,所以我想知道选择哪个,而不是“将日志写入local#设施”。我不得不回到 Snort 文档以找出他们正在向local#设施写入什么内容。


小智 10

Local#设施专供本地使用,并且没有任何标准定义(如 RFC)哪个应用程序使用哪个。所以你可以选择任何你想要的。当然,一些应用程序及其开发人员同意使用特定的工具,但这不是官方标准(如 sudo - LOCAL2、Snort - LOCAL5,...)。