iptables ログを出力する
提供: セキュリティ
スポンサーリンク
iptables は、通信ログをロギングすることができます。
概要
iptables は、LOG ターゲットを使用し、ルールにマッチしたパケットの情報を syslog に出力できます。 標準では、ファシリティは kern 、プライオリティは warn で、 /var/log/messages のログファイルに出力されます。
ログのオプションは、LOG ターゲットのあとに指定します。
iptables COMMAND chain rule-specification -j LOG log_option
ログオプション
- --log-level level
- syslog のプライオリティを level に指定します。
- --log-prefix prefix
- ログに出力メッセージのプレフィックス(prefix)を指定します。
使い方
ログを出力する
以下は、TCP の入力をすべてログをとる例です。
sudo iptables -A INPUT -p tcp -j LOG
デフォルトでは、ログは、/var/log/messages に出力されます。
ほかのホストからアクセスをしてみます。
nmap -sS IPアドレス 22
/var/log/messages には、次のような行がたくさん出力されます。
Aug 11 23:33:31 u1 kernel: IN=eth1 OUT= MAC=マックアドレス SRC=アクセス元IPアドレス DST=ターゲットのIPアドレス LEN=44 TOS=0x00 PREC=0x00 TTL=38 ID=53412 PROTO=TCP SPT=64558 DPT=8007 WINDOW=1024 RES=0x00 SYN URGP=0
1行が長いので、折り返しを入れてあります。
不正なパケットをロギングしてブロックする
入力された不正パケットをロギングして、ブロックします。
iptables -A INPUT -m state --state INVALID -j LOG iptables -A INPUT -m state --state INVALID -j DROP
出力された不正パケットをロギングして、ブロックします。
iptables -A OUTPUT -m state --state INVALID -j LOG iptables -A OUTPUT -m state --state INVALID -j DROP
関連項目
ツイート
スポンサーリンク