読者です 読者をやめる 読者になる 読者になる

Rubellum fly light

ほぼPHP日記

さくらのVPS - iptablesの設定メモ


さくらのVPSは初期状態だとポートが開きまくりらしい。
とりあえず「SSH」「http」「https」だけ開けておき,あとは閉じる。
SSHのポート番号はデフォルトの22から変えた。


現在の設定の確認。

$ sudo /sbin/iptables -L

「/sbin」にパスが通ってなかったので「iptables」だけだと実行できなかった。
一々打つのが面倒な場合はパスを通しておく(以下パスは通ってるものとする)。


コマンド詳細はこことかこことかで。
設定のコマンド群はシェルスクリプトとして保存しておく。
最終的にこんな感じになった。


iptables-init.sh

#!/bin/sh

iptables -F
iptables -X

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 -s 10.0.0.0/8 -j DROP
iptables -A INPUT -s 127.16.0.0/12 -j DROP 
iptables -A INPUT -s 192.168.0.0/16 -j DROP

iptables -A INPUT -m state --state NEW -p tcp --dport {port_num} -j ACCEPT  # {port_num}はSSHのポート番号
iptables -A INPUT -p tcp --dport 80    -j ACCEPT
iptables -A INPUT -p tcp --dport 443   -j ACCEPT

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT


このままだと再起動したときに設定がリセットするので再起動時にも反映するようにする。
設定ファイルの書き出し。

$ su
# iptables-save > /etc/sysconfig/iptables


iptablesを再起動して実際に設定が反映されるかチェック。

# /etc/rc.d/init.d/iptables restart
# iptables -L

設定が表示されたらOK。


・参考リンク
さくらの VPS の設定ダダ流し | さくらたんどっとびーず