Muszę użyć SSH na moim komputerze, aby uzyskać dostęp do mojej witryny i jej baz danych (konfigurowanie dowiązania symbolicznego - ale robię dygresję).
Następujący problem: wpisuję polecenie: ssh-keygen -t dsa
Aby wygenerować publiczną / prywatną parę kluczy dsa. Zapisuję go w domyślnej ( /home/user/.ssh/id_dsa
): i dwukrotnie wpisz Enter hasło
wtedy odzyskam to:
OSTRZEŻENIE: NIEBEZPIECZNY PRYWATNY KLUCZOWY PLIK!
Uprawnienia 0755 dla „/home/etc.ssh/id_rsa” są zbyt otwarte. Zaleca się, aby pliki kluczy prywatnych NIE były dostępne dla innych. Ten klucz prywatny zostanie zignorowany. złe uprawnienia: zignoruj klucz: [następnie ŚCIEŻKA PLIKU w VAR / LIB / SOMEWHERE]
Teraz, aby obejść ten problem, spróbowałem-
sudo chmod 600 ~/.ssh/id_rsa sudo chmod 600 ~/.ssh/id_rsa.pub
Ale wkrótce po tym, jak mój komputer zawiesił się - i po ponownym zalogowaniu się pojawiło się could not find .ICEauthority error
. Rozwiązałem ten problem i usunąłem pliki SSH, ale chcę móc korzystać z odpowiednich uprawnień, aby uniknąć tych problemów w przyszłości. Jak skonfigurować ICEauthority lub gdzie zapisać klucze SSH? Jakie uprawnienia powinny mieć? Czy używanie maszyny wirtualnej byłoby najlepsze?
To wszystko jest bardzo nowe i jestem na bardzo stromej ścieżce uczenia się, więc doceniam każdą pomoc.
chmod -R 600 ~/.ssh
.chmod 700 $HOME/.ssh
ichmod 600 $HOME/.ssh/id_rsa
chmod
poleceniami. Albo to zbieg okoliczności, albo uruchomiłeś inne polecenia, których nam nie pokazujesz.Odpowiedzi:
chmod 600 ~/.ssh/id_rsa; chmod 600 ~/.ssh/id_rsa.pub
(tj.chmod u=rw,go= ~/.ssh/id_rsa ~/.ssh/id_rsa.pub
) są poprawne.chmod 644 ~/.ssh/id_rsa.pub
(tj.chmod a=r,u+w ~/.ssh/id_rsa.pub
) również byłoby poprawne, alechmod 644 ~/.ssh/id_rsa
(tj.chmod a=r,u+w ~/.ssh/id_rsa
) nie byłoby. Twój klucz publiczny może być publiczny, ważne jest, że klucz prywatny jest prywatny.Również
.ssh
sam katalog musi być zapisywalny tylko przez Ciebie:chmod 700 ~/.ssh
lubchmod u=rwx,go= ~/.ssh
. Oczywiście musisz mieć możliwość odczytu i dostępu do plików w nim zawartych (wykonaj zezwolenie). Nie jest bezpośrednio szkodliwy, jeśli inni mogą go przeczytać, ale nie jest również użyteczny.Nie trzeba
sudo
. Nie używajsudo
do manipulowania własnymi plikami, które mogą prowadzić tylko do błędów.Błąd o
.ICEauthority
nie jest związany z wyświetlanymichmod
poleceniami. Albo to zbieg okoliczności, albo uruchomiłeś inne polecenia, których nam nie pokazujesz.źródło
Chcę dodać do powyższych odpowiedzi, że dla mnie mój katalog domowy (
~/
) również musiał mieć uprawnienia755
, niezależnie od uprawnień~/.ssh
i plików w nim zawartych. (To było na serwerze Synology NAS, może nie dotyczyć wszystkich linuksów)źródło