「iptables」の設定ファイル
/etc/sysconfig/iptables
設定中のiptablesルール確認方法
iptables -nL
「iptables」の設定
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# SSH(22,10022,22->delete after), HTTP, HTTPS
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 10022 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT
デフォルトルール定義 外部からの通信をすべて拒否する設定
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
確率済みの通信を通過させる設定
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
すでに確立済みなら、通過させる設定。
Pingを通過させる設定
-A INPUT -p icmp -j ACCEPT
プロトコルが「icmp」であれば通過させる。
ループバックを通過させる設定
-A INPUT -i lo -j ACCEPT
自ホストからの返事の通信は通過させる設定。
SSHでの通信を受け入れる設定
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
他ホストからSSH接続が、22番ポートでアクセスしてきた場合に受け入れる設定。
SSH側のセキュリティ(パスワードログインさせない、rootログインさせない、など)は、SSHの設定で行うこと。
http(ポート80)への通信を受け入れる設定
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
Webサーバーを設置する場合に、ポート80を解放するための設定。
ポリシーの変更方法
iptables -P [チェイン] [アクション]
例:INPUT内のどのルールにもマッチしないパケットを全て破棄する場合
iptables -P INPUT DROP
例:INPUT内のどのルールにもマッチしないパケットを全て受信する場合
iptables -P INPUT ACCEPT
ルールの追加 : iptables -A [チェイン] [条件] [アクション]
※[チェイン]は、組み込みチェインとユーザチェインの両方で指定できます。
アクセス許可指定
例:外部からの3843番ポートへのアクセスを許可する場合
iptables -A INPUT -p tcp --dport 3843 -j ACCEPT
例:自ホストからのアクセスを全て許可する場合
iptables -A INPUT -i lo -j ACCEPT
アクセス拒否指定
例:外部からの1234番ポートへのアクセスを拒否する場合
iptables -A INPUT -p tcp --dport 1234 -j DROP