Центр Диагностики & База Системных Ошибок

Решения для Windows Server, Active Directory, 1С, СУБД, Linux, Cisco, MikroTik и IP-телефонии.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, баз данных и сетевого оборудования. Перед выполнением действий обязательно создайте резервную копию. При отсутствии необходимой квалификации обратитесь к ИТ-специалистам.
SSH_PORT_CHANGE Linux / DevOps

Как сменить порт SSH 22 на нестандартный в Ubuntu: защита от ботов

Обновлено: 26.08.2026  ·  Официальная база знаний

Файл системного журнала /var/log/auth.log или journalctl переполнен тысячами записей Failed password for invalid user root from ... из-за непрерывных автоматических атак ботов, сканирующих стандартный 22 порт.

Зачем менять порт SSH?

Большинство автоматических ботов сканируют интернет исключительно по стандартному порту 22. Перенос SSH на случайный порт (например, 2244) снижает шум в логах и отсекает 99% автоматических брутфорс-атак.


Шаг 1. Выберите свободный порт

Рекомендуется выбирать порт в диапазоне от 1024 до 65535 (например: 2244 или 48122), который не занят другими сервисами.


Шаг 2. Откройте новый порт в фаерволе UFW (Критически важно!)

sudo ufw allow 2244/tcp
sudo ufw reload

Шаг 3. Редактирование конфигурации SSH (/etc/ssh/sshd_config)

Откройте файл конфигурации:

sudo nano /etc/ssh/sshd_config
  1. Найдите строку #Port 22.
  2. Раскомментируйте ее (удалите знак решетки #) и укажите ваш новый номер порта:
    Port 2244
  3. Сохраните изменения: Ctrl + O, затем Enter, и Ctrl + X.

Шаг 4. Перезапуск службы SSH

sudo systemctl restart ssh || sudo systemctl restart sshd

Шаг 5. Проверка подключения (НЕ ЗАКРЫВАЯ текущий терминал!)

Откройте новое второе окно терминала на вашем компьютере и проверьте вход по новому порту:

ssh -p 2244 username@IP_СЕРВЕРА

Если вход успешен, можно удалить старое правило 22 порта из фаервола: sudo ufw delete allow 22/tcp.

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

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

Что делать, если в Ubuntu 22.10 / 24.04 смена порта в sshd_config не работает?

В новых версиях Ubuntu используется активация сокетов systemd (ssh.socket). Отредактируйте сокет: sudo systemctl edit ssh.socket, добавив строки: [Socket] ListenStream= ListenStream=2244, затем выполните sudo systemctl daemon-reload && sudo systemctl restart ssh.socket.

Как подключиться через WinSCP или PuTTY по новому порту?

В окне подключения в поле 'Port number' (Номер порта) сотрите цифру 22 и введите ваш новый номер (например, 2244).

Спасет ли смена порта от целенаправленной хакерской атаки?

Смена порта защищает от фоновых автоматических сканеров, но профессиональный порт-сканер (nmap) легко найдет открытый порт. Для максимальной безопасности отключите вход по паролю и используйте только SSH-ключи.

Что делать, если я ошибся с портом и потерял доступ к серверу?

Откройте панель управления вашего VPS-хостинга, войдите через аварийную веб-консоль (VNC / KVM) и исправьте файл /etc/ssh/sshd_config обратно на порт 22.