SSH "Verbindung verweigert" auf Raspberry Pi - kann nicht finden, warum

13

Ich habe das folgende Problem SSH "Verbindung abgelehnt". Es würde gut funktionieren, aber während ich an der SSH arbeite, würde ich "Verbindung abgelehnt" bekommen und müsste erneut verbinden (was nicht für gute 5-10 Minuten auftritt). Ich habe alles versucht (Linux neu starten, ssh neu starten), hilft aber immer noch nicht. Ich habe auch var / log überprüft, aber nichts hilfreiches darin ...

HINWEIS: Interessanter Hinweis, den ich gefunden habe, ist, wenn ich ssh auf meine externe IP-Adresse (277 ...) versuche, gehe ich zum schwarzen CMD-Bildschirm, schließe diesen und versuche meine 192.168.0.13-Adresse und lasse mich anmelden .. aber kurz während wieder Verbindung abgelehnt ... Natürlich, wenn ich meinen Server öffne und sudo sshd neu starte, verschwindet meine ssh "Verbindung abgelehnt" ...

Mein SSH-Port wird um 23 Uhr geöffnet und ich habe ihn auch auf Modem / Router eingestellt

sudpi@raspberrypi:~$ sudo netstat -tlpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1817/apache2
tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN      2227/vsftpd
tcp        0      0 127.0.0.1:3350          0.0.0.0:*               LISTEN      1784/xrdp-sesman
tcp        0      0 0.0.0.0:23              0.0.0.0:*               LISTEN      3115/sshd
tcp        0      0 0.0.0.0:3389            0.0.0.0:*               LISTEN      1781/xrdp
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      2397/mysqld

Wenn ich die Verbindung trenne, mich wieder anmelde und "WER" überprüfe, werden nur meine vorherige Verbindung, mein Root und die aktuelle Verbindung angezeigt

whopi@raspberrypi:~$ who  
pi       tty1         2013-01-28 09:20
pi       pts/0        2013-01-28 10:28 (192.168.0.12)
pi       pts/1        2013-01-28 10:32 (192.168.0.12)

Das habe ich in meiner ssh_config geändert (SSH auf 23, da Rogers 22 verwenden ...)

#   Port 23
...    
#Keep my damn connection alive!
KeepAlive yes
ServerAliveInterval 60

Das bekomme ich, wenn ich arp-scan ausführe

pi@raspberrypi:/etc$ sudo arp-scan -I eth0 -l | grep 192.168.0.13
192.168.0.13    a0:6c:ec:ec:bb:5b       (Unknown)

Dieser Teil, den ich online gefunden habe, sagte mir, dass ich die folgenden zwei Informationen posten sollte

pi@raspberrypi:~$ ps afxu | grep sshd
root      2838  0.0  0.7   9800  3168 ?        Ss   10:27   0:00 sshd: pi [priv]                                                                                   
pi        2845  0.0  0.3   9800  1628 ?        S    10:28   0:00  \_ sshd: pi@pt                                                                                   s/0
root      2854  0.0  0.7   9800  3168 ?        Ss   10:32   0:00 sshd: pi [priv]                                                                                   
pi        2861  0.0  0.3   9800  1628 ?        S    10:32   0:00  \_ sshd: pi@pt                                                                                   s/1
root      2900  0.3  0.7   9800  3168 ?        Ss   10:44   0:00 sshd: pi [priv]                                                                                   
pi        2907  0.0  0.3   9800  1628 ?        S    10:44   0:00  \_ sshd: pi@pt                                                                                   s/2
root      2934  0.0  0.2   6204  1060 ?        Ss   10:45   0:00 /usr/sbin/sshd
root      2954  0.7  0.7   9800  3164 ?        Ss   10:45   0:00  \_ sshd: pi [p                                                                                   riv]
pi        2961  0.1  0.3   9800  1624 ?        S    10:46   0:00      \_ sshd: p                                                                                   i@pts/3
pi        2970  0.0  0.1   3536   796 pts/3    S+   10:46   0:00              \_                                                                                    grep sshd

EDIT: pi @ raspberrypi: ~ $ ssh -vvv 192.168.0.13 (DAS könnte lang sein ... Danke Bart Friederichs)

