web-dev-qa-db-ja.com

「接続拒否」メッセージの原因は何ですか?

これは 標準的な質問 について接続が拒否されました

効果についての質問がたくさんあります

システムに接続しようとすると、メッセージが表示されます

接続拒否

どうしてこれなの ?

119
user9517

:このメッセージは、解決しようとしている問題の症状です。メッセージの原因を理解することは、最終的には問題の解決につながります。

「接続が拒否されました」というメッセージには、主に2つの原因があります。

  1. 接続しようとしているIP:ポートで何もリッスンしていません。
  2. ポートはファイアウォールによってブロックされています。

待機しているプロセスはありません。

これが、メッセージの最も一般的な理由です。まず、正しいシステムに接続しようとしていることを確認してください。これが問題であるかどうかを判断する必要がある場合は、リモートシステムで netstat または ss を実行します。1 例えばプロセスがポート22222で待機することを期待している場合

Sudo netstat -tnlp | grep :22222

または

ss -tnlp | grep :22222

OSXの場合、適切なコマンドは次のとおりです。

Sudo netstat -tnlp tcp | grep '\.80 '

何も聞いていない場合、上記は何も出力しません。何らかの出力が表示された場合は、それが想定どおりであることを確認してから、以下のファイアウォールのセクションを参照してください。

リモートシステムにアクセスできず、関連する管理者に報告する前に問題を確認する場合は、tcpdump(wiresharkなど)を使用できます。

何も待機していないIP:ポートへの接続が試行された場合、リモートシステムから最初のSYNパケットへの応答は、フラグRST、ACKが設定されたパケットです。これにより接続が閉じ、接続拒否メッセージが表示されます。

$ Sudo tcpdump -nホスト192.0.2.1およびポート22222
tcpdump:詳細な出力が抑制されました。完全なプロトコルデコードには-vまたは-vvを使用してください
enp14s0をリッスン、リンクタイプEN10MB(イーサネット)、キャプチャサイズ262144バイト

12:31:27.013976 IP 192.0.2.2.34390> 192.0.2.1.22222:フラグ[S]、シーケンス1207858804、勝利29200、オプション[mss 1460、sackOK、TS val 15306344 ecr 0、nop、wscale 7]、長さ0

12:31:27.020162 IP 192.0.2.1.22222> 192.0.2.2.34390:フラグ[R。]、seq 0、 ack 1207858805、勝つ0、長さ0

Tcpdumpはを使用して ACKを表す フラグを使用することに注意してください。

ポートはファイアウォールによってブロックされています

ポートがファイアウォールによってブロックされており、ファイアウォールがicmp-port-unreachableで応答するように構成されている場合も、接続拒否メッセージが表示されます。もう一度、これはtcpdump(または同様の)で確認できます

$ Sudo tcpdump -n icmp
tcpdump:詳細な出力が抑制されました。完全なプロトコルデコードには-vまたは-vvを使用してください

enp14s0でのリスニング、リンクタイプEN10MB(イーサネット)、キャプチャサイズ262144バイト13:03:24.149897 IP 192.0.2.1> 192.0.2.2:ICMP 192.0.2.1 tcpポート22222到達不能、長さ68

これにより、ブロッキングファイアウォールの場所もわかります。


これで、接続拒否メッセージの原因がわかったので、適切なアクションを実行する必要があります。ファイアウォール管理者に連絡するか、プロセスがリッスンしない理由を調査してください。

1 他のツールが利用できる可能性があります。

129
user9517

Debian 6 squeezeでの私にとっては SSHサービスのチェック と同じくらい簡単でした:

Sudo service ssh status

そして、何も見つからなかった(メッセージssh: unrecognized service)だけ サービスのインストール

Sudo apt-get install openssh-server

これは、SFTPがSSHのサブセットであるため(SFTPはFTPのサブセットです)、SFTP接続を取得していない場合にも機能します。

5
SharpC

Centos Shorewallファイアウォールのディスク領域が不足しています。紛らわしいことに、youtubeやMSなどの一部のサイトは機能しました。 cnn.comなどの他のものは失敗しました。一部のスペースをクリアしてサーバーを再起動すると、問題が解決しました。

0
Mike Ross