-CentOS6までのファイヤーウォールの設定。CentOS7からはfirewalldに変更だが、iptables使うこともできる。

#contents

*概要 [#yd030d39]

Linuxインストール時Firewall設定は/etc/sysconfig/iptablesに書き込まれている。ファイルで変更した場合は再起動が必要。
コマンドで実行した場合、反映は即時なので注意
 
 # iptables -A INPUT -p icmp -j DROP
 上記例はicmpを拒否するものだが、こんなのをtcpに対して行った場合は即時通信不能となる。
 なんかまずいときは
 # iptables -F
 でクリアしておく

*CUI設定変更ツール [#g585c9b8]

-CentOSでの設定内容は/etc/sysconfig/iptablesに書き込まれている。

 system-config-securitylevel

-centosではsetupコマンドからFirewallの設定を行うが、慣れたら上記ファイル直接の方が早いかも

*コマンド一覧 [#o9c11c46]

|現在の設定を確認|iptables -L|
|現在の設定をクリア|iptables -F|

*CHAINの種類 [#y03331fb]

主にINPUTを制御することになるだろう。内部から外部通信を制限する場合は、OUTPUTを変更する必要がある。

**INPUTチェーンの設定。コマンド版 [#l17445fa]

 # サーバーへの攻撃対応(From さくらVPSの情報)
 iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
 iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
 iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP
 #ローカルからの通信は許可(一番先頭に持ってくる)
 iptables -A INPUT -i lo -j ACCEPT
 #すでに接続されているものは許可
 iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
 #ローカル以外のICMPは拒否(適用順に注意)
 iptables -A INPUT -p icmp -j DROP
 # 各種ポートの許可(ssh,http,https)
 iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
 iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
 iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
 #INPUTは基本落とす
 iptables -P INPUT DROP 

-問題なければセーブする[x:x]は合致したパケット:バイトらしいのであるが、0:0でもよい

 service iptables save

-別ファイルに書き出すなら

 iptables-save -c

 # Generated by iptables-save v1.4.18 on Tue Oct  6 08:26:41 2015
 *filter
 :INPUT DROP [1:60]
 :FORWARD ACCEPT [0:0]
 :OUTPUT ACCEPT [151:20456]
 -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
 -A INPUT -i lo -j ACCEPT
 -A INPUT -p icmp -j DROP
 -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
 -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
 -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
 COMMIT
 # Completed on Tue Oct  6 08:26:41 2015

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS