質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

VPS

VPS(バーチャル・プライベート・サーバ)は、仮想化されたサーバをレンタルするサービスで、共有サーバでありながら専門サーバと同等の機能を果たします。物理的な専門サーバより安価で提供できるメリットがあります。

Q&A

解決済

1回答

5068閲覧

さくらのVPSで立ち上げたApacheに接続したい

ogra

総合スコア18

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

VPS

VPS(バーチャル・プライベート・サーバ)は、仮想化されたサーバをレンタルするサービスで、共有サーバでありながら専門サーバと同等の機能を果たします。物理的な専門サーバより安価で提供できるメリットがあります。

0グッド

0クリップ

投稿2017/04/17 03:31

編集2017/04/17 03:42

さくらのVPSで起動したApacheに他のホストから接続したい

さくらインターネットのVPS(1G、SSDプラン)を本契約しました。
そのサーバでWordPressサイトを立ち上げようとしています。
OSをさくら標準OSのUbuntu 16.04(amd64)にインストールし直し、taskselでLAMP serverをインストールしました。
Apacheを起動したのですが、自ホスト以外のホストからの接続が通りません。
どうしたらよいでしょうか。

###発生している問題
Apacheに、自ホスト以外のホストからの接続が通りません。
localhostへの接続は通ります。
ファイアウォールを無効にしても接続できません。

###試したこと
ファイアウォールを無効にするために、

sudo ufw disable

を実行後、自ホストから

curl http://160.16.229.14/

を実行すると、HTMLが返ってきます。(160.16.229.14は、Apacheが起動しているホストのIPアドレスです。)

しかし、それ以外のホストから同じコマンドを実行すると、

curl: (7) Failed to connect to 160.16.229.14 port 80: No route to host

と表示されて接続できません。

また、リモートからnmapでポートスキャンも試しました。

nmap -p 80 160.16.229.14

すると、

Note: Host seems down.

と表示されます。

一方、SSHでは、IPアドレス、ホスト名のどちらを使っても接続できます。

念のため、Apacheの起動確認も

sudo systemctl status apache2

でしましたが、active (running)となっていますし、

sudo lsof -i:80

でポートの待受を確認しても、

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME apache2 924 root 4u IPv6 13128 0t0 TCP *:http (LISTEN) apache2 953 www-data 4u IPv6 13128 0t0 TCP *:http (LISTEN) apache2 954 www-data 4u IPv6 13128 0t0 TCP *:http (LISTEN) apache2 955 www-data 4u IPv6 13128 0t0 TCP *:http (LISTEN) apache2 956 www-data 4u IPv6 13128 0t0 TCP *:http (LISTEN) apache2 957 www-data 4u IPv6 13128 0t0 TCP *:http (LISTEN)

と表示されていて、ちゃんと80番ポートでListenしています。

###補足情報

問題が発生しているホストのIPアドレス: 160.16.229.14
ホスト名: blog.oguradio.com
SELinuxも無効になっています。

/etc/apache2/apache2.conf

Mutex file:${APACHE_LOCK_DIR} default PidFile ${APACHE_PID_FILE} Timeout 300 KeepAlive On MaxKeepAliveRequests 100 KeepAliveTimeout 5 User ${APACHE_RUN_USER} Group ${APACHE_RUN_GROUP} HostnameLookups Off ErrorLog ${APACHE_LOG_DIR}/error.log LogLevel warn IncludeOptional mods-enabled/*.load IncludeOptional mods-enabled/*.conf Include ports.conf <Directory /> Options FollowSymLinks AllowOverride None Require all denied </Directory> <Directory /usr/share> AllowOverride None Require all granted </Directory> <Directory /var/www/> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory> AccessFileName .htaccess <FilesMatch "^\.ht"> Require all denied </FilesMatch> LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined LogFormat "%h %l %u %t \"%r\" %>s %O" common LogFormat "%{Referer}i -> %U" referer LogFormat "%{User-agent}i" agent IncludeOptional conf-enabled/*.conf IncludeOptional sites-enabled/*.conf

/etc/apache2/sites-available/000-default.conf

<VirtualHost *:80> ServerName blog.oguradio.com ServerAdmin webmaster@localhost DocumentRoot /var/www/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>

ちなみに、問題が発生しているのと別のVPSがoguradio.comで動いていて、そちらではApacheが正常に動作しています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

さくらのサポートに問い合わせたところ、

Ubuntuの標準インストールには、以下の設定がデフォルト有効になっております。
/etc/iptables/iptables.rules

※ 別のお客様では、/etc/iptables/iptables.rulesの設定をクリアされることで
状況が改善されたとご連絡をいただいております。

という返信が来ました。
それで、

sudo mv /etc/iptables/iptables.rules /etc/iptables/iptables.rules.orig sudo touch /etc/iptables/iptables.rules

して、iptables.rulesファイルの中身を空にし、システムを再起動してみました。
すると、IPアドレスおよびホスト名の両方で、Apacheのデフォルトページを表示させることができました。
念のため、上記のコマンドのように、設定は消さずにおきましたが、消すのであれば、単に

sudo echo > /etc/iptables/iptables.rules

でもよいかもしれません。

投稿2017/04/17 06:50

ogra

総合スコア18

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問