ssh mówi: Nie istniejesz, odejdź!


14

Czasami, gdy próbuję sshpołą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 root@192.168.0.11 "command" 

Serwer to SUSE Linux. Uruchamiam sshpolecenie w pętli 10 razy i tylko 1 lub 2 próby powodują wyświetlenie komunikatu Odejdź.


5
Spróbuj wyszukać przed zadaniem pytań. Jest to standardowy komunikat o błędzie, a 5-minutowe wyszukiwanie powinno powiedzieć, co to znaczy. Ponadto, pytając Qs, pamiętaj, aby dołączyć system operacyjny, system operacyjny maszyny, z którą się łączysz, wyjście ssh -vvitp.
terdon

2
OK, w takim przypadku wspomnij o tym, powiedz nam o omawianych systemach operacyjnych, powiedz nam, co wykluczyłeś, pokaż nam wyniki 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 przechodzisz ssh? Daj nam coś do pracy!
terdon

1
Zwykle zgadzam się z Joelem w sprawie prostych pytań i to pytanie wzbudziło moje zainteresowanie. Jednak @coffeMug, jeśli masz problem, opisz go jasno (i udokumentuj, co próbowałeś rozwiązać).
phunehehe

1
@terdon Podałem więcej informacji.
coffeMug

1
„Uruchamiam polecenie ssh w pętli 10 razy i tylko 1 lub 2 próby powodują wyświetlenie komunikatu Odejdź”. To jest dokładnie to, o czym musisz wspomnieć, to trochę zmienia wszystko :).
terdon

Odpowiedzi:


21

Komunikat o błędzie prawdopodobnie pochodzi z sshtwojego komputera. Źródło

Dzieje się tak, jeśli sshnie możesz znaleźć swojej nazwy użytkownika w passwdbazie danych.

Możesz spróbować uruchomić getent passwd $USERNAMEwiele razy i sprawdzić, czy to się nie powiedzie.

W zależności od passwdkonfiguracji wyszukiwania spróbuj jednego z tych:

  • Upewnij się, że Twoja nazwa użytkownika pojawia się w /etc/passwd
  • Upewnij się, że sssdlub nscddziała poprawnie, jeśli to konieczne
  • Upewnij się, że połączenie z serwerem konta, np. NIS, LDAP itp. Działa
  • Sprawdź pliki dziennika systemu na komputerze ( /var/log/messages, /var/log/syslogetc.)

Jeśli opublikujesz dane wyjściowe grep '^passwd' /etc/nsswitch.conf, wraz z interesującymi częściami danych ssh -vvwyjściowych i dzienników systemowych, ludzie prawdopodobnie mogą pomóc więcej.


To wydaje się być poprawnym wyjaśnieniem problemu. :-)
coffeMug

1
Może się to często zdarzyć, jeśli uwierzytelniasz się za pośrednictwem serwera LDAP, a zasady Polkit (lub podobne) nie dodają poprawnie do żadnych lokalnych grup. SSH i inne podstawowe narzędzia systemowe patrzą tylko na / etc / passwd i nie rozumieją PAM / etc bez pomocy, a czasem wcale.
dragon788,

4

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!

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.