2015-04

2015年4月15日
iptablesの設定のメモ(無効化・有効化・修正など)

構築のお手伝いをした会社さんのWEBサイトが朝から接続できないというご連絡をいただきまして、慌てて対応しました。

なんちゃってプログラムを書いたことはあるけれど、こういうトラブルシューティング的なことははじめてのことで、とにかくGoogleさんに質問を浴びせかけ続けました。

・対象:Wordpressで構築した企業向けのWEBサイト

・症状:ブラウザからアクセスできない

・環境:さくらVPSにWordpressをインストール

ブラウザからアクセスできないのですが、SSHでログインは無事できまして、検索し続けたところどうもiptablesが悪さをしているのではないかとのこと。

Linuxのファイヤーウォール(iptables)とSELinuxを停止&無効化

と、とりあえずiptablesを無効化してみればいいのでしょうか…?

# /etc/rc.d/init.d/iptables stop

としたところブラウザからアクセスできました。やった!と思ったのだけど本当にこれでいいのか…。
そこでとある地下組織に「本当にこれでいいのか?」と投げかけたところ「あかん!」「あかん!」「開けるのは443や」とのお言葉。
暗号かよ…と思いつつ、ググりました。(ありがとうございますUさん、Rさん)

iptablesを確認したら、以前開けたはずの80のポートも443のポートも開いているように見えません。
いったんiptablesを立ち上げなおして、以下のページを参考に、80と443のポートを開けました。

iptablesで80と443を許可する

# vi /etc/sysconfig/iptables
-A INPUT -p tcp -m state --state NEW --dport 80 -j ACCEPT
-A INPUT -p tcp -m state --state NEW --dport 443 -j ACCEPT

iptablesを再起動します。

#/etc/init.d/iptables restart

ついでに「保存しないと次再起動したとき消えるぞ」とのこれまた有難いU先生のアドバイスに従って、iptablesの設定を保存

#service iptables save 

参考ページ iptablesの設定内容を保存する

皆様のおかげさまでなんとか助かりました…!(半分涙目で)

ちなみに原因は今朝方さくらインターネットがメンテナンスのために、VPSサーバを再起動していて、そこにうっかり私がiptablesの設定を保存していなかったということで、httpでアクセスができなくなってしまったようです。
また同じアホをやらかさないように、ここにメモを残しておこうと思います。