iptablesの古いまとめ
アクセス権限の設定
特定のチェーンにルールを追加する形でアクセス権限を設定できます。設定後はセーブを行わないと、再起動時にクリアされます。
# service iptables save
特定のポートへのアクセスを許可する
# iptables -I RH-Firewall-1-INPUT 10 -p tcp -m state --state NEW \\
--destination-port 8080 -j ACCEPT
※「--destination-port」の代わりに「--dport」も使えそうです。 2012.04.17追記
特定インタフェースへのアクセスを許可する
# iptables -I RH-Firewall-1-INPUT 18 -i eth1 -j ACCEPT
特定IPからのアクセスを拒否する
# iptables -I Rh-Firewall-1-INPUT 1 -s 203.129.254.236 -j DROP
行番号付きでルールをリストする
# iptables -L --line-numbers
ルールの設定方法を調べる
# man iptables
[考察]実際の運用にあたって
ランバーミルでは、「セキュリティポリシー.xls」なるファイルを作って、その中にスクリプト形式でパケットのフィルタリングルールを定義しています。社外秘のためスクリプト全体を公開することはできませんが、大体以下のような雰囲気のものです。
#! /bin/sh
##############
#Flush & Reset
##############
iptables -F
iptables -X
##############
#Deafult Rule
##############
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#########
#loopback
#########
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
(以下設定が続く)
そして、実際に設定を行いたいホストにrootでログインし、以下のような手順でルールを適用します。
# vi iptables-setup.sh (上記スクリプトをペースト)
# chmod 744 iptables-setup.sh
# ./iptables-setup.sh
# service iptables save
各ホストで使うサービスに応じてアドホックに設定を行うよりは、設定漏れを防げるという点に於いて確実かつスピーディかと思われます。
[考察]複数IPの指定
iptablesではネットマスク(xx.xx.xx.xx/nn)によるIP範囲指定は存在しますが、不連続な複数のIPを指定する方法はないようです。よって、複数のIPを指定する場合、以下のようなスクリプトを利用します。
trusthost[0]=192.168.0.10
trusthost[1]=192.168.0.50
for i in $\{trusthost[@]\}; do
iptables -A INPUT -s $\{i\} -j ACCEPT
done
上記の例では、trusthost配列に格納されたIPからの接続を許可するルールを追加しています。
- タグ別一覧: [iptables]
- チップス一覧
この記事は役に立ちましたか?
- EnglishWorm.com
- SinglesFan.com
- LmLab.net
- サイトマップ
- 運営者について