hibomaのはてなダイアリー このページをアンテナに追加 RSSフィード

 | 

2011::06::10

[][][] Snow Leopardsyslogd で、UDPポートでLISTENしてリモートからログを受け取る設定

結論から言うと http://forum.soft32.com/mac/Syslogd-10-enabling-UDP-listening-514-ftopict113994.html の手順が正解です。

Googleで調べた感じだとLeopard用の設定方法が散見されます。が、Snow Leopard では動かないようでした。同様の問題で困ってる人は下記の内容がヘルプになるかと思います。


調べた内容

  • 「com.apple.syslogd.plist で 起動オプションに -u を渡せばok」みたいな情報あるけど
    • Snow Leopard では駄目。Leopard用?
  • 手動で com.apple.syslogd.plist に NetworkListener 以下のセクションを追加するとよい
<key>NetworkListener</key> 
<dict> 
<key>SockServiceName</key> 
<string>syslog</string> 
<key>SockType</key> 
<string>dgram</string> 
</dict> 

反映させる手順

# バイナリの.plistXMLに変換。(バイナリのままいじれるエディタあるけどね)
$ sudo plutil -convert xml1 /System/Library/LaunchDaemons/com.apple.syslogd.plist

# 編集せずにgistに貼ったソースで上書きしてもよいです
$ sudo vi /System/Library/LaunchDaemons/com.apple.syslogd.plist


# 構文ミスが無いか確認
$ plutil -lint /System/Library/LaunchDaemons/com.apple.syslogd.plist


# バイナリの.plistに戻す ( XMLのままでも構わない )
$ sudo plutil -convert binary1 /System/Library/LaunchDaemons/com.apple.syslogd.plist


# 設定を反映させてsyslogd 再起動
 $ sudo launchctl unload /System/Library/LaunchDaemons/com.apple.syslogd.plist
 $ sudo launchctl load /System/Library/LaunchDaemons/com.apple.syslogd.plist

$ sudo launchctl stop com.apple.syslogd
$ sudo launchctl start com.apple.syslogd

最後netstat や lsof 等で 514番ポートでLISTENしているかどうかを確認しましょう。/etc/syslog.conf の確認も忘れずに。

なお http://www.opensource.apple.com/source/syslog/syslog-69.0.3/syslogd.tproj/com.apple.syslogd.plist に.plistファイルオリジナルソースが置いてあります


後日談

家のMacbook Proで 無線ルーターからのsyslogを受け取って遊んでいます

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

 |