Nginx起動するが80番でコネクション確立しない

解決済

回答 1

投稿

  • 評価
  • クリップ 0
  • VIEW 184

marugo128

score 6

Nginx起動するが80番でコネクション確立しない

以下の環境でNginxをインストールして起動を確認できるがWebページを閲覧できない状態です。
サーバー上で80番がLISTENしていることは確認できています
iptablesは現在停止している状態にしています。(原因切り分けの為)
クライアントPCからtelnetで80番ポートのコネクションが確立できない状態です。
ちなみに同条件でのAWS EC2では問題なくコネクションは確立してWebページが見れる状態になります。
Nginxのコンフィグはデフォルトの状態です。

・さくらVPS
・OS:CentOS 6.10
・Nginx 1.14 (1.16でも同症状)
・iptables (停止状態)

■iptables停止

[root@xxx hoge]# service iptables stop

iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
iptables: Flushing firewall rules:                         [  OK  ]
iptables: Unloading modules:                               [  OK  ]

■Nginxランニングを確認

[root@xxx hoge]# service nginx status

nginx (pid  2108) is running...


■Nginxプロセス確認

[root@xxx hoge]# ps -aux |grep nginx
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
root      2108  0.0  0.1  47320  1064 ?        Ss   Jul31   0:00 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
nginx     2109  0.0  0.1  47724  1804 ?        S    Jul31   0:00 nginx: worker process
root      2409  0.0  0.0   6440   712 pts/0    S+   00:18   0:00 grep nginx


■80ポートのLISTEN確認

[root@xxx hoge]# ss -tln
State       Recv-Q Send-Q                      Local Address:Port                        Peer Address:Port
LISTEN      0      128                                     *:22                                     *:*
LISTEN      0      100                             127.0.0.1:25                                     *:*
LISTEN      0      128                                     *:80                                     *:*
[root@xxx hoge]# lsof -i:80 -P
COMMAND  PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
nginx   2108  root    6u  IPv4  14747      0t0  TCP *:80 (LISTEN)
nginx   2109 nginx    6u  IPv4  14747      0t0  TCP *:80 (LISTEN)


■telnetで80番ポートコネクション確認

[123@ hoge]# telnet xxx.xxx.xxx.xxx 80
Trying xxx.xxx.xxx.xxx...
telnet: connect to address xxx.xxx.xxx.xxx: Connection timed out


■Nginx コンフィグ(デフォルトのまま)

/etc/nginx/nginx.conf

user  nginx;
worker_processes  1;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;

    include /etc/nginx/conf.d/*.conf;
}

/etc/nginx/conf.d/default.conf

server {
    listen       80;
    server_name  localhost;

    #charset koi8-r;
    #access_log  /var/log/nginx/host.access.log  main;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }

    #error_page  404              /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    #
    #location ~ \.php$ {
    #    proxy_pass   http://127.0.0.1;
    #}

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    #location ~ \.php$ {
    #    root           html;
    #    fastcgi_pass   127.0.0.1:9000;
    #    fastcgi_index  index.php;
    #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
    #    include        fastcgi_params;
    #}

    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /\.ht {
    #    deny  all;
    #}
}
  • 気になる質問をクリップする

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • otn

    2019/08/01 00:55

    ローカルでtelnetでつながりますか?

    キャンセル

  • marugo128

    2019/08/01 01:03

    返答ありがとうございます。
    はい、当該サーバー上でグローバルIPでも127.0.0.1でもtelnetで80番のコネクションは確立できています。
    [root@xxx hoge]# telnet xxx.xxx.xxx.xxx 80
    Trying xxx.xxx.xxx.xxx...
    Connected to xxx.xxx.xxx.xxx.
    Escape character is '^]'.
    ^]
    telnet> quit
    Connection closed.

    [root@xxx hoge]# telnet 127.0.0.1 80
    Trying 127.0.0.1...
    Connected to 127.0.0.1.
    Escape character is '^]'.
    ^]

    キャンセル

回答 1

checkベストアンサー

+2

marugo128さん、こんにちは

さくらのVPSのサーバ上でNginxを動かしたが、80番ポートに接続できないということですね。

AWS EC2上で同じ設定のNginxを起動しているということでしょうか。そういうことであれば、さくらのVPS側の問題の可能性が高いです。

実は、さくらのVPSには「パケットフィルタ」という機能があります。
サーバのFirewalldやiptablesとは別に、さくらのVPS側でファイアウォール機能を提供しています。こちらで許可をしていない可能性があります。

パケットフィルタは、以下の手順で確認できます。

「さくらのVPS上のサーバ一覧から該当のサーバをクリック」 → 「パケットフィルタタブ」


初期設定では、SSH接続用の22番のみ許可になっており、それ以外は拒否されます。以下のようになっている場合は、80番ポートは許可されていませんので、許可する必要があります。
イメージ説明

パケットフィルタで80番ポートを許可するには、以下の手順で設定します。

パケットフィルタタブ内の「パケットフィルタ設定へ」 → 「Web」のチェックボックスを有効化 → 「設定」ボタンをクリック


イメージ説明

パケットフィルタタブに新たに80/443の許可が加われば設定が完了しています。
こちらで一度確認してみてください!

パケットフィルタについて、詳しくは以下でも説明しているので、不明な点があれば一読してみてください。
https://vps-news.sakura.ad.jp/vps-pf/?_ga=2.218057439.818853968.1564588874-1812492781.1550322196

投稿

さくらインターネット コミュニティ、Evangelist
  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/08/01 01:30

    ありがとうございます!!。できました!。
    さくらVPSは会社で多数契約しているしていまして、今までも何度も同一手順で行って設定してきました。
    しかし先日から新規でさくらVPS構築が必要になり同一手順を行っているのにも関わらず、いっこうに80番ポートでのコネクションが確立しないのでAWS EC2で同一手順は難なく接続できているので、とても困っていました。毎日さくらVPS運用含め利用していましたが、いつの間にかこんな機能が追加されていたのですね!!大変参考になりました!!。ありがとうございました。重ねてお礼申し上げます。

    キャンセル

  • 2019/08/01 09:09

    事象が解決したようで安心しました!
    パケットフィルタ機能は、実は今年の6月末に追加されたばかりの機能ですので、実は知らなかった!という方も多いですね。

    さくらのVPS 「パケットフィルタ」提供開始のお知らせ | さくらインターネット: https://www.sakura.ad.jp/information/announcements/2019/06/27/1968200552/

    ぜひ、今後もさくらのVPSを運用していくのであれば、以下で機能追加などのような各種情報が得られるので、たまにご確認してみることをおすすめします!

    さくらのVPSニュース – さくらのVPSに関連するニュースをお届けします
    https://vps-news.sakura.ad.jp/

    キャンセル

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

  • ただいまの回答率 90.22%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる