在 OS X Mountain Lion 下记录消息

Posted

技术标签:

【中文标题】在 OS X Mountain Lion 下记录消息【英文标题】:Logging pf messages under OSX Mountain Lion 【发布时间】:2014-03-05 21:36:52 【问题描述】:

我正在努力让 pf 在 Mountain Lion 下工作。由于 Apple 似乎忽略了包含 pflogd,我们必须自己制作:

/sbin/ifconfig pflog0 create
/usr/sbin/tcpdump -lnettti pflog0 | /usr/bin/logger -t pf

这会将消息转储到 system.log 中,但我正在尝试找到一种方法将它们分类为自己的。我可以用 ipfw 解决这个问题,但是 ipfw 留下了很好的日志,例如:

Mar  5 11:34:44 flamingo kernel[0] <Debug>: ipfw: 65534 Deny ICMP:3.10 192.168.4.233 192.168.92.60 in via en0

对于 pf,我得到的日志如下:

Mar  5 11:57:50 flamingo.mydomain.com pf[51938]: 00:00:00.000000 rule 1/8(ip-option): pass in on en0: 172.24.32.41 > 224.0.0.1: igmp query v2

使用 OSXes 'logger',我可以使用 -p 来设置一个工具,但随后日志会悄悄消失。我找到了使用“syslog -s -k facility whatever”的参考资料,但是当我将 tcpdump 通过管道传输到 syslog 时,该进程会在几秒钟或几分钟后终止。

我如何 A) 了解如何保持 syslog 运行,或 B) 设置或预测我可以从 asl.conf 中的记录器过滤结果的内容?

【问题讨论】:

【参考方案1】:

您缺少一种获取日志记录的要素。

这对我有用:

root# touch /var/log/pffirewall.log` to create the log file.  

然后,将以下行添加到/etc/syslog.conf

local2.* /var/log/pffirewall.log

现在您的记录器进程输出将显示在/var/log/pffirewall.log 中。显然 logger 仍然与旧的 syslog 设施和 /etc/syslog.conf 相关联。

【讨论】:

以上是关于在 OS X Mountain Lion 下记录消息的主要内容,如果未能解决你的问题,请参考以下文章

OS X Mountain Lion 更新后的 Git 克隆错误

sh Mac OS X 10.7 / 10.8 / 10.9(Lion / Mountain Lion / Mavericks)Bootstrapping

OS X Mountain Lion 电源断言

如何在 Mac OS X Mountain Lion 上编译 libnoise

在 Mac OS X Mountain Lion Server 中设置 PHP 路径

Mac OS X Mountain Lion 10.8 中的 Firefox X11