Was verursacht die Meldung „Verbindung abgelehnt“?

Was verursacht die Meldung „Verbindung abgelehnt“?

Das ist einKanonische FrageumVerbindung abgelehnt

Wir sehen viele Fragen dazu

Wenn ich versuche, eine Verbindung zu einem System herzustellen, erhalte ich eine Meldung

Verbindung abgelehnt

Warum ist das ?

Antwort1

Notiz: Diese Meldung ist ein Symptom des Problems, das Sie lösen möchten. Wenn Sie die Ursache der Meldung verstehen, können Sie Ihr Problem letztendlich lösen.

Die Meldung „Verbindung abgelehnt“ kann zwei Hauptursachen haben:

  1. Auf dem IP:Port, mit dem Sie eine Verbindung herstellen möchten, läuft nichts.
  2. Der Port ist durch eine Firewall blockiert.

Kein Prozess hört zu.

Dies ist bei weitem der häufigste Grund für die Meldung. Stellen Sie zunächst sicher, dass Sie versuchen, eine Verbindung zum richtigen System herzustellen. Um festzustellen, ob dies das Problem ist, führen Sie auf dem Remote-System Folgendes aus:netstatoderss1 zB wenn Sie erwarten, dass ein Prozess auf Port 22222 lauscht

sudo netstat -tnlp | grep :22222

oder

ss -tnlp | grep :22222

Für OSX ist ein geeigneter Befehl

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

Wenn nichts zuhört, erzeugt das Obige keine Ausgabe. Wenn Sie eine Ausgabe sehen, bestätigen Sie, dass es das ist, was Sie erwarten, und lesen Sie dann den Abschnitt zur Firewall weiter unten.

Wenn Sie keinen Zugriff auf das Remote-System haben und das Problem bestätigen möchten, bevor Sie es den entsprechenden Administratoren melden, können Sie tcpdump (Wireshark oder ähnliches) verwenden.

Wenn eine Verbindung zu einem IP-Port versucht wird, auf dem nichts zuhört, ist die Antwort des Remote-Systems auf das anfängliche SYN-Paket ein Paket mit den gesetzten Flags RST,ACK. Dies schließt die Verbindung und verursacht die Meldung „Verbindung abgelehnt“, z. B.

$ sudo tcpdump -n Host 192.0.2.1 und Port 22222
tcpdump: ausführliche Ausgabe unterdrückt, verwenden Sie -v oder -vv für die vollständige Protokolldekodierung,
die auf enp14s0 lauscht, Verbindungstyp EN10MB (Ethernet), Erfassungsgröße 262144 Bytes

12:31:27.013976 IP 192.0.2.2.34390 > 192.0.2.1.22222: Flags[S], Sequenz 1207858804, Win 29200, Optionen [mss 1460,sackOK,TS val 15306344 ecr 0,nop,wscale 7], Länge 0

12:31:27.020162 IP 192.0.2.1.22222 > 192.0.2.2.34390: Flags[R.], Sequenz 0, Bestätigung 1207858805, Gewinn 0, Länge 0

Beachten Sie, dass tcpdump einen.Zurepräsentieren die ACKFlagge.

Der Port ist durch eine Firewall blockiert

Wenn der Port durch eine Firewall blockiert ist und die Firewall so konfiguriert wurde, dass sie mit icmp-port-unreachablediesem Befehl antwortet, wird dies ebenfalls zu einer Meldung führen, dass die Verbindung abgelehnt wurde. Auch dies können Sie mit tcpdump (oder ähnlichem) überprüfen.

$ sudo tcpdump -n icmp
tcpdump: ausführliche Ausgabe unterdrückt, verwenden Sie -v oder -vv für die vollständige Protokolldekodierung, die

auf enp14s0 lauscht, Verbindungstyp EN10MB (Ethernet), Erfassungsgröße 262144 Bytes 13:03:24.149897 IP 192.0.2.1 > 192.0.2.2: ICMP 192.0.2.1 TCP-Port 22222 nicht erreichbar, Länge 68

Beachten Sie, dass wir hierdurch auch erfahren, wo sich die blockierende Firewall befindet.


Nachdem Sie nun wissen, wodurch die Meldung „Verbindung abgelehnt“ verursacht wird, sollten Sie entsprechende Maßnahmen ergreifen. Kontaktieren Sie beispielsweise den Firewall-Administrator oder ermitteln Sie den Grund dafür, dass der Prozess nicht zuhört.

1 Wahrscheinlich sind andere Tools verfügbar.

Antwort2

Für mich war es unter Debian 6 Squeeze so einfach wieÜberprüfen des SSH-Dienstes:

sudo service ssh status

Und feststellen, dass nichts existierte (mit der Nachricht ssh: unrecognized service) nurInstallieren des Dienstes:

sudo apt-get install openssh-server

Dies funktioniert auch, wenn Sie keine SFTP-Verbindung erhalten, da SFTP eine Teilmenge von SSH ist (während FTPS eine Teilmenge von FTP ist).

Antwort3

Was verursacht die Meldung „Verbindung abgelehnt“?

  • FalschIP-Adresse oder Portnummer angegeben.
  • Die Serveranwendung istnicht laufenum auf diesem Port zu lauschen.
  • Die Serveranwendung läuft, abernicht zuhörenauf dem angegebenen Port.
  • Lokal/RemoteFirewallBlockieren der Verbindung.
  • Server überlastetoder Erschöpfung der Ressourcen.

verwandte Informationen