Linuxサーバー構築~その4~

<はじめに>
Linuxサーバー構築シリーズその4です。

今回はiptablesの修正を行い、80番ポートでwebサーバーにアクセスできることを確認します。

<作業内容>
まず、iptablesの設定を行います。

iptablesの設定ファイルは、/etc/sysconfig/iptablesです。

中身はこのようになっています。

f:id:nomurabbit:20131214111650p:plain

まずは、この部分

:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]

「:INPUT」と書いてある行は、自分宛のパケットについての定義です。

続いて「ACCEPT」とあるので、自分宛のパケットは受け入れるという意味になります。

同様に「:FORWARD」、「:OUTPUT」はそれぞれ、

自分を経由するパケット、自分から発信するパケットとなります。

次に、この部分

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

「-A INPUT」とあるので、自分宛のパケットについての定義です。

「-m state --state ESTABLISHED,RELATED」より、

「過去に接続したもの」や「既存コネクションに関係のあるもの」が該当します。

「-j ACCEPT」は、条件に一致するパケットを許可するという意味です。

さらに、

-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT

1行目はicmpの許可、2行目はループバックの許可を指します。

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

前半の「-A INPUT -m state --state NEW」は

「自分宛のパケットで、新規の接続」を指します。

後半の「-m tcp -p tcp --dport 22」のうち、

「-m tcp --dport 22」はtcpの宛先ポート(今回はINPUTなので自分のポート)

が22番であることを、また「-p tcp」はtcpプロトコルを使用することを指します。

最後に「-j ACCEPT」とあるので、

「自分宛で22番ポートに新規で接続となるパケットを許可する」となります。

-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited

最後に、ここまでの条件に一致しなかったパケットを破棄します。

では22番ポートを開く記述にならって80番ポートを開いてみます。

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

編集内容を保存したら、iptablesを再起動して確認します。

<まとめ>
iptablesの設定ファイルを編集し、ポートの解放が確認できました。

次回はhttp.confファイルの編集を行います。