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

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

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

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Apache

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

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Q&A

解決済

1回答

37635閲覧

Apacheが何をやっても接続拒否される。

Susanoo2442

総合スコア153

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Apache

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

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

0グッド

1クリップ

投稿2017/06/03 16:53

Apacheを、さくらのVPSに導入しました。CentOs6です。
しかし、さくらのVPS契約時にメールアドレスに届いた、IPアドレスに接続してみたのですが、接続が拒否されてしまいます。具体的なエラー名は、ERR_CONNECTION_REFUSEDです。

Googleで検索を行ったら、ファイヤーウォールの設定などをオフにする事やら、Apacheが起動する事など記載しておりましたが、どれも全て問題ありません。

一体何が原因でApacheから接続を拒否されるのでしょうか?
詳しい方、ぜひアドバイス頂けたらと存じます。

宜しくお願い致します。

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

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

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

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

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

k-nishiyama

2017/06/05 08:26

mit0223様が詳細な確認方法を記載されているので一言だけ・・・該当のエラーはChromeのものかと予想されますが、FireFoxやIEなどの別ブラウザでの挙動はどうでしょうか?
Susanoo2442

2017/06/05 08:34

回答ありがとうございました。原因はiptablesが悪さしていた様です。iptablesでポート解放を行う、もしくは、全ての通信を許可した状態でも、iptablesがstartしている状態ですと、apacheに接続する事が不可能でしたので、iptablesの機能そのものを、stopさせたらいけました。ありがとうございました。
guest

回答1

0

ベストアンサー

ERR_CONNECTION_REFUSED

ICMPで拒否応答が返ってきている場合に出るエラーで、以下のようなケースが考えられます。

  • ポート番号が間違っている
  • ファイアウォール系で接続拒否されている
  • サービスが起動していない
  • 間違ったIPアドレス(ただし、活きているサーバがいる)に接続している

切り分け方法ですが、まず ping がとおるかどうかです。お使いのコンピュータで

ping IPアドレス

を実行して応答が確認できますか?

ping がとおれば、IPのパケットがサーバに到達するルートは確保されていることになります。次にアクセスしているポートが開いているかどうかです。まず、ポート番号を知る必要があります。ブラウザで http://IPアドレス/ と入力したのであれば、ポート番号は 80 番です。

Googleで検索を行ったら、ファイヤーウォールの設定などをオフにする事やら、Apacheが起動する事など記載しておりましたが、どれも全て問題ありません。

と書かれているので、

  • 途中のファイアウォールが 80 番ポートの通過を許可していることを確認
  • サーバのファイアウォール 80 番ポートの受信を許可していることを確認
  • httpd プロセスが 80 ポートを listen していることの確認

の3点については確認済みということでしょうか?そうであれば、その確認の詳細な内容を追記いただけますか?

次にクライアントから単純な接続をしてみる手順になります。telnet でテストすることで、他の要素を排除して確認できます。Windows の場合、 telnet をインストールする必要があります。
参考:http://www.atmarkit.co.jp/ait/articles/0207/06/news002.html

telnet IPアドレス 80

を実行して、 connection refused と出れば、やはりネットワークやサーバ側の問題なので、前述の確認に戻ることになります。

これ以降は、パケットキャプチャなど、少し難易度が上がります。

投稿2017/06/03 22:49

mit0223

総合スコア3401

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

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

Susanoo2442

2017/06/05 08:32

この度はありがとうございました。結論から言いますと、iptablesが原因でした。iptablesをstopさせると無事、接続出来ました。しかしながら、iptablesをstartさせて状態で、iptablesの全ての通信許可をACCEPTに設定しましたが、それでも、apacheと接続させる事は不可能でした。(pingは送受信されているが、telnetで接続出来ない状態。)ですので、セキリュティ上、問題はありますが、しばらくこちらで運用して、徐々に修正をしていくつもりです。ありがとうございました。
mit0223

2017/06/05 08:56

了解です。ベストアンサーありがとうございました。 iptables の件も別質問であげていただければ、回答できると思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.49%

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

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

質問する

関連した質問