SSH – podstawy korzystania

SSH, z angielskiego Secure Shell, to protokół komunikacyjny służący przede wszystkim do nawiązywania bezpiecznego połączenia z komputerami w sieci. W szerszym znaczeniu jest to cała rodzina protokołów, do których zalicza się takie protokoły jak SFTP czy SCP. Od innych protokołów i poprzedników (takich jak FTP, rlogin czy telnet) różni go to, że dane przesyłane za pomocą SSH są szyfrowane i bezpieczne. W systemach linuksowych obsługę i odpowiednie narzędzia do SSH zapewnia OpenSSH.

Przypuśćmy zatem, że mamy jakiś komputer, z którym chcemy się połączyć przez SSH. Do tego celu potrzebujemy znać IP komputera, użytkownika oraz jego hasło.

ssh użytkownik@ip

Jeśli było to nasze pierwsze połączenie, to zostaliśmy zapytani o wymianę kluczy – należy potwierdzić. Potem zostaniemy zapytani o hasło i voilà jesteśmy na obcym komputerze, możemy robić wszystko, na co pozwala linuksowy terminal. Proste, skomplikujmy więc sytuację, przypuśćmy, że serwer SSH na tym komputerze działa na porcie 555 zamiast domyślnego 22 – w tym wypadku, aby się zalogować, musimy dodatkowo podać numer portu, a więc:

ssh -p 555 użytkownik@ip

Pójdźmy dalej. Możemy się przecież łączyć za pomocą klucza. Zaletą takiego rozwiązania jest to, że jest bezpieczniejsze i nie będziemy potrzebowali hasła użytkownika przy logowaniu. Do wygenerowania klucza i przesłania go na serwer posłużą nam następujące komendy:

ssh-keygen – wygenerowanie klucza, domyślnie jest to RSA o długości 2048 bitów, ale możemy to dostosować czy dodać komentarz. Możemy także ustawić hasło – będzie to dodatkowe zabezpieczenie w przypadku kradzieży klucza.

ssh-copy-id [-i /ścieżka/do/klucza] użytkownik@ip – wysłanie klucza publicznego na docelowy serwer. W nawiasach jest dodatkowy parametr – ścieżka do klucza, jeśli ustawiliśmy inną niż domyślna. Jeśli łączymy się po innym porcie niż domyślny, będziemy musieli podać również port, analogicznie do przykładu wyżej.

I to już wszystko, co trzeba wiedzieć, aby móc korzystać z dobrodziejstw z SSH. W przyszłych wpisach przyjrzymy się konfiguracji serwera SSH oraz o konfiguracji użytkownika.

Dodaj komentarz