Logowanie kluczem¶
Logowanie SSH po kluczu RSA - zwiększa bezpieczeństwo uwierzytelniania użytkownika z serwerem oraz znacząco utrudnia wykorzystanie niektórych form ataku na SSH (np. bruteforce). Utrudnia osobom nieautoryzowanym dostanie się do konsoli serwera.
Generowanie kluczy RSA w systemie Windows¶
- Pobieramy i uruchamiamy darmową aplikację
PuTTygen(stąd ) służącą do generowania kluczy. - Zostawiamy domyślne wartości (
SSH-2 RSA, długość klucza2048 bitów), klikamyGenerate. - W momencie generowania klucza poruszamy myszką w wyznaczonym przez program obszarze.
- W kolejnym oknie podajemy dwukrotnie hasło zabezpieczające dla generowanych kluczy.
- Przechodzimy do
Conversionsi wybieramyExport OpenSSH keycelem zapisu klucza prywatnego dla OpenSSH. Jeżeli klucz prywatny potrzebujemy dla PuTTY to można wybraćSave private keyaby zapisać klucz prywatny w formaciePuTTY Private Key Files (*.ppk). - Zawartość okna (po
Public key for pasting into OpenSSH authorized_keys file:) zapisujemy na koncie do pliku~/.ssh/authorized_keys. W przypadku braku pliku, ścieżki~/.ssh/authorized_keysnależy ją utworzyć.
Generowanie kluczy RSA w systemach Linux / macOS¶
- Wykonujemy polecenie
ssh-keygen -t rsa, powinniśmy otrzymać komunikat:Generating public/private rsa key pair. Enter file in which to save the key (~/.ssh/id_rsa): - Nie zmieniamy nic, wciskamy
ENTER. - Dwukrotnie podajemy hasło zabezpieczające dla generowanych kluczy:
Your identification has been saved in ~/.ssh/id_rsa. Your public key has been saved in ~/.ssh/id_rsa.pub. - Jeżeli otrzymaliśmy powyższy komunikat to znaczy, że pojawiły się dwa klucze, jeden prywatny (znajduje się w lokalizacji
~/.ssh/id_rsa) i jeden publiczny (znajduje się w lokalizacji~/.ssh/id_rsa.pub).
Logowanie do serwera z systemu Windows¶
W przypadku logowania z Windows uruchamiamy PuTTy, przechodzimy do zakładki Connection, następnie Data. Podajemy login konta w polu Auto login username, następnie przechodzimy do zakładki SSH i Auth i podajemy ścieżkę do naszego klucza prywatnego w polu: Private key file for authentication. Zapisujemy całość wracając do Session i klikając Save.
Logowanie do serwera z systemu typu Unix¶
Przenosimy klucz publiczny na serwer poleceniem:
ssh-copy-id -i ~/.ssh/id_rsa.pub LOGIN@SERWER
Następnie logujemy się na serwer poleceniem:
ssh LOGIN@SERWER