SSH czyli source shell jest protokołem komunikacji w sieciach TCP/IP serwer – klient a od wersji 2.0 nawet klient – serwer. SSH będziemy używać głównie do zdalnego logowania z komputerem/serwerem i wykonywania poleceń. Do połączenia się z serwerami SSH został przypisany port TCP 22.
Najpopularniejszy zestaw narzędzi do zarządzania SSH, to pakiet OpenSSH zainstalowany domyślnie w większości dystrybucji GNU/Linux. OpenSSH domyślnie zawiera serwer SSH oraz klienta SSH. Dla użytkowników Windowsa z pomocą przychodzi program Putty. W przypadku Linuxa będzie on instalowany domyślnie i wystarczy użyć komendy ssh aby połączyć się z serwerem.
ssh user@host_name
Dzięki usłudze SSH możemy połączyć się między innymi z:
- Hosting
- Serwery VPS
- Serwery dedykowane
- VM czyli maszyny wirtualne
- serwer domowy, cluster
Instalacja i łączenie się z serwerem przez SSH może wydawać się trudnym zadaniem, ale w rzeczywistości jest to całkiem proste. W takim razie jak połączyć się z serwerem za pomocą ssh.
Instalacja SSH na serwerze Linux
SSH to pakiet oprogramowania, który jest zazwyczaj instalowany domyślnie w większości dystrybucji systemu Linux. Jeśli jednak nie mamy zainstalowanego na serwerze, można go zainstalować za pomocą menedżera pakietów danej dystrybucji. Na przykład, w Debianie lub Ubuntu, użyjesz polecenia apt:
sudo apt install openssh-server
Po zainstalowaniu SSH możesz uruchomić usługę SSH za pomocą polecenia:
sudo systemctl start ssh
Teraz, gdy uruchomiliśmy SSH, możesz połączyć się z serwerem z poziomu klienta Windows.
Jak się połączyć z serwerem za pomocą SSH
Istnieje kilka różnych sposobów na połączenie się z serwerem poprzez SSH. Najpopularniejszym z nich jest użycie klienta SSH wbudowanego w system Windows. Aby to zrobić, otwórz Wiersz polecenia i wpisz:
ssh username@server_ip
Zamień “username” na nazwę użytkownika Twojego serwera, a “server_ip” na adres IP Twojego serwera. Naciśnij klawisz Enter, wprowadź swoje hasło. Teraz zaczynasz nową sesję na swoim serwerze połączony za pomocą protokołu ssh. BRAWO !
PODSTAWOWE INFORMACJE
W tych przykładach będę używać adresu mojego domowego serwera postawionego na Raspberry Pi 4.
Aby połączyć się przez protokół SSH wpisujemy komendę
ssh pi@192.169.0.121
- ssh – komenda protokołu łączności
- pi – użytkownik na którego będziemy się logować na serwerze
- 192.168.0.121 – adres serwera z którym się chcemy połączyć
Jeśli nie podamy nazwy użytkownika podczas łączenia się z serwerem, tak jak pokazuje przykład poniżej to zalogujesz się pod użytkownika z którego nawiązujesz połączenie.
ssh 192.168.0.121
ZAPISANIE ADRESÓW W PLIKU CONFIG
W katalogu ssh tworzymy plik config
nano ~/.ssh/config
W nowo utworzonym pliku wpisujemy informacje odnośnie serwera.
Host rpi4
Hostname 192.168.0.121
User pi
- Host – wprowadzamy własną nazwę dla serwera
- Hostname – jest to adres serwera, może to być IP, może również być pełna nazwa domeny
- User – nazwa użytkownika
- IdentityFile – jeśli łączysz się za pomocą klucza to tu wskazujesz niestandardową lokalizację klucza
- IdentitiesOnly – wymusza używanie łączenia tylko za pomocą kluczy
- PubkeyAuthentication – czy próbować połączyć za pomocą kluczy ssh
Można dodawać do lisy wszystkie serwery z którymi się chcę połączyć.