Jak ustawić prawidłowe uprawnienia do katalogu SSH w Linux

Jak ustawić prawidłowe uprawnienia do katalogu SSH w Linux

Aby SSH działała dobrze, wymaga prawidłowych uprawnień na ~/.ssh Lub /Strona główna/nazwa użytkownika/.ssh Katalog: Domyślna lokalizacja dla wszystkich plików konfiguracji i uwierzytelniania specyficznego dla użytkownika. Zalecane uprawnienia są odczyt/zapisz/wykonaj dla użytkownika i nie może być dostępny przez grupę i inne.

Oprócz, ssh wymaga również, aby pliki w katalogu miały Przeczytaj/zapisz uprawnienia dla użytkownika i nie są dostępne dla innych. W przeciwnym razie użytkownik może napotkać następujący błąd:

Uwierzytelnianie odrzucone: zła własność lub tryby katalogu 

Ten przewodnik wyjaśnia, jak ustawić prawidłowe uprawnienia na .ssh katalog i przechowywane w nim pliki w systemach Linux.

Ustaw prawidłowe uprawnienia do katalogu SSH w Linux

Jeśli kiedykolwiek napotkasz powyższy błąd, możesz ustawić prawidłowe uprawnienia katalogu SSH na .ssh katalog za pomocą chmod Komenda.

# chmod u+rwx, go-rwx ~/.ssh lub # chmod 0700 ~/.ssh 

Aby sprawdzić uprawnienia na ~/.ssh katalog, użyj polecenia LS z -L I -D Flagi, takie jak:

# ls -ld .SSH/ 
Sprawdź uprawnienia do katalogu SSH

Poniżej znajdują się niektóre pliki, które znajdziesz w ~/.ssh informator:

  • plik klucza prywatnego (mi.G id_rsa) - klucz prywatny do uwierzytelnienia, który zawiera bardzo poufne informacje, dlatego musi mieć uprawnienia do odczytu i zapisu dla właściciela i nie być dostępne przez grupę i inne, w przeciwnym razie SSH odmówi połączenia.
  • klucz publiczny (mi.G .plik pubowy) - Klucz publiczny uwierzytelniania, który zawiera również poufne informacje, dlatego powinien mieć uprawnienia do odczytu i zapisu dla właściciela, uprawnienia tylko do odczytu przez grupę i inne.
  • autoryzowane_keys - zawiera listę kluczy publicznych, które można użyć do logowania się jako ten użytkownik. Nie jest bardzo wrażliwy, ale powinien był czytać i pisać uprawnienia dla właściciela i nie być dostępne dla grupy i innych.
  • znane_hosts - przechowuje listę kluczy hosta dla wszystkich hostów, w które użytkownik SSH zalogował się. Powinien mieć uprawnienia do odczytania i pisania dla właściciela i nie być dostępne dla grup i innych.
  • konfigurator - plik konfiguracyjny dla użytkownika i powinien mieć uprawnienia do odczytu i zapisu dla właściciela i nie powinien być dostępny dla grupy i innych.

Domyślnie pliki pod ~/.ssh Katalog są tworzone za pomocą odpowiednich uprawnień. Aby sprawdzić ich uprawnienia, uruchom następujące polecenie w katalogu domowym:

# ls -l .SSH/ 
Sprawdź uprawnienia do plików w katalogu SSH

Jeśli SSH narzeka na niewłaściwe uprawnienia do dowolnego z powyższych plików, możesz ustawić prawidłowe uprawnienia dla dowolnego z takich plików:

# chmod u+rw, go-rwx .ssh/id_rsa # chmod u+rw, go-rwx .ssh/id_rsa.pub # chmod u+rw, go-rwx .ssh/autoryzowane_keys # chmod u+rw, go-rwx .ssh/znane_hosts # chmod u+rw, go-rwx .ssh/config lub # chmod 600 .ssh/id_rsa # chmod 600 .ssh/id_rsa.Pub # CHMOD 600 .ssh/autoryzowane_keys # chmod 600 .ssh/znane_hosts # chmod 600 .ssh/config 

Ponadto katalog domowy użytkownika nie powinien być pisany przez grupę lub inne, jak pokazano na poniższym zrzucie ekranu.

# ls -ld ~ 
Sprawdź uprawnienia w katalogu użytkowników

Aby usunąć uprawnienia do zapisu dla grupy i innych w katalogu domowym, uruchom to polecenie:

# chmod go-w ~ lub # chmod 755 ~ 

Możesz także przeczytać następujące artykuły związane z SSH:

  • Jak zabezpieczyć i harden openSsh Server
  • 5 najlepszych praktyk bezpieczeństwa serwera OpenSSH
  • Jak skonfigurować logowanie SSH bez hasła w Linux [3 łatwe kroki]
  • Jak zablokować ataki SSH Brute Force za pomocą Sshguard
  • Jak korzystać z pukania portu, aby zabezpieczyć usługę SSH w Linux
  • Jak zmienić port SSH w Linux

To wszystko na razie! Skorzystaj z poniższej sekcji komentarza, aby zadawać pytania lub dodać swoje przemyślenia do tego tematu.