SSH nie powiodło się uwierzytelnianie kluczem publicznym

16

Mam serwer i chcę mieć możliwość SSH z dwoma różnymi użytkownikami. Mam skonfigurowane uwierzytelnianie klucza publicznego dla pierwszego użytkownika i działa dobrze, jednak nie mogę się zalogować z drugim użytkownikiem. Różnica między authorized_keysplikiem polega na tym, że drugi użytkownik ma dwa klucze (oba nie działają podczas uwierzytelniania). Zarówno katalog .ssh, jak i plik autoryzowanych kluczy mają 755 uprawnień. Klient ssh wysyła klucz, który chcę uwierzytelnić. Co może być problemem?

laci37
źródło
Pokaż polecenia dla dwóch użytkowników i różne klucze dla drugiego użytkownika, którego używasz do ssh na serwerze.
lord.garbage
Cieszę się, że powyższe zadziałało w twoim przypadku. Poza tym po prostu zresetowałem hasło. Radzę też zajrzeć, jeśli pam_tally zablokujesz konto. pam_tally2 --user userb --reset Spowoduje to zresetowanie nieudanych operacji na koncie i umożliwi zalogowanie się.
Tman

Odpowiedzi:

18

Po pierwsze, katalog .ssh powinien mieć 700 uprawnień, a plik autoryzowanych_kluczy powinien mieć 600.

chmod 700 .ssh
chmod 600 .ssh/authorized_keys

Jeśli utworzyłeś pliki z powiedzmy root dla użytkownika B, wykonaj również:

chown -R userb:userb .ssh

Jeśli problem nadal występuje, opublikuj dane wyjściowe z pliku dziennika ssh w swoim pytaniu, a ja zaktualizuję swoją odpowiedź.

W przypadku Debiana:

less /var/log/auth

W przypadku Redhat:

less /var/log/secure
diabelnie
źródło
chown -R userb:userb .sshzastąp userbaktualnego użytkownika. też zrobiłem na chown -R userb:userb .ssh/authorized_keys wszelki wypadek. Naprawdę pomocna odpowiedź !!
IvRRimUm
5

Znalazłem tę wiadomość w /var/log/auth.log:

Oct 22 13:27:58 hagyma sshd[27420]: User userb not allowed because account is locked

Ustawiłem hasło dla userb za pomocą sudo passwd userbi odblokowało konto.

laci37
źródło
było to rozwiązanie dla użytkownika kopii zapasowej utworzonego jako konto systemowe
Stuart Cardall
..i teraz masz dwa problemy. mam nadzieję, że hasło jest bezpieczne.
tedder42
3

Dla mnie sshdignorowanie, ~/.ssh/authorized_keysponieważ /homepartycja została zamontowana w nietypowy sposób. Próbowałem wszystkiego, ustawiłem poprawne uprawnienia i działało to dopiero po modyfikacji w sshd_config:

StrictModes no
idragosalex
źródło
Działa