iptables

第7回 iptablesでできるDoS/DDoS対策


鶴長 鎮一
2010/7/14


iptablesを使わずにLinuxでできるDoS/DDoS対策

 LinuxのカーネルパラメータにはDoS/DDoS対策に有効なものがあります。これを用い、iptablesを使わずにDoS/DDoS対策を行う方法を解説します。最近のディストリビューションならば標準で対策されているため、追加設定は不要です。

SYNクッキーを有効にする(SYN攻撃対策)

 以前テンプレート3で、パケットのステートフル性を確認する方法を紹介しました。ステートフル性を確認することで、3ウェイハンドシェイクを満たさないパケットを破棄できます。

 しかし、SYN→SYN/ACK→ACKを完了していながらデータを送信してこない「コネクション完了型」のアタックに対して、この手法は役に立ちません。そこで、「SYN cookies(SYNクッキー)」を使用します。SYNクッキーを使用することで、ACKの中に含まれる確認応答番号を計算し、正しいセッションであることを確認できます。セッションの正当性を確認してから処理を行うことにより、無駄な処理でコネクションなどのリソースが費やされるのを防ぐことができます。

 LinuxでSYNクッキーが有効になっているか否かは、/proc/sys/net/ipv4/tcp_syncookiesファイルの内容で確認できます。「1」と書き込まれていれば有効になっています。有効になっていない場合は、以下のコマンドで有効にすることができます。

# echo '1' > /proc/sys/net/ipv4/tcp_syncookies
  または、
# sysctl -w net.ipv4.tcp_syncookies=1
SYNクッキーを有効にする

 ただし、上記の方法ではマシンを再起動すると設定が消えてしまいます。再起動後もSYNクッキーを有効にするには、/etc/sysctl.confファイルに以下の行を追記します。

net.ipv4.tcp_syncookies=1 ←追加
/etc/sysctl.confで再起動後も設定を有効にする

 SYNクッキーを有効にするとACKの中に含まれる確認応答番号を計算するため、パケット処理において多少オーバーヘッドが発生します。パケットの流量によっては、CPUの処理能力がネックになる可能性があることを覚えておきましょう。

ブロードキャストpingに答えない(Smurf攻撃対策)

 Smurf攻撃は、ターゲットにしたホストに対して、送信元アドレスを偽造したICMP pingエコーを大量に送り付ける攻撃方法です。pingエコーを特定のホストではなくブロードキャストアドレスに対して送信した場合、そのネットワーク上のすべてのコンピュータから応答パケットが投げ返されます。Smurf攻撃はこれを悪用するため、Linux側でブロードキャストpingに答えないようにします。

# echo '1' > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
  または、
# sysctl -w net.ipv4.icmp_echo_ignore_broadcasts=1
ブロードキャストpingに応答しない

 マシン再起動後も設定を有効にするには、/etc/sysctl.confファイルに以下の行を追記します。

net.ipv4.icmp_echo_ignore_broadcasts=1 ←追加
/etc/sysctl.confで再起動後も設定を有効にする

次回予告

 テンプレートを利用したiptablesの解説は今回が最後です。最終回ではitablesを快適に使うためのTipsを紹介します。

3/3
 

Index
習うより慣れろ! iptablesテンプレート集 改訂版
第7回 iptablesでできるDoS/DDoS対策
  Page 1
はじめに
DoS/DDoS対策の難しさ
2通りプラス1の対策方法
テンプレート12 応答回数を制限する(limit編)
  Page 2
テンプレート13 応答回数を制限する(hashlimit編)
  Page 3
iptablesを使わずにLinuxでできるDoS/DDoS対策
次回予告

連載 習うより慣れろ! iptablesテンプレート集


 Linux Squareフォーラム セキュリティ関連記事
連載:習うより慣れろ! iptablesテンプレート集(全4回)
初心者にとって、iptablesは難しい。そこで、学習の第1歩としてテンプレートを自分の環境に適応させることから始めよう
連載:ゼロから始めるLinuxセキュリティ(全11回)
奥が深いセキュリティ対策の世界をゼロから解説。ホストレベルのセキュリティからファイアウォール、IDSの構築、ログ管理方法まで、システム管理者必見
特集:WebDAV時代のセキュリティ対策[前編]
WebDAVのメソッドは便利な反面、セキュリティホールとなり得る。しかし、適切な対策を講じることでメソッドの危険性は取り除くことができる
特集:FreeS/WANによるIPSecの導入と運用[前編]
LinuxでIPSecを利用するには、「FreeS/WAN」というIPSecスタックを用いることになる。まず、これをインストールすることから始めよう
特集:Linux以外のIPSecスタックとの相互接続[前編]
別のOSや異なるIPSecスタックとの相互接続が可能なら、その用途は大幅に広がる。前編では、FreeBSDのKAMEと相互接続を試みる
特集:sshでセキュアネットワーク
サーバにリモートログインする場合は、暗号化して転送するsshを使おう。sshをサーバとクライアントにインストールすれば、インターネット上でも安全な通信が可能になる

MONOist組み込み開発フォーラムの中から、Linux関連記事を紹介します

TechTargetジャパン

Linux Square フォーラム 新着記事

@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

RSSフィード

キャリアアップ



- PR -
@IT Sepcial

イベントカレンダー

PickUpイベント

- PR -
もっと見る
- PR -

お勧め求人情報

ホワイトペーパーTechTargetジャパン

@IT Sepcial
ソリューションFLASH