Как изменить порт SSH в Ubuntu

LightNode
By LightNode ·

Введение

Протокол Secure Shell (SSH) — это криптографический сетевой протокол, который позволяет пользователям безопасно получать доступ и управлять удалёнными системами через незащищённую сеть. По умолчанию SSH использует порт 22. Однако есть несколько веских причин, по которым вы можете захотеть изменить этот порт в вашей системе Ubuntu:

  1. Повышенная безопасность: Изменение стандартного порта SSH поможет защитить вашу систему от автоматических ботов и скриптов, которые сканируют соединения на порту 22.

  2. Уменьшение шума в логах: Переход на нестандартный порт значительно снизит количество автоматических попыток входа, зафиксированных в ваших логах, что облегчит мониторинг реальных угроз.

  3. Требования безопасности: Некоторые политики безопасности или стандарты могут требовать использования нестандартных портов для протоколов удалённого доступа.

  4. Ограничения со стороны интернет-провайдеров (ISP): В некоторых случаях интернет-провайдеры могут блокировать или ограничивать трафик на стандартных портах, таких как 22, чтобы предотвратить хостинг серверов на домашних соединениях.

Хотя изменение порта SSH само по себе не является всеобъемлющей мерой безопасности, оно может быть эффективной частью более широкой стратегии, часто называемой "безопасностью через неясность". В этом руководстве вы узнаете, как изменить порт SSH в системе Ubuntu, что поможет сделать ваш сервер более безопасным.

Необходимые условия

Перед тем как приступить к изменению порта SSH, убедитесь, что у вас есть следующее:

  1. Система Ubuntu: Это руководство предназначено для Ubuntu, хотя шаги могут быть схожи и для других дистрибутивов Linux.

  2. Root или sudo доступ: Вам понадобятся административные права для изменения системных конфигураций.

  3. Базовые знания терминала: Необходимо знание базовых операций в командной строке Linux.

  4. Доступ по SSH: Убедитесь, что у вас есть доступ по SSH к вашей системе.

  5. Резервный метод доступа: Очень важно иметь альтернативный способ доступа к серверу (например, через консоль), на случай если что-то пойдёт не так.

Шаги для изменения порта SSH

1. Сделайте резервную копию файла конфигурации SSH

Всегда полезно сделать резервную копию перед изменением системных конфигураций. Чтобы создать резервную копию файла конфигурации SSH, выполните следующую команду:

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

Эта команда создаёт копию оригинального файла конфигурации с расширением .bak. Если что-то пойдёт не так, вы сможете легко восстановить конфигурацию из этой копии.

2. Отредактируйте файл конфигурации SSH

Теперь откроем файл конфигурации SSH для редактирования. Вы можете использовать любой текстовый редактор, с которым вы знакомы. В этом примере мы используем nano:

sudo nano /etc/ssh/sshd_config

Эта команда откроет файл sshd_config в текстовом редакторе nano с правами root.

3. Измените номер порта

После того как файл sshd_config открыт, найдите строку, которая выглядит так: #Port 22. Эта строка обычно закомментирована (обозначена символом # в начале строки).

Чтобы изменить порт SSH:

  1. Удалите символ #, чтобы раскомментировать строку.
  2. Замените 22 на желаемый номер порта.

Например, если вы хотите изменить порт на 2222, строка должна выглядеть следующим образом:

Port 2222

Выберите номер порта в диапазоне от 1024 до 65535, чтобы избежать конфликтов с известными сервисами. Также убедитесь, что выбранный вами порт не используется другим сервисом на вашем сервере.

4. Сохраните и закройте файл конфигурации

После внесения изменений:

  • Если вы используете nano, нажмите Ctrl + X, затем Y, и наконец Enter, чтобы сохранить файл и выйти.
  • Если вы используете vim, нажмите Esc, затем введите :wq и нажмите Enter.

5. Настройте правила брандмауэра

Если вы используете UFW (Uncomplicated Firewall), что часто встречается на системах Ubuntu, вам нужно разрешить соединения через новый порт SSH. Выполните следующие команды:

