Czasami, gdy próbuję ssh
połączyć się z serwerem, pojawia się następujący komunikat:
You don't exist, go away!
Nie widziałem tego przed użyciem ssh
. Co to znaczy? Czy jest problem z ssh lub czymś innym? Dodatkowe informacje:
ssh -q -i private_key [email protected] "command"
Serwer to SUSE Linux. Uruchamiam ssh
polecenie w pętli 10 razy i tylko 1 lub 2 próby powodują wyświetlenie komunikatu Odejdź.
ssh -vv
itp.ssh -vv
, wyjaśnij, dlaczego Twoim zdaniem problem nie jest związany/etc/password
(wskazówka: prawdopodobnie jest to błąd narzekasz na użytkownika, który nie istnieje, prawda?). Jak uwierzytelniasz się w urządzeniu? Czy istnieje scentralizowany serwer uwierzytelniający? Jakie opcje, jeśli przechodziszssh
? Daj nam coś do pracy!Odpowiedzi:
Komunikat o błędzie prawdopodobnie pochodzi z
ssh
twojego komputera. ŹródłoDzieje się tak, jeśli
ssh
nie możesz znaleźć swojej nazwy użytkownika wpasswd
bazie danych.Możesz spróbować uruchomić
getent passwd $USERNAME
wiele razy i sprawdzić, czy to się nie powiedzie.W zależności od
passwd
konfiguracji wyszukiwania spróbuj jednego z tych:/etc/passwd
sssd
lubnscd
działa poprawnie, jeśli to konieczne/var/log/messages
,/var/log/syslog
etc.)Jeśli opublikujesz dane wyjściowe
grep '^passwd' /etc/nsswitch.conf
, wraz z interesującymi częściami danychssh -vv
wyjściowych i dzienników systemowych, ludzie prawdopodobnie mogą pomóc więcej.źródło
Jeśli zmienisz identyfikator UID konta, każda istniejąca powłoka będzie miała tego rodzaju kryzys tożsamości. Sprawdź, porównując UID z wyjścia „id” i wykonaj
grep $(whoami) /etc/passwd
. jeśli zmieniasz UID, sprawdź, czy dla użytkownika nie ma żadnych wpisów w pliku crontab!źródło