有人知道如何在Mac上启动Syslogd服务器来接受远程日志消息吗?
我启动了Syslogd,但它似乎不接受远程消息。
如果我执行一个netstat -an,就会发现udp端口514正在侦听。但是,如果我使用nmap从我的笔记本电脑扫描服务器,那么我看不到udp 514。端口很可能在某个地方被阻塞了。我检查过ipfw,但它看起来没有定义任何规则。
我看过很多文章说必须指定-r选项。这在Mac上是一样的吗?如何在Mac上做到这一点?
发布于 2011-04-02 04:39:50
Syslogd应该已经在您的系统上运行;您需要做的是启用它的UDP侦听选项。这是由/System/Library/LaunchDaemons/com.apple.syslogd.plist;结尾处的一个部分控制的,删除注释标记,使其看起来像这样:
<!--
Un-comment the following lines to enable the network syslog protocol listener.
-->
<key>NetworkListener</key>
<dict>
<key>SockServiceName</key>
<string>syslog</string>
<key>SockType</key>
<string>dgram</string>
</dict>
</dict>
</dict>
</plist>然后通过重新启动或运行以下命令重新加载syslogd守护程序:
sudo launchctl unload /System/Library/LaunchDaemons/com.apple.syslogd.plist
sudo launchctl load /System/Library/LaunchDaemons/com.apple.syslogd.plist更新:从OSXv10.7开始,苹果将com.apple.syslogd.plist改为二进制plist格式,其中不包括相关注释,并且不能作为纯文本进行编辑。使用新格式,PlistBuddy似乎是添加侦听器的最简单方法:
cd /System/Library/LaunchDaemons
sudo /usr/libexec/PlistBuddy -c "add :Sockets:NetworkListener dict" com.apple.syslogd.plist
sudo /usr/libexec/PlistBuddy -c "add :Sockets:NetworkListener:SockServiceName string syslog" com.apple.syslogd.plist
sudo /usr/libexec/PlistBuddy -c "add :Sockets:NetworkListener:SockType string dgram" com.apple.syslogd.plist
sudo launchctl unload com.apple.syslogd.plist
sudo launchctl load com.apple.syslogd.plist发布于 2018-01-04 20:30:37
有点老了,但我今天确实不得不这么做,当我四处寻找一个简单的软件来为我做这件事时,我遇到了这个问题。
我真正想做的就是短时间内观察一些syslog条目,看看来自服务器的是什么,所以我最终要做的是:
sudo tcpdump -lns 0 -w - udp and port 514 | strings这将简单地在输出中打印出发送到您机器的任何消息,以便您可以显示它。
无论如何,如果您这样做,并且它输出的消息正在传输到您的服务器,您可以确保它没有被您的防火墙或任何其他中间硬件阻止。
https://stackoverflow.com/questions/5510563
复制相似问题