pi@raspberrypi:~$ ssh -vvv 192.168.0.13 -p 23
OpenSSH_6.0p1 Debian-3, OpenSSL 1.0.1c 10 May 2012
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to 192.168.0.13 [192.168.0.13] port 23.
debug1: Connection established.
debug1: SELinux support disabled
...
debug1: match: OpenSSH_6.0p1 Debian-3 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.0p1 Debian-3
debug2: fd 3 setting O_NONBLOCK
debug3: put_host_port: [192.168.0.13]:23
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
...
debug1: Next authentication method: publickey
debug1: Trying private key: /var/www/.ssh/id_rsa
debug3: no such identity: /var/www/.ssh/id_rsa
debug1: Trying private key: /var/www/.ssh/id_dsa
debug3: no such identity: /var/www/.ssh/id_dsa
debug1: Trying private key: /var/www/.ssh/id_ecdsa
debug3: no such identity: /var/www/.ssh/id_ecdsa
debug2: we did not send a packet, disable method
debug3: authmethod_lookup password
debug3: remaining preferred: ,password
debug3: authmethod_is_enabled password
debug1: Next authentication method: password
[email protected]'s password: - I TYPED PASSWORD -
...
debug2: channel_input_status_confirm: type 99 id 0
debug2: PTY allocation request accepted on channel 0
debug2: channel 0: rcvd adjust 2097152
debug2: channel_input_status_confirm: type 99 id 0
debug2: shell request accepted on channel 0
Linux raspberrypi 3.6.11+ #350 PREEMPT Mon Jan 7 21:51:11 GMT 2013 armv6l
user5673
quelle
Führen Sie netstat -tlpnals root (oder mit sudo) aus, wenn Sie die Programmnamen / PIDs anzeigen möchten. Das Verschieben von SSH von seinem Standardport aus scheint keine gute Idee zu sein, wenn Sie mit der Linux-Administration nicht ausreichend vertraut sind.
Bruno
1
Zeilen, die mit # beginnen, sind Kommentare. Geben Sie in der Zeile also den Port 23 an, den Sie zuvor angegeben haben. Er wird nicht verarbeitet und verwendet daher den Standardport (22). Sie können auch in /etc/hosts.allow oder /etc/hosts.deny festlegen, wer eine Verbindung zu sshd herstellen kann. Haben Sie überprüft, ob in Ihrem Netzwerk keine Kollision mit der IP-Adresse vorliegt?
Pipe

Antworten:

8

Sie sshdlauschen auf Port 23, stellen jedoch eine Verbindung zu Port 22 her (Standardeinstellung von ssh).

Versuche dies:

  pi@raspberrypi:~$ ssh -vvv 192.168.0.13 -p 23

Ein Fehler "Verbindung abgelehnt" bedeutet, dass die TCP-Schicht im Kernel keine Verbindungen an diesem Port akzeptiert. Es hat nichts damit zu tun, am Leben zu bleiben oder so.

Außerdem verwenden Sie, arpum Dinge herauszufinden, aber ein besseres Werkzeug wäre nmap. arpZeigt nur an, ob sich die IP in Ihrer Broadcast-Domain befindet, nicht, ob Ports offen sind.

Bart Friederichs
quelle
Hallo, danke für deine Antwort, ich habe pi @ raspberrypi ausprobiert: ~ $ nmap -bash: nmap: Befehl nicht gefunden ... Muss ich ihn installieren? und gibt es solche für himbeeren? Vielen Dank auch für die Korrektur, die ich mit -p 23 bearbeitet habe, aber es hat nichts, was fehl am Platz aussieht ...
nmapwird nicht wirklich benötigt, nur ein handliches Werkzeug. Das Update, das Sie gemacht haben, scheint funktioniert zu haben?
Bart Friederichs
5

Zitieren der Dokumentation :

In Raspbian ist der SSH-Server seit der Version vom November 2016 standardmäßig deaktiviert. Sie müssen es manuell aktivieren.

So aktivieren Sie SSH auf Computern über die Konsole:

Geben Sie sudo raspi-configin das Terminal, wählen Sie zuerst advanced options, wechseln Sie dann zu ssh, drücken Sie Enterund wählen Sie Enable or disable ssh server.

So aktivieren Sie SSH für Headless-Maschinen:

Für das Headless-Setup kann SSH aktiviert werden, indem eine Datei sshohne Erweiterung auf der Startpartition der SD-Karte abgelegt wird.


Aus der Antwort von @techraf in diese verwandte Frage kopiert : SSH funktioniert nicht mit Neuinstallation .

