Langsame SSH-Anmeldung und langsames Tippen von Ubuntu SSH- und Windows Putty-Clients nur über WLAN

Langsame SSH-Anmeldung und langsames Tippen von Ubuntu SSH- und Windows Putty-Clients nur über WLAN

Ich habe einen Raspberry Pi-Cluster aus 3 Raspberry Pis, auf denen jeweils Ubuntu Server 20.04 in meinem Heimnetzwerk (192.168.0.n) läuft. Jedem Raspberry Pi wird über die Netplan-Konfiguration eine statische IP zugewiesen.

Beim Versuch, von meinem Ubuntu Desktop 20.04 aus per SSH eine Verbindung zu einem der Raspberry Pis herzustellen, dauert die SSH-Anmeldung entweder sehr lange, oder die Anmeldung erfolgt zwar, aber die Eingabe ist sehr langsam oder reagiert nicht.

Ich habe dies von einem Windows-Laptop mit PuTTYy im selben Netzwerk aus versucht und sehe dasselbe Verhalten, das schließlich zu folgendem Fehler führt:

Netzwerkfehler: Software verursachte Verbindungsabbruch

Auf jedem der Pis, auf denen SSHD läuft, habe ich UseDNS noFolgendes festgelegt und auskommentiert. session optional pam_systemd.soDabei /etc/pam.d/common-sessionbin ich im Wesentlichen den auf dieser Website definierten Schritten gefolgt:https://jrs-s.net/2017/07/01/slow-ssh-logins/

Mein Router wird von meinem ISP bereitgestellt: Sky UK.

Das Bizarre ist, dass ich JuiceSSH auf mein Android-Telefon heruntergeladen habe und mich mit jedem der Pis verbinden und erfolgreich Befehle ausführen kann.

Ich bin völlig ratlos. Ich bin für jede Hilfe oder Anleitung zur weiteren Fehlerbehebung dankbar.

Antwort1

Sie können die Ausführlichkeit des SSH-Befehls erhöhen, um ssh -vvv user@hostdie Ursache der Verzögerung herauszufinden.

Das Problem wird durch mehrere Konfigurationen verursacht. Überprüfen Sie zunächst hostdie Datei:

sudo nano /etc/hosts

Es würde eine Zeile mit 127.0.0.1 geben. Stellen Sie sicher, dass der Name Ihres Hostnamens davor korrekt ist. Wenn Sie ihn nicht haben, fügen Sie einfach hinzu:

127.0.0.1 hostname

Wenn Sie sich bezüglich des Hostnamens nicht sicher sind, können Sie ihn wie folgt herausfinden:

echo $HOSTNAME

Nach dem Speichern müssen Sie keinen Dienst neu starten und Sie werden die Geschwindigkeitssteigerung sehen. Wenn nicht, versuchen Sie die zweite Änderung.

nano /etc/ssh/sshd_config

Diese Datei enthält die SSH-Dienstkonfiguration und hat standardmäßig einige Parameter, die in Ihrem Fall möglicherweise nicht optimal sind. Denken Sie daran, sudo zu verwenden, damit Sie sie ändern können ;)

X11Forwardingkann den Datentransfer verlangsamen, aber normalerweise ist es in Ordnung, es so zu lassen yes. Dasselbe, mit PasswordAuthenticationdem die Verbindung einfacher und sicherer wird. Ändern und stellen Sie sie notestweise ein und speichern Sie die Datei. Starten Sie den Dienst dann neu mit:

sudo service sshd restart

Es gibt Fälle, in denen die Befehlsausführung schnell ist, die Anmeldung über SSH jedoch langsam, und dann gibt es ein Problem mit der Authentifizierung. Um dies zu überprüfen, sind UseDNSund UsePAMin der sshd_configDatei zwei der häufigsten Fälle. Um sie zu überprüfen, versuchen Sie Folgendes:

nano /etc/ssh/sshd_config

und fügen Sie sie dann hinzu oder bearbeiten Sie sie, falls vorhanden, wie folgt:

UsePAM no
UseDNS no

deaktivieren Sie beide gleichzeitig, um die Wirkung zu prüfen und vergessen Sie nicht, den sshDienst nach dem Speichern zurückzusetzen.

Wenn Sie keine Verbesserung erzielen, machen Sie den Vorgang rückgängig und prüfen Sie, htopob verdächtige Prozesse ausgeführt werden. Überprüfen Sie die CPU- und Speicherauslastung und beenden Sie diese ggf.

Ich werde es nicht länger machen, also antworten Sie hierauf, um weitere Ideen zu erhalten, falls das Problem weiterhin besteht.

Antwort2

Ich habe endlich herausgefunden, warum die SSH-Sitzungen von meinem Ubuntu 20.04-Laptop zu meinem Raspberry Pi-Cluster (betrifft alle 3) über WLAN hängen blieben. Schalten Sie die Energieverwaltung für das WLAN-Gerät aus. Listen Sie zuerst den Status des Netzwerkgeräts auf:

sudo iwconfig

Wenn die Energieverwaltung eingeschaltet ist, schalten Sie sie aus, indem Sie in der folgenden Datei 3 in 2 ändern:

cat /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf 

[connection]
wifi.powersave = 2

Ich musste meinen Laptop nach der Änderung neu starten.

verwandte Informationen