web-dev-qa-db-ja.com

OSXをsyslogサーバーとして実行する

ラップトップ(OSX 10.9)のルーター(ASUS RT68U)からログを受け取りたい。これはsyslogをサポートし、OSXには [〜#〜] asl [〜#〜] (明らかに、syslogのスーパーセット)があります。 syslogサーバーとしてのOS X Lion の指示に従いましたが、コンソールには/ var/log/networkの下に何も表示されません(ディレクトリには表示されますが)。

私が取ったステップ:

  • ルーターの管理ページでラップトップのIPをsyslogに設定します。
  • ネットワークでリッスンするようにsyslogplistを更新しました。
  • ログインするディレクトリ(/ var/log/network)を作成しました。

これは、OSXの/ etcにある多くのものと同様に、説明とは少し異なるところです。サブフォルダー構造もある場合は、そこにconfを追加し、メインのものはそのままにしておく方がよいでしょう。そう、

  • ASLconfを追加しました。 ここに問題があると思います。

/ etc/asl/asus-router

# Asus router logs
? [A= Host router.asus.com] store_directory /var/log/network uid=0 gid=20 mode=0644 format=bsd rotate=seq compress file_max=5M all_max=50M
# I've also tried:
#? [= Host 192.168.1.1] …
#? [A= Host 192.168.1.1] …
#? [= Host router.asus.com] …
#? [= Sender router.asus.com] …
#? [A= Sender router.asus.com] …
#? [= IP router.asus.com] …
#? [A= IP router.asus.com] …
  • 新しいconfを取得するために、syslogplistをアンロードおよびロードしました。
  • SSH経由でルーターにログインしました。これにより、ログエントリが追加され、次の情報が得られました。

ルーターにSSH接続

nvram show | grep log_level
size: 50509 bytes (15027 left)
log_level=6

ps | grep syslog
 9358 iain  1488 S    /sbin/syslogd -m 0 -S -O /tmp/syslog.log -s 256 -l 6 -R 192.168.1.140:514 -L

最後に、ファイアウォールをオフにしてSudo tcpdump udp port 514を実行しました。ログが入ってくるのを見ることができますが、plistをリロードしてもコンソールに何も表示されません。

06:21:38.983497 IP router.asus.com.40420 > iains-air.syslog: SYSLOG authpriv.info, length: 86 

RFC5424 を調べて、ホスト名をどのように一致させることができるかを確認しましたが、RFCの場合と同様に、かなり抽象的です。私が考えられる唯一のことは/etc/syslog.confを編集することですが、私は何を考えているのかわかりません。

すべての提案や洞察は感謝して受け入れられます。

5
Iain

同じ問題が発生し、ネットワークデバイスからsyslogイベントをキャプチャするためにOSXプラットフォームで実行されているsyslogサーバーが必要でした。この問題を解決するには、次のリンクにある次のアプリケーション「Lan-Secure Mac SyslogServer」をダウンロードしてインストールします。 http://www.lan-secure.com/SyslogServerMac.htm

インストーラーを実行するだけの非常に単純なソフトウェアをインストールすると、OSXプラットフォームはsyslogイベントの収集を開始し、ソフトウェアコンソールに表示します。また、電子メール通知機能を有効にしたので、重大なイベントについてすぐに通知を受けることができます。

1
Mary.S