LoginSignup
82
89

More than 5 years have passed since last update.

iptablesの設定【最小構成】

Posted at

iptablesの最小構成設定です。
この設定では自分からのアクセスは全て許可され、外部からのアクセスはPingとSSH以外全て拒否されます。

設定

ディレクトリ作成

shellスクリプトを格納するディレクトリを作成する

# mkdir /root/bin/

iptables.shの作成

# vi /root/bin/iptables.sh

下記の内容をコピーアンドペーストする。
※日本語に対応していない場合はコメントにある日本語が文字化けする恐れがあります。

vim操作
: a
iptables.sh
#!/bin/sh

# iptables 初期化
iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD

# 受信を破棄 / 送信を許可 / 通過を拒否
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

# 自ホストからのアクセスをすべて許可
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

# 内部から行ったアクセスに対する外部からの返答アクセスを許可
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# ping(icmp)許可
iptables -I INPUT -p icmp --icmp-type 0 -j ACCEPT
iptables -I INPUT -p icmp --icmp-type 8 -j ACCEPT

# ssh許可
iptables -A INPUT -p tcp --dport 22 -j ACCEPT

################################
##### サービス設定ここから #####


##### サービス設定ここまで #####
################################

# 上記のルールにマッチしなかったアクセスはログを記録して破棄
iptables -A INPUT -m limit --limit 1/s -j LOG --log-prefix '[IPTABLES INPUT] : '
iptables -A INPUT -j DROP
iptables -A FORWARD -m limit --limit 1/s -j LOG --log-prefix '[IPTABLES FORWARD] : '
iptables -A FORWARD -j DROP
vim操作
[ESC]
: wq

スクリプトを実行

スクリプトを実行するとiptablesが適用されます。

# sh /root/bin/iptables.sh

実行結果を確認

# iptables -nL

運用

OS起動時に自動でiptablesを適用する

ここまでの設定で既にiptablesは適用されていますが、OSの再起動するとせっかく設定したiptablesが消されて初期状態に戻ります。
再起動するたびにスクリプトを手動で実行するのも手間ですので、OS起動時に自動的に実行してもらいます。

# vi /etc/rc.local

下記を追記

rc.local
sh /root/bin/iptables.sh

iptablesを停止する

CentOS 5.xでは# iptables -Fを使用していましたが、6.xで同じ事をするとSSHが切られたりして不安定なため、サービスを停止することをお勧めします。

CentOS6.x
# /etc/init.d/iptables stop

iptablesを再開する

先ほどiptables stopで停止したので、iptables startをしがちですが、普通にスタートをしても初期設定に戻ってしまいます。
なので、shを実行しましょう。

# sh /root/bin/iptables.sh
82
89
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
82
89