ハマログ

株式会社イーツー・インフォの社員ブログ

iptablesのログを出力して確認する方法

仕事でiptablesのログを出して調査する機会がありました。
過去何回か同じような機会があったんですが、その度に過去のissue確認したり、ウェブで検索したり同じことやっているので、どうせならここに書いとこう。
ログを出力する方法は、filter,natなど共通で、ターゲットにLOGを指定します。
-j LOG
こんな感じです
iptables -A INPUT -p tcp -j LOG
Ubuntsu Linuxで試したところ、/var/log/kern.logにログが出力されました。 INとOUTが別れており、IPアドレス、ネットワークインタフェースの情報、長さなどの情報が確認できます。
Jul  7 14:21:45 localhost kernel: [9999.999999] IN=eth0 OUT= MAC=- SRC=99.99.99.99 DST=88.88.88.88 LEN=52 TOS=0x00 PREC=0x00 TTL=51 ID=999 DF PROTO=TCP SPT=99999 DPT=80 WINDOW=666 RES=0x00 ACK FIN URGP=0
Jul  7 14:21:45 localhost kernel: [9999.999999] IN= OUT=eth1 SRC=99.99.99.99 DST=192.168.1.1 LEN=52 TOS=0x00 PREC=0x00 TTL=50 ID=99999 DF PROTO=TCP SPT=99999 DPT=80 WINDOW=99999 RES=0x00 SYN URGP=0
色々なオプションが指定できるようです。 NATのPOSTROUTINGに対してログを出力する。ログの先頭に、”NAT “のプレフィックスを付与する。
iptables -t nat -I POSTROUTING 1 -j LOG --log-prefix "NAT "
特定のポートのみ出力する
-A INPUT -p tcp --dport 80 -j LOG
今回、内部ネットワークのどの地点まで到達しているかの調査だったのですが、ログの情報がとても役に立ちました。

インフラの人たいへんだなーと思いながら消耗した一日でした。

おわり。
FWiptablesLinuxlogLoggingufwファイヤウォールログ

kaneko tomo   kaneko tomo   2017年7月4日


関連記事

Laravel NotificationsでChatworkに通知する

Laravel5.3より、Notificationsという仕組みが備わったので、…

NetBeansをPSR-1/PSR-2 standards準拠に設定する

PSR-1: 基本コーディング規約 PSR-1(日本語) PSR-2: コーディ…

Homebrewで違うバージョンのMySQLを入れようとしたら若干ハマった

はいどーも! HomebrewでMySQL5.6をインストールしたくて、とりあえ…


← 前の投稿

次の投稿 →