SSH co i jak

Jak najbardziej ogólnie działa logowanie ssh? Najogólniej rzecz ujmując piszemy:

ssh root@81.12.13.24

Po czymś takim jesteśmy zalogowani do swojego serwera i możemy operować na plika. Nie musieliśmy podawać ani loginów ani hasłem, a mamy pełny dostęp.

No dobrze, ale teraz tak bardziej obrazowo mówiąc.

Tworzymy za pomocą poniższego polecenia pęk kluczy, czyli tak naprawdę dwa klucze: prywatny oraz publiczny.

 ssh-keygen -t rsa -b 4096 -f .ssh/s_name -C "nazwaSerwera"

ssh-keygen – polecenie generatora kluczy
-t rsawybór szyfrowania (zaleca się rsa)
-b 4096moc szyfrowania, czyli liczba bitów w kluczu
-f .ssh/s_namenazwa, pod którą maja być pliki (jeśli korzystasz z kluczy SSH do wielu serwerów, warto używać tego przełącznika, aby uniknąć nadpisania kluczy z domyślną nazwą,
-C “nazwaSerwera” – komentarz dodany na końcu pliku klucza publicznego, aby umożliwić jego łatwą identyfikację. Zwykle jako komentarz używany jest adres e-mail, ale użycie dowolnego z nich najlepiej sprawdza się w przypadku Twojej infrastruktury.

Domyślnie klucze zostaną zapisane w katalogu domowym w folderze .ssh i pod nazwą id_rsa

/Users/User/.ssh/id_rsa

Ale, że my nadaliśmy mu nazwę powyżej to będzie się nazywał

s_name

Przypominam, że ten katalog jest domyślnie niewidoczny.

Klucz prywatny zostaje na Naszym komputerze, ale już plik publiczny musimy umieścić na serwerze do którego chcemy się podłączać.

Jak to zrobić?

Są dwa sposoby:

  1. Skopiuj klucz zamieszczony w pliku publicznym do schowka poleceniem:
pbcopy > .ssh/s_id.pub

Następnie zaloguj się na serwer i wklej go do:

.ssh/authorized_keys

2. Znacznie szybszy – użyj polecenia

ssh-copy-id -I .ssh/s_name użytkownik@ip_serwera