Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

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

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.

Полезные материалы
Рекомендуем