さくらVPS Ubuntu Apache2が接続できない!

こんにちは、ファルコンM です。

 

さくら VPS Ubuntu でApache2 を設定した。下の記事を参考にやっているのだが、、、

 

 

タイトル通り、Ubuntu でApache2 の接続ができなかった。

 

原因は、デフォルトの設定だった!

 

開発環境

  • さくら VPS 1G プラン
  • Ubuntu 16.04
  • Apache 2.4.18

 

Apache2 のインストール

 

インストールは以下のコマンド

$ sudo apt-get install apache2

 

インストール確認はバージョンコマンド

$ apache2 -v

 

その後、起動する。

$ sudo service apache2 start

 

これだけで起動するはず。クライアントのブラウザからアクセスすれば、デフォルトページが見れるはずだが。。。

 

応答がない。。。見れない。。。

 

原因調査

 

Apache が起動していることを確認するため、以下のコマンドを叩いてみた。

 

$ curl http://( ホスト名 )

 

応答は、返ってきている。つまり、Apache は正常に起動している。ブラウザからサーバーへの接続に問題があるようだ。

 

ファイアウォールはどうか?

$ sudo ufw status

 

 

「Status: inactive」と表示された。ファイアーウォールは動作していないが、いつの間にかインストールされている。他にもいつの間にかインストールされているものがあるかもしれない。

 

原因はiptables の設定

 

でした。iptables はいつの間にかインストールされてデフォルトの設定になっていた。( たぶん、一番最初にubuntu の設定をしたとき。なんか自動でいろいろ動いていたような。 )

 

ってことでhttp とhttps のポートのアクセスを許可する。

 

参考サイト

 

$ sudo vi /etc/iptables/iptables.rules

 

 

iptables の設定を開き、以下を追加する。

 

*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 -p tcp --dport 80 -j ACCEPT
-A INPUT -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

 

最後に、設定を反映し、Apache を再起動する。

 

sudo /sbin/iptables-restore < /etc/iptables/iptables.rules
sudo service apache2 restart

 

これで、クライアントのブラウザからアクセスできた。

 

まとめ

 

さくらVPS でUbuntu をインストールしたとき、一緒にiptables がインストールされていた。なので、Apache は起動しても外部から接続できなかった。

Apache以外でも、ポートの設定が必要になるときは、iptables を考慮する必要がある。

スポンサードリンク



コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です