Jak zmienić port SSH w Linuksie

Domyślnie SSH nasłuchuje na porcie 22. Zmiana domyślnego portu SSH dodaje dodatkową warstwę bezpieczeństwa do Twojego serwera poprzez zmniejszenie ryzyka automatycznych ataków.

Ten poradnik wyjaśnia jak zmienić domyślny port SSH w Linuksie. Pokażemy również, jak skonfigurować zaporę sieciową, aby zezwolić na dostęp do nowego portu SSH.

Najlepszym sposobem ochrony serwera przed atakami jest skonfigurowanie zapory sieciowej tak, aby zezwalała na dostęp do portu 22 tylko zaufanym hostom i skonfigurowanie uwierzytelniania opartego na kluczach SSH.

Zmiana portu SSH #

Zmiana portu SSH obrazu jest prostym zadaniem. Wystarczy edytować plik konfiguracyjny SSH i zrestartować usługę.

Poniższe sekcje wyjaśniają, jak zmienić port SSH w systemie Linux.

Wybieranie nowego numeru portu #

W systemie Linux numery portów poniżej 1024 są zarezerwowane dla dobrze znanych usług i mogą być używane tylko przez root. Chociaż możesz użyć portu z zakresu 1-1024 dla usługi SSH, aby uniknąć problemów z alokacją portów w przyszłości, zaleca się wybranie portu powyżej 1024.

W tym przykładzie zmienimy port SSH na 5522, możesz wybrać dowolny port.

Dostosowanie zapory sieciowej #

Przed zmianą portu SSH, musisz dostosować zaporę sieciową aby zezwolić na ruch na nowym porcie SSH.

Jeśli używasz UFW, domyślnego narzędzia do konfiguracji firewalla w Ubuntu, uruchom następujące polecenie, aby otworzyć nowy port SSH:

sudo ufw allow 5522/tcp

W CentOS, domyślnym narzędziem do zarządzania firewallem jest FirewallD. Aby otworzyć nowy port, należy uruchomić:

sudo firewall-cmd --permanent --zone=public --add-port=5522/tcpsudo firewall-cmd --reload

Użytkownicy systemu CentOS muszą również dostosować reguły SELinux:

sudo semanage port -a -t ssh_port_t -p tcp 5522

Jeśli używasz iptables jako zapory, aby otworzyć nowy port, uruchom:

sudo iptables -A INPUT -p tcp --dport 5522 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT

Konfiguracja SSH #

Otwórz plik konfiguracyjny SSH /etc/ssh/sshd_config za pomocą edytora tekstu:

sudo vim /etc/ssh/sshd_config

Wyszukaj linię zaczynającą się od Port 22. W większości przypadków linia ta zaczyna się od znaku hash (#). Usuń znak hash # i podaj nowy numer portu SSH:

/etc/ssh/sshd_config
Port 5522

Podczas modyfikacji pliku konfiguracyjnego SSH należy zachować szczególną ostrożność. Nieprawidłowa konfiguracja może spowodować, że usługa SSH nie zostanie uruchomiona.

Po wykonaniu tych czynności zapisz plik i uruchom ponownie usługę SSH, aby zastosować zmiany:

sudo systemctl restart ssh

W systemie CentOS usługa ssh ma nazwę sshd:

sudo systemctl restart sshd

Aby sprawdzić, czy demon SSH nasłuchuje na nowym porcie 5522, wpisz:

ss -an | grep 5522

Wyjście powinno wyglądać tak:

tcp LISTEN 0 128 0.0.0.0:5522 0.0.0.0:*tcp ESTAB 0 0 192.168.121.108:5522 192.168.121.1:57638tcp LISTEN 0 128 :5522 :*

Usługiwanie się nowym portem SSH #

Aby określić port, należy wywołać polecenie ssh, a następnie opcję -p <port_number>:

ssh -p 5522 username@remote_host_or_ip

Jeśli regularnie łączysz się z wieloma systemami, możesz uprościć swój przepływ pracy, definiując wszystkie połączenia w pliku konfiguracyjnym SSH.

Zakończenie #

W tym poradniku dowiedziałeś się, jak zmienić port SSH na serwerze Linux. Powinieneś również skonfigurować uwierzytelnianie oparte na kluczach SSH i łączyć się z serwerami Linux bez podawania hasła.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *