Was verlangsamt mein SSH-Login?

9

Jedes Mal, wenn ich mich bei einem Server anmelde, ist es immer sehr langsam. In einer Antwort auf meinen früheren Beitrag heißt es: "Das Durchsuchen einer Datei mit 200 Zeilen sollte ungefähr Millisekunden dauern, daher würde ich bezweifeln, dass dies der Fall ist."

Ich habe versucht , ssh -vvv time@serverund die Ausgabe hochgeladen wurde hier . Ich habe festgestellt, dass es besonders langsam ist, wenn ich zu jeder dieser drei Zeilen in der Ausgabe gehe:

debug1: Next authentication method: gssapi-with-mic 

debug1: Unspecified GSS failure.  Minor code may provide more information
Credentials cache file '/tmp/krb5cc_1000' not found 


debug1: Unspecified GSS failure.  Minor code may provide more information
Credentials cache file '/tmp/krb5cc_1000' not found 

Ich frage mich warum und was ich tun kann, um es zu ändern? Danke und Grüße!


Aktualisieren:

Die Antwort von Ignacio schlägt mir vor, "alle GSS / Kerberos-Authentifizierungsmethoden in Ihrer Konfiguration zu deaktivieren".

Also /etc/ssh/ssh_config, muss ich sicherstellen , dass „nein“ hinter jedem aller Optionen ist beginnend mit „GSS“: GSSAPIAuthentication, GSSAPIDelegateCredentials, GSSAPIKeyExchange, GSSAPITrustDNS, GSSAPIAuthentication und GSSAPIDelegateCredentials?

Was sind dann die Optionen für die "Kerberos" -Authentifizierungsmethode, hinter die ich "Nein" setzen muss?

PS: Folgendes ist der Inhalt meines lokalen /etc/ssh/ssh_configmit kommentierten Optionen, die hier nicht kopiert wurden:

Host *
    SendEnv LANG LC_*
    HashKnownHosts yes
    GSSAPIAuthentication yes
    GSSAPIDelegateCredentials no
Tim
quelle
Wie oft wirst du die gleiche Frage stellen?
Paul Tomblin
@ PaulTomblin: Nicht viele. :-)
Tim
Mögliches Duplikat von Wie beschleunige ich mein zu langsames SSH-Login?
Gilles 'SO - hör auf böse zu sein'
@ Gilles: Danke, ich habe mein Problem mit diesem Beitrag behoben. Früher musste ich warten, bis der Cursor 30 Mal blinkt, jetzt muss der Cursor 7 Mal blinken. (1) Ist es jetzt eine normale Geschwindigkeit, zu warten, bis der Cursor sieben Mal blinkt? (2) Warum funktioniert es durch Auskommentieren GSSAPIAuthentication yesund GSSAPIDelegateCredentials no?
Tim

Antworten:

10
debug1: Next authentication method: gssapi-with-mic

Das ist Kerberos. Deaktivieren Sie alle GSS / Kerberos-Authentifizierungsmethoden in Ihrer Konfiguration. Weitere Informationen finden Sie in der ssh_config(5)Manpage, PreferredAuthenticationsOption.

Ignacio Vazquez-Abrams
quelle
Vielen Dank! Mit "Ihrer Konfiguration" meinen Sie meinen lokalen oder den Remote-Server?
Tim
PreferredAuthenticationsist auf dem Client. Verwenden Sie GSSAPIAuthenticationstattdessen auf dem Server .
Ignacio Vazquez-Abrams
1
Vielen Dank! /etc/ssh/ssh_configMuss ich in (1) sicherstellen, dass hinter jeder Option, die mit "GSS" beginnt, "Nein" steht: GSSAPIAuthentication, GSSAPIDelegateCredentials, GSSAPIKeyExchange, GSSAPITrustDNS, GSSAPIAuthentication und GSSAPIDelegateCredentials? (2) Welche Optionen gibt es für die Authentifizierungsmethode "Kerberos", die ich hinter "Nein" setzen muss? PS: Ich habe gerade meinen Beitrag mit dem Inhalt meiner lokalen aktualisiert /etc/ssh/ssh_config.
Tim
1
1) Ändern PreferredAuthenticationsist genug. 2. Kerberos verwendet GSS. Das Deaktivieren von GSS ist ausreichend.
Ignacio Vazquez-Abrams
Vielen Dank! Darf ich fragen, wie PreferredAuthentications geändert werden kann? Ich kann es nicht in der Manpage ssh_config (5) finden
Tim
3

UseDNS nound CheckHostIP nosollte die Dinge auch beschleunigen.

Es ist auch eine gute Sicherheitsmaßnahme, nur Protokoll 2 zuzulassen. Wenn Sie IPv6 nicht benötigen, deaktivieren Sie es (AddressFamily).

Nils
quelle
1

Könnte es ssh / etc / ssh_prng_cmds sein? Es gibt einen Job in ssh, der eine Reihe von Befehlen ausführt, um beim Anmelden zufällige Dinge zu machen. Einer dieser Befehle dauert wahrscheinlich zu lange, weil er etwas tut, das auf Ihrem Computer albern ist. Das einzige, woran ich jetzt denken kann, ist, dass ssh vom Computer verlangt, den größten Baum im Wald mit ...... zu fällen.

ein Hering.

Führen Sie einige dieser Befehle an einer Eingabeaufforderung aus und finden Sie heraus, dass es lange dauert, bis Sie eine Antwort erhalten. Kommentiere DIESES aus.

Klonea
quelle
1

Für mich brauchte ich GSSAPI und ich wollte Reverse-DNS-Lookups nicht deaktivieren, das schien einfach keine gute Idee zu sein, also habe ich die Manpage für resolv.conf überprüft. Es stellt sich heraus, dass eine Firewall zwischen mir und den Servern, mit denen ich SSHing durchgeführt habe, DNS-Anforderungen störte, da diese nicht in der von der Firewall erwarteten Form vorliegen. Am Ende musste ich nur diese Zeile zu resolv.conf auf den Servern hinzufügen, auf denen ich SSHing war -

Optionen Single-Request-Reopen

Sapan Ganguly
quelle
Für alle, die ähnliche Probleme untersuchen, siehe auch: unix.stackexchange.com/a/141278/23367
Tuomassalo