web-dev-qa-db-ja.com

ルーターイベントをログに記録するためのRsyslogフィルター(syslogサーバー)

Rsyslog(Ubuntu 12.04サーバー)を設定して、ルーターからのイベントを記録しようとしています。私はこの古い buntuフォーラム投稿 を見つけました。

これまでのところ、イベントをルーターから記録することができます。ただし、/var/log/syslogにログインしていないので、/etc/rsyslog.confに有効なフィルターを設定して、ログに記録されたイベントを/var/log/linksys.logに設定しようとしています。これは私が問題を抱えている場所です。

  • 最初に、次のようにルーターのIPアドレスでフィルタリングしてみました。

    :fromhost-ip, isequal, "192.168.2.1" /var/log/linksys.log
    & ~
    

    これにより、必要に応じてログが正常にリダイレクトされます。唯一の問題は、auth.logにSSHDログを取得していないことです。言うまでもなく、これは受け入れられません。

  • 次に、すべてのイベントログに表示されるルーター名でフィルタリングを試みました。

    :msg,contains, "RV042" /var/log/linksys.log
    & ~
    

    これは何も記録もブロックもしませんが。

だから私は困惑しています。 SSHDが:fromhost-ipフィルターでフィルターされている理由がわかりません。 SSHDは、rsyslog(192.168.2.2)を持つマシン上のローカルです。私はこれに完全に不満を感じています。どんな提案でも大歓迎です。

4
jpetersen

私はそれを考え出した!これらのリンクは役に立ちました:

http://www.rsyslog.com/tag/udp/

http://www.rsyslog.com/doc/multi_ruleset.html

私がやったことは次のとおりです。

/etc/rsyslog.d/50-default.confを開き、ファイルの先頭で、他のすべてのデフォルトフィルターの前に、以下を追加しました。

# process remote messages
# define new ruleset and add rules to it:
$RuleSet remote
*.*           /var/log/linksys.log
# only messages not from 192.168.2.1 make it past this point

# bind ruleset to UDP listener
$InputUDPServerBindRuleset remote
# and activate it:
$UDPServerRun 514

# switch back to the default ruleset:
$RuleSet RSYSLOG_DefaultRuleset
3
jpetersen

/etc/rsyslog.confは編集するのに適切なファイルではありません。別の.confファイルをセットアップする必要があります。

$ Sudo nano /etc/rsyslog.d/20-router.conf

次に、必要な構成を追加します。

:fromhost-ip, isequal, "192.168.2.1" /var/log/linksys.log
& ~

これにより、他のログエントリが混乱することはありません。これを自分で試してみたところ、うまくいきました。

http://nickhumphreyit.blogspot.co.uk/2012/09/how-to-setup-syslog-server-on-ubuntu.html に感謝します。ドキュメント。

logrotateファイルを/etc/logrotate.d/linksysに追加することもできます。

/var/log/linksys.log {
       daily
       rotate 7
       delaycompress
       compress
       notifempty
       missingok
}
1
Ken Sharp