Odpowiedź: W rzeczywistości wykonywał odwrotne rozpoznawanie DNS. W oparciu o poniższe sugestie i ten artykuł dodałem „UseDNS no” do mojego sshd_config, ponownie uruchomiłem ssh, a teraz monit o hasło wyświetla się natychmiast.
Kiedy przesyłam SSH do mojego serwera, pojawia się standardowy monit „login as:”, a następnie monit „hasło użytkownika @ hosta:”. Z jakiegokolwiek powodu wyświetlanie drugiego zawsze zajmuje trochę czasu. Mój serwer nie jest obciążony i zazwyczaj wykonuje polecenia dość szybko.
Teraz rozmawiamy tylko około 10 sekund między momentem naciśnięcia Enter dla nazwy użytkownika a wyświetleniem drugiego monitu, ale kiedy to robisz, robi się to denerwujące. Podejrzewam, że Ubuntu szuka mojego konta użytkownika, ale ma <5 kont na całej instalacji.
Aktualizacja @Josh / var / log / messages zawiera ten klejnot:
Oct 28 16:54:59 Athena sudo: pam_sm_authenticate: Called
Oct 28 16:54:59 Athena sudo: pam_sm_authenticate: username = [msmith]
Oct 28 16:54:59 Athena sudo: Warning: Using default salt value (undefined in ~/.ecryptfsrc)
Oct 28 16:55:01 Athena sudo: Passphrase key already in keyring; rc = [1]
Oct 28 16:55:02 Athena sudo: Passphrase key already in keyring; rc = [1]
Oct 28 16:55:02 Athena sudo: There is already a key in the user session keyring for the given passphrase.
Gdzie msmith to moja nazwa użytkownika. Co to wszystko znaczy?
tcpdump
? Dzięki temu dowiesz się, czy serwer sam zużywa cały ten czas, czy faktycznie komunikuje się z klientem.Odpowiedzi:
Czy to możliwe, że wykonuje odwrotne wyszukiwanie DNS na twoim IP? Możesz sprawdzić wyniki online, jeśli klient używa publicznego adresu IP, lub użyć czegoś takiego jak na swoim serwerze:
Czy jest coś w
/var/log/messages
?źródło
Prawdopodobnie odwrotne rozpoznawanie DNS (serwer próbuje uzyskać nazwę klienta na podstawie adresu IP) zajmuje dużo czasu. Czy możesz sprawdzić, czy / etc / ssh / sshd_config ma ustawienie „VerifyReverseMapping yes”? Ustaw go na „VerifyReverseMapping no” i sprawdź, czy pomaga.
Edycja: Wygląda na to, że VerifyReverseMapping jest już przestarzałe, a useDNS to nowa konfiguracja w sshd_config .
źródło
yes
, więc nie szukaj, jeśliuseDNS
jest ustawiona :)W twoim pliku sshd_config ustaw GSSAPIAuthentication = nie
https://bugs.launchpad.net/ubuntu/+source/openssh/+bug/84899
źródło
Zawsze możesz zalogować się przy użyciu nazwy użytkownika, zaczynając od:
czy to ma jakiś wpływ?
Jeśli używasz PuTTY, można go skonfigurować w obszarze Połączenie -> Dane jako nazwa użytkownika z automatycznym logowaniem.
źródło
Jeśli nie masz odpowiednich nazw domen dla wszystkiego, po prostu wymyśl coś i włóż
/etc/hosts
. Sprawdź, czy pójdzie to szybciej ... nie zawracaj sobie głowy.com
po prostu użyj „bob, kolęda, ted, alicja” lub cokolwiek chcesz ...Jeśli problemem są przekroczenia limitów czasu rozwiązania, to to rozwiąże.
źródło
Pamiętaj, że klient wykona również sprawdzanie zwrotnego DNS, co może potrwać 30 sekund lub dłużej, jeśli odwrotne odwzorowanie DNS nie istnieje w przypadku niektórych konfiguracji rozdzielczości.
W jednym
/etc/ssh/ssh_config
lub w~/.ssh/config
zestawie,CheckHostIP no
aby wyłączyć to wyszukiwanie po stronie klienta.Zobacz
man 5 ssh_config
dalsze szczegóły.źródło
Znalazłem alternatywne rozwiązanie tego problemu: - http://www.patrickmin.com/linux/tip.php?name=ssh_pause
Miałem ten sam problem z zalogowaniem się do komputera z systemem Linux przy użyciu Putty pod Windows. Dodanie adresu IP mojego okna systemu Windows do / etc / hosts na komputerze z systemem Linux rozwiązało problem.
źródło
Dla przypomnienia, doświadczyłem tego samego problemu, w którym ssh byłby szybki z domu na mój serwer domowy (głównie używając go do git), ale zajęło by to około 10-20 sekund w pracy, aby otrzymać monit o hasło.
Musiałem się wyłączyć
UseDNS no
i uruchomić ponowniesshd
sudo systemctl restart sshd.service
. Następnie działa ze wszystkich lokalizacji.Wiem, że pytanie zostało udzielone i zaakceptowane, ale chciałem dodać tę informację, ponieważ musiałem „aktywnie” ustawić ją na „ nie” , aby przestała używać dns.
źródło
Sprawdź, czy działa nslcd (demon LDAP):
Może to powodować ten problem.
Jeśli jest uruchomiony, zatrzymaj go i usuń z listy usług
źródło