SSH: „Uprawnienia 0644 dla pliku„ mój_klucz.pub ”są zbyt otwarte.”

21

Dlaczego 0644np. Jest -rw-r--r--zbyt otwarty na klucz SSH? Nie mogłem również znaleźć żadnych fałszywych uprawnień do .sshkatalogu ( 0700) lub katalogu domowego ( 0731).

Przy okazji otrzymuję ten błąd podczas testowania parafrazy klucza za pośrednictwem ssh-keygen -y -f my_key.pub

Z poważaniem

użytkownik 2820379
źródło

Odpowiedzi:

7

Być może uruchomiłeś ssh-keygen na niewłaściwym pliku. ssh-keygen -ydziała na pliku klucza prywatnego . Pliki „.pub” zwykle zawierają klucz publiczny . Prawdopodobnie masz tam plik o nazwie my_key, bez żadnego rozszerzenia, i powinien to być tryb 0600. Jest to plik, który powinien zawierać klucz prywatny.

Aby bezpośrednio odpowiedzieć na twoje pytanie, klucze SSH są zwykle używane w celu umożliwienia połączenia ze zdalnymi serwerami bez hasła. Posiadanie klucza prywatnego pozwoliłoby komuś zalogować się na twoje konto w dowolnym systemie, który akceptuje klucz. ssh-keygen i inne narzędzia ssh wymagają, aby pliki kluczy prywatnych miały ograniczone uprawnienia, ponieważ są wrażliwe i muszą pozostać bezpieczne.

Kenster
źródło
11

0644 nie powinien być zbyt otwarty na klucz publiczny, ale jest zbyt otwarty na klucz prywatny.

Twój klucz prywatny powinien mieć uprawnienie, 0600a klucz publiczny musi mieć pozwolenie 0644.

Nawiasem mówiąc, powinieneś także zadbać o pozwolenie na .sshfolder. Powinien mieć uprawnienia 0700, aby tylko Ty, właściciel, miał kontrolę nad folderem.

Jeśli chodzi o katalog domowy, nie należy przyznawać uprawnień do zapisu grupie i innym osobom.

Uruchom chmod go-w /home/usernamepowinien to naprawić.

pallxk
źródło
Absolutnie nie postępuj zgodnie z tymi instrukcjami. To NIE jest to, co powinieneś zrobić. Spowoduje to również zresetowanie wszystkich uprawnień do katalogu domowego. Powinieneś modyfikować TYLKO .sshfolder i id_rsasam plik, a nie cały katalog domowy!
niftylettuce
9

Jedyne polecenie, które musisz uruchomić, to chmod 600 ~/.ssh/id_rsa. Otóż ​​to.

Spowoduje to zmianę uprawnień do pliku, dzięki czemu właściciel (ty) może go odczytać i zapisać, co spowoduje usunięcie otrzymanego komunikatu o błędzie.

niftylettuce
źródło
Zaktualizowano @TwistyImpersonator
niftylettuce
0

Odpowiedzi powyżej są poprawne, ale przed uruchomieniem dowolnego w chmodcelu ustalenia uprawnień, upewnij się, że Twoje IdentityFileadresy ~/.ssh/configodnoszą się do twojego klucza prywatnego. Nowicjusze mogą błędnie to rozumieć i .pubzamiast tego odnosić się do klucza publicznego (z rozszerzeniem), co prowadzi do tego samego błędu (ponieważ uprawnienia do pliku klucza publicznego są zbyt otwarte dla klucza prywatnego).

Javarome
źródło