Rozdział 2 · 2.3
Umieszczenie klucza na serwerze i jego test
Czy podczas instalacji wkleili Państwo już klucz? Wtedy jest on już zapisany dla użytkownika root. W przeciwnym razie prosimy umieścić go teraz. Należy to zrobić dla każdego użytkownika, który ma logować się kluczem.
Z komputera Mac lub z Linux
ssh-copy-id root@203.0.113.10
Hasło serwera wpisują Państwo jeden raz. Program umieszcza Państwa klucz publiczny w pliku ~/.ssh/authorized_keys na serwerze i ustawia właściwe uprawnienia.
Z systemu Windows
W systemie Windows polecenie ssh-copy-id nie istnieje. W PowerShell można zrobić to samo jednym wierszem:
type $env:USERPROFILE\.ssh\id_ed25519.pub | ssh root@203.0.113.10 "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
Ręcznie
Wiersz można też samodzielnie wpisać do pliku, na przykład przez konsolę. Prosimy otworzyć plik w edytorze nano, wkleić wiersz i zapisać skrótem Ctrl+O oraz Enter, a następnie zamknąć skrótem Ctrl+X:
root@web1:~# mkdir -p ~/.ssh && chmod 700 ~/.ssh
root@web1:~# nano ~/.ssh/authorized_keys
root@web1:~# chmod 600 ~/.ssh/authorized_keys
Jeden klucz w jednym wierszu. Uprawnienia są ważne: jeśli katalog lub plik jest zapisywalny dla innych, serwer SSH zignoruje Państwa klucz.
Test
Prosimy otworzyć nowe okno terminala i się zalogować. Można nawet wymusić, aby próbowany był wyłącznie klucz:
ssh -o PreferredAuthentications=publickey root@203.0.113.10
Jeśli zalogują się Państwo bez hasła serwera (najwyżej z hasłem klucza, czyli passphrase), klucz działa. Dopiero wtedy prosimy przejść do Wyłączanie logowania hasłem i jako root.
Usuwanie klucza
Zgubili Państwo laptop albo odchodzi współpracownik? Prosimy otworzyć ~/.ssh/authorized_keys i usunąć wiersz z nazwą tego klucza (fragment po długim kodzie, np. anna laptop). Zmiana obowiązuje od razu dla nowych połączeń.
