Błąd logowania SSH, odmowa dostępu

Klucze SSH (Secure Shell) są używane w protokole SSH do uwierzytelniania sesji i nawiązywania połączenia między komputerem lokalnym a serwerem SSH. Zazwyczaj najlepszym sposobem na nawiązanie tego połączenia jest użycie klucza publicznego. Po nawiązaniu połączenia z serwerem, SSH eliminuje potrzebę podawania hasła przy każdym logowaniu i automatycznie nawiązuje połączenie z tym serwerem.

Błąd: odmowa dostępu SSH. Spróbuj ponownie.

Jednak w przypadku korzystania z klucza publicznego żądanie połączenia klienta SSH może czasami zostać odrzucone przez serwer, co może spowodować wystąpienie błędu odmowy uprawnień SSH.

W tym artykule przedstawimy różne rozwiązania pozwalające naprawić błąd „Odmowa uprawnień SSH”, ale najpierw przyjrzyjmy się przyczynom występowania tego błędu.

Istnieją dwie główne przyczyny tego błędu. Jedną z najczęstszych jest wyłączona autoryzacja hasłem na serwerze SSH.

Inną częstą przyczyną tego błędu jest brak uprawnień dostępu do folderu „ssh”, co w zasadzie oznacza, że ​​dostęp do pliku Autoryzowane klucze Wyłączony.

Rozwiązanie 1: Włącz uwierzytelnianie hasłem na serwerze SSH

Jak wspomniano powyżej, jeśli serwer nie umożliwia połączenia SSH z wykorzystaniem uwierzytelniania hasłem, połączenie najprawdopodobniej się nie powiedzie.

  1. Aby tego uniknąć, należy zalogować się do serwera SSH i z tego komputera/serwera otworzyć plik konfiguracyjny za pomocą następującego polecenia:
    sudo nano / etc / ssh / sshd_config

    To polecenie konfiguracyjne zostanie otwarte w terminalu:

    Dostęp do pliku konfiguracyjnego

  2. W tym pliku konfiguracyjnym znajdź wiersz „Uwierzytelnianie hasłem” i „odkomentuj” ten wiersz, usuwając symbol „#” na końcu:Znajdź i aktywuj uwierzytelnianie hasłemUwierzytelnianie hasłem jest aktywowane
  3. Po zakończeniu zapisz plik konfiguracyjny i wyjdź, naciskając „CTRL + O”, a następnie „CTRL + X”. Następnym krokiem jest ponowne uruchomienie usługi SSH. Aby to zrobić, użyj następującego polecenia:
    sudo systemctl uruchom ponownie sshd

    Uruchom ponownie usługę SSH

  4. Po wykonaniu tej czynności ponownie połącz się z serwerem SSH z poziomu klienta, aby uzyskać następujące wyniki:Łączenie się z serwerem SSH

Rozwiązałem błąd i udało mi się nawiązać połączenie z serwerem SSH.

Rozwiązanie 2: Włącz uwierzytelnianie kluczem publicznym

Czasami użytkownicy mogą natknąć się na modyfikację lub odmianę błędu, w której status błędu zmienia się na „Odmowa dostępu SSH (klucz publiczny)”, a błąd ten wynika z braku włączonego uwierzytelniania publicznego na serwerze SSH.

  1. W takim przypadku należy przejść do komputera serwera SSH i otworzyć plik konfiguracyjny za pomocą następującego polecenia:
    sudo nano / etc / ssh / sshd_config

    W pliku konfiguracyjnym wystarczy wyłączyć logowanie roota i włączyć „PublicKeyAuthentication”:

    Wyłącz PermitRootLogin i włącz PubkeyAuthentication

  2. Następnie upewnij się, że opcja UsePAM została włączona również w pliku konfiguracyjnym:Włącz UsePAM
  3. Ponownie zapisz i wyjdź z pliku za pomocą kombinacji klawiszy „CTRL + O”, następnie „CTRL + X”, a następnie uruchom ponownie usługę SSH za pomocą polecenia:
     sudo nano / etc / ssh / sshd_config
  4. Po wykonaniu tej czynności spróbuj połączyć się ponownie, aby uzyskać następujące wyniki:
    Spróbuj ponownie połączyć się z serwerem SSH

Rozwiązałem błąd SSH Permission Denied.klucz publiczny).

Rozwiązanie 3: Zezwól na dostęp do katalogu SSH

Klucz publiczny jest często przechowywany w podkatalogu autoryzowanych kluczy (authorized_keys) w katalogu „ssh”. Jeśli autoryzacje tego podkatalogu lub całego katalogu są nieprawidłowe, połączenie SSH w końcu zwróci błąd.

  1. W takich przypadkach wystarczy zmienić uprawnienia pliku „authorized_keys” za pomocą następującego polecenia:
    sudo chmod 600 ~/.ssh/authorized_keys

    Umożliwi to dostęp do uprawnień do odczytu i zapisu dla autoryzowanych kluczy.

  2. Następnie należy przyznać uprawnienia do wykonywania katalogowi nadrzędnemu za pomocą polecenia:
    sudo chmod 700 ~/.ssh

    Po uruchomieniu tych poleceń spróbuj połączyć się z serwerem SSH, aby uzyskać następujące wyniki:

    Pomyślne połączenie z serwerem SSH

Wynik pokazuje, że błąd został rozwiązany.

Dodatkowa poprawka błędu odmowy uprawnień SSH

Błąd „Odmowa dostępu” może wystąpić, gdy hasło serwera SSH jest nieprawidłowe. Często jest to spowodowane literówką lub zmianą hasła przez serwer bez wiedzy klienta. W takich przypadkach, gdy użytkownik wprowadzi hasło do połączenia SSH, w terminalu pojawia się następujący błąd:

Odmowa dostępu „Nieprawidłowe hasło”

W takich przypadkach skontaktuj się z obsługą serwera SSH i zapytaj, czy zmienili hasło, lub po prostu sprawdź, czy nie popełniłeś błędu ortograficznego. Po wykonaniu tej czynności będziesz mógł zidentyfikować błąd i połączyć się z serwerem SSH.

Wpisz hasło „Serwer SSH działa”

Błąd „Odmowa dostępu SSH” nie jest nowy i wynika głównie z wyłączenia uwierzytelniania hasłem lub kluczem publicznym, a także z nieprawidłowych uprawnień w katalogu „ssh” lub „authorized_keys”. W tym przewodniku opisano rozwiązania, które można zastosować, aby naprawić błąd i wznowić połączenie. Dodatkowo, błąd ten może wystąpić z powodu zmiany hasła przez serwer SSH lub błędu ortograficznego. W takim przypadku najlepiej skontaktować się z pomocą techniczną serwera SSH lub ponownie wpisać hasło, upewniając się, że nie ma w nim błędów ortograficznych.

Możliwość dodawania komentarzy nie jest dostępna.