あなたのLinuxマシンをセキュアにするために知っておくべきiptablesのルール10選

文:Jack Wallen(Special to TechRepublic) 翻訳校正:村上雅章・野崎裕子
2009-03-03 08:00:00
  • このエントリーをはてなブックマークに追加

#6:iptables -A INPUT -p tcp --syn --dport 25 -j ACCEPT

 これはSYNフラッド攻撃からマシンを守る際の基本となるルールである。ここで指定しているルールの例は、メールサーバ用のポートに対するDoS攻撃をブロックするためのものである(使用しているメールサーバに合わせて指定を変更することもできる)。このルールセットには他にも3つの指定方法がある。まず1つ目は、同じルールであるものの、ポート番号を、オープンしている任意のポートを使用したサービスに対するものに変更したルールを追加するというものである。2つ目は「iptables -A INPUT -p tcp --syn -m limit --limit 1/s --limit-burst 4 -j ACCEPT」という指定であり、SYNフラッド攻撃から実際にマシンを守るものである。3つ目は、「iptables -A INPUT -p tcp --syn -j DROP」という指定であり、これによってSYNフラッド攻撃のパケットがすべてドロップされるようになる。

#7:iptables -A INPUT -p tcp -m tcp -s MALICIOUS_ADDRESS -j DROP

 この指定は、あるIPアドレスから悪意ある攻撃を受けている場合の対策として使用できるものである。この指定を正しく動作させるには、迷惑行為元であるIPアドレス、つまりブロックしたいソースIPアドレスが判っていなければならない。ただし、この指定における大きな問題として、そのアドレスは詐称されている可能性もあるということがある。こういった場合、あなたのネットワークに対する正規のトラフィックをブロックしてしまうことになるのだ。このため、アドレスについてはしっかりと調査しておく必要がある。

#8:iptables -N port-scan

 この指定は、ステルススキャンを抑止する際の基本となるルールである。ステルススキャンとは、完全なTCP接続を行うことなく、オープンされているポートを検出するスキャンのことである。このルールを指定するには、以下の2行の指定を追加する必要がある。

iptables -A port-scan -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j RETURN
iptables -A port-scan -j DROP

 上記のルールセットでは「port-scan」という新たなチェインを作成している点に注意されたい。こういった名前を付ける必要はないものの、ものごとを整理しておいた方が管理しやすくなるのだ。また上記のルールセットにタイムアウト時間を追加しておくこともできる。

iptables -A specific-rule-set -p tcp --syn -j syn-flood
iptables -A specific-rule-set -p tcp --tcp-flags SYN,ACK,FIN,RST RST -j port-scan
このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]