sudo ufw allow 2222/tcp
sudo ufw reload

Замените 2222 на ваш новый номер порта.

Если вы используете другой брандмауэр, ознакомьтесь с его документацией, чтобы узнать, как открыть новый порт.

6. Перезапустите службу SSH

Чтобы применить изменения, перезапустите службу SSH следующей командой:

sudo systemctl restart sshd

Эта команда перезапустит демона SSH с новой конфигурацией.

7. Проверьте новый SSH порт

Перед тем как закрыть текущую сессию SSH, важно проверить, сможете ли вы подключиться через новый порт. Откройте новое окно терминала и попробуйте подключиться с помощью следующей команды:

ssh -p 2222 username@your_server_ip

Замените 2222 на ваш новый номер порта, username — на ваше имя пользователя, а your_server_ip — на IP-адрес вашего сервера.

Если подключение прошло успешно, вы можете закрыть старую сессию SSH и использовать новый порт для будущих подключений.

Устранение неполадок

Если у вас возникли проблемы после изменения порта SSH, рассмотрите следующие варианты:

  1. Подключение отклонено: Убедитесь, что новый порт открыт в настройках брандмауэра.

  2. Порт уже занят: Если вы получили сообщение об ошибке, что порт уже используется, выберите другой номер порта.

  3. Служба SSH не запускается: Проверьте статус службы SSH с помощью команды sudo systemctl status sshd. Обратите внимание на сообщения об ошибках в выводе.

  4. Восстановление изменений: Если вы не можете подключиться вообще, используйте ваш резервный метод доступа (например, через консоль) и восстановите резервную копию файла конфигурации:

    sudo cp /etc/ssh/sshd_config.bak /etc/ssh/sshd_config
    sudo systemctl restart sshd
    

Change ssh port on Ubuntu

Часто задаваемые вопросы (FAQ)

1. Обязательно ли изменять порт SSH?

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

2. Какой номер порта следует выбрать?

Выберите номер порта в диапазоне от 1024 до 65535, чтобы избежать конфликтов с известными сервисами. Избегайте использования таких популярных альтернативных портов SSH, как 2222 или 22222, так как они также часто сканируются.

3. Влияет ли изменение порта SSH на текущие соединения?

Изменение порта не повлияет на вашу текущую сессию SSH. Однако все новые подключения должны будут использовать новый номер порта.

4. Как подключиться к SSH после изменения порта?

Используйте флаг -p с указанием нового номера порта при подключении. Например:

ssh -p 2345 username@your_server_ip

5. Можно ли вернуть порт SSH обратно на 22, если это необходимо?

Да, вы можете вернуть порт на 22 или любой другой номер, выполнив те же шаги, описанные в этом руководстве.

6. Будет ли изменение порта SSH влиять на SFTP или SCP?

SFTP и SCP используют тот же порт, что и SSH. Вам нужно будет указать новый порт при использовании этих сервисов.

7. Безопасно ли использовать такие известные альтернативные порты, как 2222?

Хотя использование портов, таких как 2222, лучше, чем использование стандартного 22, они всё равно часто сканируются злоумышленниками. Лучше выбрать более уникальный номер порта.

8. Что делать, если я забуду новый порт SSH?

Всегда храните информацию о новом порте SSH в безопасном месте. Если вы забыли порт, вам может понадобиться использовать альтернативные методы доступа (например, консоль), чтобы вернуть или сбросить настройки.

9. Влияет ли изменение порта SSH на

производительность сервера?

Изменение порта SSH оказывает незначительное влияние на производительность сервера. Преимущества в виде уменьшения числа автоматических атак обычно перевешивают любые минимальные вопросы производительности.

10. Должен ли я сообщить команде или другим пользователям о смене порта SSH?

Да, важно сообщить всем авторизованным пользователям о смене порта SSH. Предоставьте им новые данные для подключения, чтобы обеспечить непрерывный доступ.