web-dev-qa-db-ja.com

OpenWRTで接続をログに記録する方法は?

OpenWRTを使用して構成されたパブリックネットワークを持っています。

パブリックネットワークを流れるすべての接続(トラフィックではない)をログに記録するにはどうすればよいですか?

これらのエントリが必要です:

  • ソースMAC
  • 送信元/宛先IP
  • 時間
  • 可能であれば宛先ホスト名
  • 可能であればソースのホスト名
10
Georg Schölly

ファイアウォールのログルールでこれを行うことができます。これにより大量のトラフィックが生成されるため、ログを別のサーバーに送信することをお勧めします。 OpenWRT syslog-ng Installation に記載されているように、デフォルトのロガーはログを切り捨てる可能性があるため、syslog-ngのような別のロガーをインストールすることができます。ホスト名は、ルーティングされるまでにIPアドレスに変換されているため、取得されません。

ファイアウォールを生成するには、ShorewallまたはShorewall-liteを使用することをお勧めします。

Webトラフィックのロギングについて懸念がある場合は、すべてのアクセスをログに記録するSquidまたは他のプロキシを使用できます。あなたのOpen-WRTルーターはおそらくそれを実行しないでしょう。

4
BillThor

ルーターにssh

logread | grep -A 10 authenticated

Wed Jun  3 21:15:20 2015 daemon.info hostapd: wlan0: STA e0:xx:xx:xx:xx:xx IEEE 802.11: authenticated
Wed Jun  3 21:15:20 2015 daemon.info hostapd: wlan0: STA e0:xx:xx:xx:xx:xx IEEE 802.11: associated (aid 1)
...
Wed Jun  3 21:15:20 2015 daemon.info hostapd: wlan0: STA DHCPREQUEST(br-lan) 192.168.0.13 e0:xx:xx:xx:xx:xx

logread -rまたはsyslog-ngを使用してリモートサーバーに送信する方法を理解する( http://wiki.openwrt.org/doc/howto/log.syslog-ng

以下も参照してください。

0
here