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

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

#3:iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

 これによって、以前に開始され、受け付けられたコネクションすべてに対するルールのチェックがバイパスされるようになる。「ESTABLISHED」引数および「RELATED」引数は「--state」オプションに属するものである。「ESTABLISHED」引数は「既に確立されているコネクションに属しているパケットすべて」を意味しており、「RELATED」引数は「既に確立されているコネクションには属していないものの、既に確立されているコネクションに関連しているパケットすべて」を意味している。iptablesは、内部に持っている「状態遷移機械」とカーネルレベルの「conntrack」モジュールを用いてコネクションの追跡を行うようになっている。これによってiptablesは、コネクションの可否を決定できるようになるわけだ。この指定を活用することで、管理者は自らの作業を低減できるようになる。

 以下は、こういった状態の遷移である。ローカルユーザーがコネクションを開設しようとすると、該当パケット(そのコネクションを開設するための)が「PREROUTING」チェイン内に「NEW」という状態で記録される。ローカルユーザーの元に応答パケットが返ってくると、「PREROUTING」チェイン内の状態は「ESTABLISHED」に変更される。このため、状態が「ESTABLISHED」になった時点で、適切なiptablesのルールを用いて許可されることになるのだ。

#4:iptables -N logdrop

 この便利なチェインを用いることで、iptablesによってドロップされたすべてのパケットをログとして記録することができる。こういったことはもちろん、このチェインを作成するだけでは実現できない。実際には、次の2つのルールを追加する必要がある。それは「iptables -A logdrop -j LOG」と「iptables -A logdrop -j DROP」だ。これでルールに適合するすべてのパケット(この例では、ドロップされるすべてのパケット)がlogdropチェインに追加され、ログ出力が行われた後でドロップされるようになるのである。

#5:iptables -t nat -A PREROUTING -i WLAN_INTERFACE -p tcp --dport PORTNUMBERS -j DNAT --to-destination DESTINATION_IP

 外部からのパケットを特定内部マシンの特定ポートにルーティングする必要がある場合、ここで解説する指定を行えばよい。このルールは、ネットワークアドレス変換の利点を活かして、パケットの適切なルーティングを行うものとなっている。あなたのニーズに合わせるには、「WLAN_INTERFACE」を外部ネットワークと内部ネットワークの橋渡しを行うWLANインターフェースへと変更し、「PORTNUMBERS」を変更し、「DESTINATION_IP」をルーティング先マシンのIPアドレスに適合するよう変更しなければならない。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]