По умолчанию SSH прослушивает порт 22. Изменение порта SSH по умолчанию добавляет дополнительный уровень безопасности к вашему серверу, снижая риск автоматических атак.
В этом руководстве объясняется, как изменить порт SSH по умолчанию в Linux. Мы также покажем вам, как настроить брандмауэр, чтобы разрешить доступ к новому порту SSH.
Содержание
Изменение порта SSH
Изменить SSH-порт изображения — простая задача. Все, что вам нужно сделать, это отредактировать файл конфигурации SSH и перезапустить службу.
В следующих разделах объясняется, как изменить порт SSH в системе Linux.
1. Выбор нового номера порта
В Linux номера портов ниже 1024 зарезервированы для хорошо известных служб и могут быть связаны только с пользователем root. Хотя вы можете использовать порт в диапазоне 1-1024 для службы SSH, чтобы избежать проблем с распределением портов в будущем, рекомендуется выбрать порт выше 1024.
В этом примере изменится порт SSH на 5522, вы можете выбрать любой порт, который хотите.
2. Настройка брандмауэра
Перед изменением порта SSH вам необходимо настроить брандмауэр, чтобы разрешить трафик на новый порт SSH.
Если вы используете UFW, инструмент настройки брандмауэра по умолчанию для Ubuntu, выполните следующую команду, чтобы открыть новый порт SSH:
sudo ufw allow 5522/tcp
В CentOS инструментом управления брандмауэром по умолчанию является FirewallD. Чтобы открыть новый порт, выполните:
sudo firewall-cmd --permanent --zone=public --add-port=5522/tcp
sudo firewall-cmd --reload
Пользователям CentOS также необходимо настроить правила SELinux:
sudo semanage port -a -t ssh_port_t -p tcp 5522
Если вы используете iptables в качестве брандмауэра, чтобы открыть новый порт, запустите:
sudo iptables -A INPUT -p tcp --dport 5522 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
3. Настройка SSH
Откройте файл конфигурации SSH /etc/ssh/sshd_config
текстовом редакторе:
sudo vim /etc/ssh/sshd_config
Найдите строку, начинающуюся с Port 22
. В большинстве случаев эта строка начинается с символа решетки ( #
). Удалите хэш #
и введите новый номер порта SSH:
Port 5522
Будьте особенно осторожны при изменении файла конфигурации SSH. Неправильная конфигурация может привести к сбою запуска службы SSH.
После этого сохраните файл и перезапустите службу SSH, чтобы изменения вступили в силу:
sudo systemctl restart ssh
В CentOS служба ssh называется sshd
:
sudo systemctl restart sshd
Чтобы убедиться, что демон SSH прослушивает новый порт 5522, введите:
ss -an | grep 5522
Результат должен выглядеть примерно так:
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:57638
tcp LISTEN 0 128 [::]:5522 [::]:*
Использование нового порта SSH
Чтобы указать порт, вызовите команду ssh
за которой следует параметр -p <port_number>
:
ssh -p 5522 username@remote_host_or_ip
Если вы регулярно подключаетесь к нескольким системам, вы можете упростить рабочий процесс, указав все свои подключения в файле конфигурации SSH .
Выводы
В этом руководстве вы узнали, как изменить порт SSH на сервере Linux. Вам также следует настроить аутентификацию на основе ключей SSH и подключаться к серверам Linux без ввода пароля.
Не стесняйтесь оставлять комментарии, если у вас есть вопросы.