Das Laufen ssh user@hostname
dauert ca. 30s. Hier ist das Szenario:
- Dies ist eine VM im lokalen LAN
- Windows- und Mac-Computer werden sofort angemeldet
- Ich benutze Debian und könnte es mit einer Ubuntu-Maschine reproduzieren
- Jemand, der Ubuntu verwendet, sagt, dass die Anmeldung bei meinem Computer (lokales LAN) ebenfalls sofort erfolgt
- Die Verwendung der IP-Adresse des Hostnamens dauert ungefähr halb so lange (~ 15s).
[ Update ]
Unter Verwendung ssh -vvv user@hostname
, hier, wo es am meisten wartet:
debug3: authmethod_lookup gssapi-with-mic
debug3: remaining preferred: publickey,keyboard-interactive,password
debug3: authmethod_is_enabled gssapi-with-mic
debug1: Next authentication method: gssapi-with-mic
Und dann wartet es hier ein bisschen:
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
id_dsa
oder dieid_rsa
datei in deinem~/.ssh
? Vielleicht versucht Ihre SSH-Installation zuerst die falsche Authentifizierung und Ihr Server verweigert dies nicht. Ignorieren Sie einfach diese Anfrage, was zu einem Timeout von 30 Sekunden führt"~/.ssh"
Datei. Das ist ein Verzeichnis, in dem sich nur"known_hosts"
Dateien befinden.UseDNS no
insshd_config
auf dem Server. Führen Siessh -vvv user@hostname
in jedem Fall aus, um festzustellen , wo die Anmeldung hängt.Antworten:
Bearbeiten Sie Ihre " / etc / ssh / ssh_config " und kommentieren Sie diese Zeilen aus:
quelle
GSSAPIAuthentication yes
undGSSAPIDelegateCredentials no
? @ TshepangIch hatte dieses Problem und löste es durch Deaktivieren der umgekehrten DNS-Auflösung in SSH.
Also
sshd_config
auf dem Server ändern:dazu:
quelle
ssh -vvv
).Haben Sie Ihr DNS-Setup überprüft?
Probieren Sie die Einstellung
mdns off
in/etc/host.conf
.Dies deaktiviert die mdns-Auflösung und hat mir sehr geholfen.
BEARBEITEN:
Es sieht so aus, als würde Gentoo dies ein bisschen anders handhaben. Um die Multicast-DNS-Suche zu deaktivieren, müssen Sie die Datei ändern
/etc/nsswitch.conf
.Es sollte etwas geben wie:
Ändern Sie es in:
quelle
/etc/host.conf: line 2: bad command
mdns aus, wenn ich rennessh user@hostname
.Das Hinzufügen des Hostnamens
/etc/hosts
kann dieses Problem manchmal beheben.quelle
Überprüfen Sie auch, ob
nscd
installiert ist und ausgeführt wird.Das Fehlen eines DNS-Cache kann die Zeit für die Auflösung des PTR-Datensatzes verlängern (vorausgesetzt, der SSH-Client führt eine DNS-Reverse-Suche nach der IP-Adresse des Servers durch).
quelle
Ich habe das gleiche Problem in der Windows 2008 R2-Umgebung, aber "useDNS no" funktioniert nicht.
Ich versuche, den Hosts die IP und den Host des Verbindungsservers hinzuzufügen, und es ist 30 Sekunden schneller. Das lässt mich denken, dass die Auflösung in DNS sein könnte.
Ich versuche, DNS-Bediener hinzuzufügen, aber dieses löst es nicht.
Mein Server hat zwei DNS-Suffixe. Eine für die Unternehmensdomäne, zu der der Server gehört (domain.com), und die andere für die externe Schnittstelle, die eine Verbindung zu einem privaten Netzwerk herstellt (domain.net).
Die Reihenfolge der DNS-Suffixe lautet zuerst domain.net und dann domain.com
Meine SFTP / SSH-Clients befinden sich in der Unternehmensdomäne. Übrigens sind problematische Kunden aus dem Unternehmensbereich.
Was bei mir funktioniert ist, dass ich zuerst domain.com und dann domain.net zum zweiten mache
Die 2m30s Verbindungsverzögerung vor wurde nur 3-4s.
quelle