どうも、お久しぶりです。Masaです。この数ヶ月色々とあったのですが、設計図的な意味で書いていませんでした。別ネタで書いても良かったのかもしれませんが…。
今回は、Webサーバーとして使うVPSの設定シリーズで最後となりました、ファイアウォール構築編です。普通のVPSではということです。Joe’sのVPSとかWindows Azureといったサービスはマニュアルなどを見てポート開放を行なった上で見て下さい。AWSに関しては管理画面から操作すると勝手に開放されますが…一応ということで。
iptablesを設定しよう
今回はCentOSに標準でついているiptablesと呼ばれるツールを使います。端末(ターミナル)もしくはTeraTermなどを開いて以下のコマンドを入力して下さい。
# vi /etc/sysconfig/iptables
※ Root権限で行なって下さい。
開くと、New Fileと出て白紙状態か何か記載されていると思います。
*filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A INPUT -j REJECT --reject-with icmp-host-prohibited -A FORWARD -j REJECT --reject-with icmp-host-prohibited COMMIT
基本的にはこの設定を流用します。
今回、SSHのポートを10022番に変更しています。また、ウェブサーバーとして使うため、HTTP通信を行うためのポート、またSSL対応もする場合はHTTPS通信するためのポート、それぞれ80番と443番ポートを開放してあげます。すると、以下のようになると思います。全部コピーして貼り付けても問題ありませんが、SSHのポートを任意のものにしている場合(10359番とか)には該当部分を変更する必要があります。
*filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 10022 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT -A INPUT -j REJECT --reject-with icmp-host-prohibited -A FORWARD -j REJECT --reject-with icmp-host-prohibited COMMIT[
標準で記載されている場合は反転されているところを変更・追加すればいいと思います。それ以外の人は全て必要なのでコピペなどをして下さい。保存した後、iptablesを再起動させます。
# service iptables restart
※ Root権限で行なって下さい。
すると、Apacheが出てきたりすると思います。お疲れ様でした。
あとがき
arcadia.futureが結構動いてないうちに色々とありました。自分がarcadia.futureというメディア・サイトの執筆から離れていた時に色々と中のほうでは変更していたりとしていました。デザイン面も今後しっかりと考えていかないといけない点かなって思っています。また、デザインなど変えるときには連絡しますし、記事も執筆していこうと思います。記事を執筆しておらず、「このサイト、閉じるのかな」とか思われた方、心配させてしまいすみませんでした。今後は気をつけていくつもりではいますが、管理人が受験生ということもあり、情報収集など余り手がついていないということも事実にあげられると思います。ですが、それだけを言い訳にしてたら話しにならないと思うので気をつけていきたいです。