Как сменить порт SSH

10.03.2021, 22:06

Удаление администрирование Linux обычно выполняется посредством сетевого протокола прикладного уровня – SSH. Его особенность в том, что он позволяет производить туннелирование TCP-соединений. Он появился еще в 1995 году, но даже сегодня не утратил своей актуальности. Протокол позволяет при помощи графической оболочки производить администрирование, для этого достаточно воспользоваться командной строкой, а также мониторить удаленные файловые системы и выполнять различные файловые операции.

SSH-сервер по умолчанию работает с использованием 22-го TCP-порта. Но в некоторых случаях возникает необходимость сменить этот порт. Обычно потребность возникает с целью обеспечения превентивной защиты от bruteforce-атак, направленных именно на 22-й порт, или для освобождения этого порта, занятого другим приложением. В общем, ситуации могут быть самыми разными, и независимо от причины, вы сможете сменить порт, приложив немного усилий.

Меняем порт SSH

В большей части видов Linux конфигурационный файл SSH-сервера располагается по пути /etc/ssh/sshd_config.

Чтобы узнать в точности, где он расположен, воспользуйтесь командой:

$ sudo find /etc/ -name "sshd_config"

ИЗМЕНИТЬ ПОРТ SSH

Как только вы узнали путь, откройте в текстовом редакторе файл sshd_config:

$ sudo nano /etc/ssh/sshd_config

В открывшемся редакторе нас интересует в первую очередь строка под номером 22. Находим и меняем значение Port 22 на Port 333. Может быть и так, что строка закомментирована, в таком случае удалите комментирование и измените значение порта из примера выше. Не забудьте сохранить введенные изменения.

Port 22

Следующей командой перезапускаем домен SSH:

$ sudo systemctl restart sshd

Чтобы проверить результат работы выполните команду:

$ sudo netstat -tupln | grep ssh

В открывшемся редакторе нас интересует строка tcp 0.0.0.0:333 LISTEN, которая подсказывает о том, что указанный Port 333 используется.

открытые порты SSH

Во всех SSH-клиентах не забудьте изменить порт. Также не забывайте внести порт в список исключений файрволла, если таковой имеется в вашей системе. Причем желательно это сделать сразу до того, как вы перезагрузите SSH на сервере, к которому установлен подключение.

 

Для UFV команда:

$ sudo ufw allow 333/tcp

Для iptables команда другая:

$ sudo firewall-cmd --permanent --add-port=333/tcp

sudo firewall-cmd reload

Порт 333 указан в качестве примера, только для того, чтобы показать, как сделать изменения в системе. Ничего сложного в этом нет. Всего за несколько минут вы сможете избавиться от назойливой атаки ботов.