Zmiana domyślnego portu ssh na Centos 7

Bardzo często potrzebujemy dostępu do serwera protokołem ssh. Wystawianie portu ssh dostępnego „ze świata” jest bardzo niebezpieczne i nie powinno być praktykowane. Niestety czasami jest to jedyny sposób na dostęp do naszego serwera. Gdy decydujemy się na taki krok powinniśmy postarać się jak najlepiej taki dostęp zabezpieczyć poprzez maksymalne ograniczenie szansy wykrycia i udanego włamania na serwer. Możemy to zrobić na kilka sposobów:

  • poprzez ograniczenie dostępu do ssh dla konkretnych, zaufanych adresów IP ( firewall )
  • poprzez ograniczenie możliwości logowania po ssh tylko za pośrednictwem klucza prywatnego
  • poprzez zmianę portu, pod którym jest dostępna usługa sshd

W tym wpisie opiszę tylko ostatni punkt, żeby zebrać potrzebne informacje w jednym miejscu 🙂

Całą operację rozpoczynamy od zmian domyślnego numeru portu w pliku konfiguracyjnym usługi sshd. Domyślny port ma numer 22 i linia z jego definicją jest wykomentowana.

/etc/ssh/sshd_config

# If you want to change the port on a SELinux system, you have to tell
# SELinux about this change.
# semanage port -a -t ssh_port_t -p tcp #PORTNUMBER
#
Port 2234
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::

Następnie musimy w SELinuksie zezwolić usłudze sshd na korzystanie z innego portu niż domyślny:

# semanage port -a -t ssh_port_t -p tcp 2234

Jeżeli dostajemy informację, że nie ma takiego polecenia jak semanage, to możemy je doinstalować poleceniem:

# yum install policycoreutils-python

Następnie restartujemy usługę sshd:

# systemctl restart sshd.service

oraz modyfikujemy ustawienia firewalla, żebyśmy mieli szansę na połączenie się z naszą usługą:

# firewall-cmd --permanent --zone=public --add-port=2234/tcp
# firewall-cmd --zone=public --remove-service=ssh --permanent
# firewall-cmd --reload

Usunęliśmy przy okazji dostęp do usługi na porcie 22, żeby nie zostawiać po sobie bałaganu 🙂

Ten wpis został opublikowany w kategorii CentOS, CentOS, Linux, SELinux, SELinux i oznaczony tagami , , . Dodaj zakładkę do bezpośredniego odnośnika.

Jedna odpowiedź na „Zmiana domyślnego portu ssh na Centos 7

  1. Konrad pisze:

    Te dwie komendy to Mistrzostwo!!! Dzięki temu zrobiłem coś co długo mnie gnębiło:)

    yum install policycoreutils-python
    semanage port -a -t ssh_port_t -p tcp (PORT)

    WIELKIE DZIĘKI

Dodaj komentarz

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