-
entry000444
comments
続いて,Firewall としての設定を行います.
現在契約しているプロバイダはグローバル IP を一つしかもらえないので,IP Masquerade を使用して複数のクライアントがインターネットにアクセスできるよう設定します. さらに,iptables でパケットフィルタリングの設定を行い,接続可能なホスト,使用可能なサービスを制限します.
- Linux 2.4 Packet Filtering HOWTO
- Linux IP Masquerade HOWTO(November 14, 2000.ちょっと古めです.)
- JM : iptables
今回は,Linux Box で提供するサービスはローカル向きの SSH だけとします. また,IP Masquerade はローカル --> グローバル のみを許可します.
MTEntryMoreこの設定を順に実行する過程で,一時的にセキュリティーが低下するステップがあります. 下記を step-by-step で実行する際は十分に注意してください. なるべく,下記設定を理解した上でスクリプト化するなどして,セキュリティーが低下している時間をなくすよう対策を行ってください.- IP packet forwarding の設定
最初に,複数 NIC 間でのパケットのやりとりを有効に設定します.
# echo 1 > /proc/sys/net/ipv4/ip_forward
ただし,上記設定は再起動を行うと元に戻ってしまいます.そこで /etc/sysctl.conf の以下の行を "1" に変更します.
# Controls IP packet forwarding net.ipv4.ip_forward = 1 - 幾つかの iptables 以外の設定
Linux Box をネットワークに接続するにあたって,セキュリティの観点から幾つかの設定項目を変更します.
# cd /proc/sys/net/ipv4 # echo 1 > icmp_echo_ignore_broadcasts # for i in conf/*/accept_source_route; do > echo 0 > $i > done # for i in conf/*/accept_redirects; do > echo 0 > $i > done
それぞれ以下のような設定です.
- Broadcast の PING (echo request) を拒否します.Broadcast PING はサブネット内のマシンを検出する目的で使われることがあります.
- IP のソースルートオプションを無視します.ソースルートは IP パケットが経由すべきネットワークノードを明示的に指定するものです.これを使用すると man-in-the-middle 攻撃も可能となる場合があります.
- IP のリダイレクトオプションを無視します.これは,何だっけな・・・.
- SSH のみの提供
最初に,グローバル向きのインタフェースからのパケットをすべて破棄します.
# iptables -A INPUT -i ppp0 -j DROP
続いてローカル向きインタフェースへの SSH (22 番ポート) を許可します.
# iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT # iptables -A OUTPUT -o eth0 -p tcp --sport 22 -j ACCEPT
最後に,上記にマッチしなかった場合の処理を定義します.
# iptables -P INPUT DROP # iptables -P OUTPUT DROP
- IP Masquerade の設定
ppp0 から出てゆくパケットは IP Masquerade の対象とします.
# iptables -t nat -P POSTROUTING ACCEPT # iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE # iptables -t nat -P PREROUTING ACCEPT
- 保存
以上の設定は,再起動すると消えてしまします.設定を保存しておきましょう.
# /etc/rc.d/init.d/iptables save
簡単な設定の手順は以上です. 以下,更に詳細なルールを設定するにあたっての参考に.
- TCP, UDP は大抵の場合 in と out の双方のパケットがあってはじめて意味をなします.どちらか一方のみを許可し,もう一方を拒否している場合は正常な通信が行えません.
- TCP の 3 way handshake を理解しましょう.--syn で SYN パケットを引っ掛けることができるので,自分がクライアントなのかサーバーなのかで異なるルールを設定することができます.ポートによる振り分けの際にはどちらなのかを意識しましょう.
コメントを登録する
麦酒堂ではコメントスパムを防止するために,いただいたコメントは管理人が手動でサイトに反映しております.
反映までしばらく時間がかかりますので予めご了承ください.