Konfiguracja SSH i Telnet
Zdalny dostęp do konsoli serwera to podstawowa umiejętność administratora. Dostęp ten realizowany jest przy pomocy dwóch protokołów: Telnet i SSH (Secure Shell). Telnet jest przestarzały i niebezpieczny, bo przesyła wszystkie dane w postaci czystego tekstu, natomiast SSH zapewnia pełne szyfrowanie i dodatkowe mechanizmy uwierzytelniania.
1. Telnet – instalacja i podstawowa konfiguracja
Telnet nasłuchuje na porcie TCP 23. W środowiskach testowych można go zainstalować, aby pokazać różnice w bezpieczeństwie. Instalacja w Debian/Ubuntu:
sudo apt install telnetd -yPo uruchomieniu usługi można połączyć się z serwerem:
telnet localhostUwaga: podczas przechwytywania pakietów (np. w Wireshark) widoczne będą wszystkie przesyłane hasła.
2. SSH – instalacja OpenSSH Server
OpenSSH zapewnia szyfrowany dostęp na domyślnym porcie 22 oraz dodatkowe usługi SFTP i SCP. Instalacja:
sudo apt install openssh-server -yPo instalacji usługa jest uruchamiana automatycznie. Połączenie testowe z innej maszyny:
ssh użytkownik@adres_ip_serwera3. Hardening SSH – bezpieczna konfiguracja
Kluczowy plik konfiguracyjny: /etc/ssh/sshd_config. Najważniejsze zmiany:
Po edycji restartujemy usługę:
sudo systemctl restart sshd4. Generowanie i rozprowadzanie kluczy SSH
Na komputerze klienckim generujemy parę kluczy:
ssh-keygen -t rsa -b 4096 -C "nazwa@komputera"Klucz publiczny kopiujemy na serwer (np. przy pomocy ssh-copy-id):
ssh-copy-id -i ~/.ssh/id_rsa.pub użytkownik@adres_ip_serweraPo pomyślnym skopiowaniu można połączyć się bez hasła.