Delgan
quelle
Obwohl dies die Frage technisch beantworten könnte, bin ich mir nicht sicher, ob techraf froh sein wird, dass Sie die Antwort gerade kopiert und eingefügt haben. Wenn Sie jedoch vor dem Verfassen dieses Beitrags nach ihrer Erlaubnis gefragt hätten, wäre dies anders.
Darth Vader
1
Teil der "Nutzungsbedingungen" (Abschnitt 3) ist, dass die Beiträge hier als Creative Commons-Lizenz mit Weitergabe unter gleichen Bedingungen eingestuft werden. Diese Neuzuweisung erfolgt innerhalb dieser Bedingungen. Es ist hier jedoch keinesshd
gute
@DarthVader Ich habe dies als Community-Antwort gepostet und den Autor richtig gutgeschrieben. Ich dachte, es wäre genug.
Delgan
1
@goldilocks Wie Sie vielleicht erraten haben, steht diese Frage ganz oben in den Google-Suchergebnissen zu ssh connexion, die für Raspberry Pi abgelehnt wurden. Ich glaubte, dies würde den Menschen helfen, schneller herauszufinden, woran es liegen könnte.
Delgan
Auf der aktuell neuesten (Raspbian Stretch) SSH-Konfiguration befindet sich unter 5) Schnittstellenoptionen -> P2) SSH
R2RT sagt Reinstate Monica
1

Ich hatte heute Morgen das gleiche Problem und habe es durch Entfernen und Installieren von openssh-server behoben:

sudo apt-get remove openssh-server 
sudo apt-get install openssh-server
Brian Leung
quelle
Hallo und Willkommen bei Stack Exchange! Bitte ziehen Sie in Betracht, eine ausführlichere Erklärung zum Nutzen zukünftiger Leser hinzuzufügen.
NULL
0

Ich hatte das gleiche Problem und meine Lösung bestand darin, iptables zu deaktivieren und zu deinstallieren.

Führen Sie die folgenden Befehle aus:

(als Sudoer)

iptables -F iptables -X iptables -t nat -F iptables -t nat -X iptables -t mangle -F iptables -t mangle -X iptables -P EINGABE AKZEPTIEREN iptables -P AUSGABE AKZEPTIEREN iptables -P VORWÄRTS AKZEPTIEREN

sudo apt-get remove --purge iptables

Jibrilat
quelle
0

Bei mir hat folgendes geklappt: Ging nach / etc / ssh / ssh_config und / etc / ssh / sshd_config und erlaubte dann den Zugriff ohne Passwort.

Neustart des Dienstes und voilà, funktioniert!

Mário Coelho
quelle
0

Aktualisierung von Delgans Antwort für Raspberry Pi 3, RASPBIAN JESSIE WITH PIXEL OS

Im Terminal

sudo raspi-config 

Wählen Sie Schnittstellenoptionen -> SSH. Drücken Sie die Eingabetaste und wählen Sie SSH-Server aktivieren oder deaktivieren

user65260
quelle
0

Ich bin nicht sicher, ob mein Tipp hilfreich sein wird. Ich hatte das gleiche Problem und bin neu in der Linux-Welt. Nachdem ich die Raspberry Pi-Dokumentation gelesen hatte, stellte ich fest, dass das Problem in der Pi-Konfiguration liegt, in der SSH deaktiviert war.

Klicken Sie auf Raspberry Pi-Menü -> Einstellungen -> Raspberry Pi-Konfiguration starten. Navigieren Sie zur Registerkarte Schnittstellen. Wählen Sie Aktiviert neben SSH. Klicken Sie auf OK. Bitte versuchen Sie es und lassen Sie es mich wissen.

JAYARAJ SIVADASAN
quelle
-1

mit

sudpi@raspberrypi:~$ sudo netstat -tlpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1817/apache2
tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN      2227/vsftpd
tcp        0      0 127.0.0.1:3350          0.0.0.0:*               LISTEN      1784/xrdp-sesman
tcp        0      0 0.0.0.0:23              0.0.0.0:*               LISTEN      3115/sshd
tcp        0      0 0.0.0.0:3389            0.0.0.0:*               LISTEN      1781/xrdp
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      2397/mysqld
user5673
quelle
Es ist ein guter Anfang, um zu überprüfen, was das Problem ist, aber nicht genug, um die Frage zu beantworten :-(
Morgan Courbet
-1

Ich hatte das gleiche Problem, aber es wurde behoben, nachdem ich den Befehl ausgeführt hatte

sudo apt-get remove --purge iptables. und Ausschalten der drahtlosen Verbindung.

user14634
quelle
-1

Es gibt 2 Konfigurationsdateien / etc / ssh / ssh_config und / etc / ssh / sshd_config

Ändern Sie in beiden Dateien den Port von 22 nach Belieben.

Starten Sie den Dienst neu sudo service ssh restart

Adam
quelle
Aber ... das funktioniert nur, wenn Sie in dieselbe Maschine einsteigen. Was wäre der Sinn davon?
Bex