Jak sprawić, by logowanie bez hasła działało


12

Wygenerowałem klucz i skopiowałem go do mojego celu:

ssh-keygen
ssh-copy-id username@hostname

Zostawiłem domyślną lokalizację klucza i nie ustawiłem żadnego hasła.

Przez chwilę potem byłem w stanie ssh username@hostnamebez pytania o hasło, a potem przestało działać z jakiegoś powodu.


2
Zobacz unix.stackexchange.com/tags/ssh/info… Niech to będzie pytanie referencyjne, które możemy zamknąć innym jako duplikat.
Gilles „SO- przestań być zły”,

Odpowiedzi:


8

Jeśli uwierzytelnianie za pomocą klucza publicznego nie działa: upewnij się, że po stronie serwera katalog domowy ( ~), ~/.sshkatalog i ~/.ssh/authorized_keysplik są zapisywalne tylko przez ich właściciela . W szczególności żadna z nich nie może być zapisywalna przez grupę (nawet jeśli użytkownik jest sam w grupie). chmod 755lub chmod 700jest w porządku, chmod 770nie jest.

Co sprawdzić, gdy coś jest nie tak:

  • Uruchom, ssh -vvvaby zobaczyć wiele wyników debugowania. Jeśli opublikujesz pytanie z pytaniem, dlaczego nie możesz połączyć się z ssh, dołącz to wyjście (możesz chcieć anonimizować nazwy hosta i użytkownika).
  • Jeśli to możliwe, należy sprawdzić logi serwera, zazwyczaj w /var/log/daemon.loglub /var/log/auth.loglub podobny.
  • Jeśli uwierzytelnianie za pomocą klucza publicznego nie działa, sprawdź ponownie uprawnienia, szczególnie bit grupy (patrz wyżej).

Cześć, dlaczego authorized_keysgrupa nie powinna pisać? Czy SSH odrzuca to ze względów bezpieczeństwa?
Cześć,

1
@YdobEmos Każdy, kto może pisać, authorized_keysmoże dodać własny klucz i zalogować się na konto. Dlatego tylko użytkownik musi mieć pozwolenie. (Możliwość zapisywania w grupie plików jest w rzeczywistości bezpieczna, jeśli w tej grupie nie ma innego użytkownika, ale trudno jest niezawodnie wykryć, kiedy członkostwo w grupie może pochodzić z sieciowych baz danych.)
Gilles „SO - przestań być zły”

1

Katalogiem domowym celu był 755 drwxr-xr-x. Zmiana na opcję zapisu grupowego 775 drwxrwxr-xzłamała konfigurację bez hasła.


Ten sam problem jeszcze go nie rozwiązał.

Masz na myśli, że nie możesz zalogować się bez hasła, nawet po ustawieniu grupy katalogów do zapisu?
tshepang,

TAK - zobacz unix.stackexchange.com/q/208152/11085 , CentOS 7 64-bit, gdzie próbuję zalogować się przy użyciu moich kluczy id_rsa, ale zawsze kończy się to niepowodzeniem.


0

Zakładając RHEL / CentOS i zakładając, że masz dostęp administratora do zdalnego serwera, na którym użytkownik newuserchce ssh.

Uzyskaj newuser'sistniejące id_rsa.pubi gotowe.

Wykonaj kroki:

useradd newuser
mkdir /home/newuser/.ssh
vi /home/newuser/.ssh/authorized_keys
# copy newuser's id_rsa.pub into authorized_keys and save
chmod 640 /home/newuser/.ssh/authorized_keys
chmod 700 /home/newuser/.ssh/
chmod 700 /home/newuser/
chown newuser:newuser -R /home/newuser/

Spróbuj newusersię zalogować.

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.