🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
さくらのVPS

さくらのVPSは、さくらインターネット社が提供するVPS(仮想専用サーバー)です。高速なSSDの選択や複数台構成も可能。利用者に応じた柔軟なプランが用意されています。大規模システムにも対応可能なスケーラビリティを備えたホスティングサービスです。

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

Q&A

解決済

1回答

6648閲覧

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

marugo128

総合スコア8

さくらのVPS

さくらのVPSは、さくらインターネット社が提供するVPS(仮想専用サーバー)です。高速なSSDの選択や複数台構成も可能。利用者に応じた柔軟なプランが用意されています。大規模システムにも対応可能なスケーラビリティを備えたホスティングサービスです。

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

0グッド

0クリップ

投稿2019/07/31 15:48

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

nginx

1user nginx; 2worker_processes 1; 3 4error_log /var/log/nginx/error.log warn; 5pid /var/run/nginx.pid; 6 7 8events { 9 worker_connections 1024; 10} 11 12 13http { 14 include /etc/nginx/mime.types; 15 default_type application/octet-stream; 16 17 log_format main '$remote_addr - $remote_user [$time_local] "$request" ' 18 '$status $body_bytes_sent "$http_referer" ' 19 '"$http_user_agent" "$http_x_forwarded_for"'; 20 21 access_log /var/log/nginx/access.log main; 22 23 sendfile on; 24 #tcp_nopush on; 25 26 keepalive_timeout 65; 27 28 #gzip on; 29 30 include /etc/nginx/conf.d/*.conf; 31}

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

nginx

1server { 2 listen 80; 3 server_name localhost; 4 5 #charset koi8-r; 6 #access_log /var/log/nginx/host.access.log main; 7 8 location / { 9 root /usr/share/nginx/html; 10 index index.html index.htm; 11 } 12 13 #error_page 404 /404.html; 14 15 # redirect server error pages to the static page /50x.html 16 # 17 error_page 500 502 503 504 /50x.html; 18 location = /50x.html { 19 root /usr/share/nginx/html; 20 } 21 22 # proxy the PHP scripts to Apache listening on 127.0.0.1:80 23 # 24 #location ~ .php$ { 25 # proxy_pass http://127.0.0.1; 26 #} 27 28 # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 29 # 30 #location ~ .php$ { 31 # root html; 32 # fastcgi_pass 127.0.0.1:9000; 33 # fastcgi_index index.php; 34 # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; 35 # include fastcgi_params; 36 #} 37 38 # deny access to .htaccess files, if Apache's document root 39 # concurs with nginx's one 40 # 41 #location ~ /.ht { 42 # deny all; 43 #} 44} 45

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

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

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

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

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

otn

2019/07/31 15:55

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

2019/07/31 16: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 '^]'. ^]
guest

回答1

0

ベストアンサー

marugo128さん、こんにちは

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

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

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

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

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

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

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

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

イメージ説明

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

パケットフィルタについて、詳しくは以下でも説明しているので、不明な点があれば一読してみてください。

パケットフィルタ の利用方法 – さくらのVPSニュース

投稿2019/07/31 16:15

編集2020/03/19 08:05
kameneko

総合スコア47

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

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

marugo128

2019/07/31 16:30

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

2019/08/01 00:09

事象が解決したようで安心しました! パケットフィルタ機能は、実は今年の6月末に追加されたばかりの機能ですので、実は知らなかった!という方も多いですね。 さくらのVPS 「パケットフィルタ」提供開始のお知らせ | さくらインターネット: https://www.sakura.ad.jp/information/announcements/2019/06/27/1968200552/ ぜひ、今後もさくらのVPSを運用していくのであれば、以下で機能追加などのような各種情報が得られるので、たまにご確認してみることをおすすめします! さくらのVPSニュース – さくらのVPSに関連するニュースをお届けします https://vps-news.sakura.ad.jp/
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問