Чтобы повысить безопасность сервера, измените порт SSH — стандартный номер порта хорошо известен и представляет собой реальную угрозу. Мы подготовили пошаговую инструкцию на понятном языке: она объясняет, как сменить порт SSH в Linux. В начале — краткие сведения о протоколе SSH и его роли в безопасности сервера. Если хотите сразу перейти к делу, пропустите введение и начните с практической части.
Что такое SSH?
Параметр Протокол безопасной оболочки (SSH) — это механизм защиты, позволяющий вам и другим пользователям подключаться к защищённому серверу через незащищённую сеть (например, Интернет). Без него не обойтись, если вы планируете запускать сервер: будь то VPS или выделенный сервер. Вам потребуется подключаться к серверу со своего компьютера, и это соединение пройдёт через Интернет. Интернет — среда небезопасная, а значит, расслабляться не стоит. Именно поэтому протокол Secure SHell оснащён рядом полезных инструментов для обеспечения и поддержания безопасности сервера, включая средства аутентификации по паролю и ключам.
Почему безопасность SSH важна?
Когда вы получаете выделенный сервер или VPS, вам предоставляется полный root-доступ к системе. Это означает, что вы можете использовать протокол SSH для удалённого подключения к серверу и выполнения любых настроек. SSH не поддерживает графику и работает только в режиме командной строки, однако остаётся основным инструментом администрирования сервера. Как и все сетевые службы, SSH использует порт по умолчанию. Но поскольку порт SSH сменить сложнее, чем в других протоколах — например, в VNC — многие пользователи этим не занимаются. В итоге злоумышленники и вредоносное ПО получают больше шансов проникнуть на сервер: они заранее знают, какой порт атаковать. Поэтому стоит один раз сменить порт SSH по умолчанию. С помощью этого руководства вы сделаете это быстро и без лишних усилий.
Хостинг Linux без лишних сложностей
Хотите удобнее размещать сайты и веб-приложения? Разрабатываете что-то новое? Просто не нравится Windows? Именно для этого у нас есть Linux VPS.
Получите свой Linux VPSКак сменить порт SSH в Linux
На протяжении всего руководства мы будем использовать терминал Linux для ввода необходимых команд. Скриншоты сделаны на Fedora Server 34, однако большинство команд подходят для всех основных дистрибутивов Linux. Там, где требуются команды для конкретного дистрибутива, они приведены отдельно. Для выполнения этих шагов необходимо войти на сервер через VNC или SSH. Теперь перейдём непосредственно к процессу.
Шаг 1: открытие терминала
Для начала откройте терминал. Если вы подключены через SSH, терминал уже используется по умолчанию. Если вы работаете через протокол удалённого рабочего стола, например VNC, откройте терминал сочетанием клавиш Ctrl+Alt+T или через меню приложений в любом дистрибутиве Linux.
Читайте также: Генерация ключей SSH в Windows 10
Шаг 2: редактирование конфигурационного файла SSH
Далее воспользуемся текстовым редактором nano. Nano позволяет редактировать файлы прямо из командной строки — это делает его идеальным выбором при работе через SSH. Как правило, nano установлен по умолчанию; если это не так, команды для его установки приведены в приложении. С помощью редактора мы откроем файл конфигурации SSH: /etc/ssh/sshd_config (при наличии подключения к удалённому рабочему столу можно использовать любой удобный текстовый редактор). Для этого введите следующую команду:
sudo nano /etc/ssh/sshd_config
Прокрутите файл вниз до атрибута Port:
![[редактор nano в терминале Linux с открытым файлом конфигурации SSH]](https://cloudzy.com/wp-content/uploads/Screenshot-from-2021-07-17-11-13-53.png)
Шаг 3: (необязательно) смена порта SSH для повышения безопасности
Как видите, порт по умолчанию указан как 22, а символ # перед строкой означает, что она закомментирована. Чтобы внести изменения, не забудьте удалить # для раскомментирования строки. Некоторые пользователи используют порт SSH 443, обычно зарезервированный для шифрования SSL, — это сбивает с толку потенциальных злоумышленников. Допустим, вы хотите изменить порт SSH на 3333. Для этого внесите следующее изменение:
From: #Port 22 To: Port 3333
Убедитесь, что перед словом нет # перед словом Port. Нажмите Ctrl+O чтобы сохранить изменения и Ctrl+X чтобы выйти из редактора.
Читайте также: Telnet против SSH
Шаг 4: Перезапустите службу SSHD для применения изменений
Настройка параметров SSH завершена, но чтобы изменения вступили в силу, нужно перезапустить службу SSHD, которая отвечает за подключения SSH. Для этого выполните следующую команду:
sudo systemctl reload sshd
Шаг 5: Настройте брандмауэр
Прежде чем воспользоваться усиленной защитой сервера, настройте брандмауэр так, чтобы он не блокировал новый порт SSH. Здесь потребуются команды, специфичные для конкретного дистрибутива, поскольку разные дистрибутивы используют разные брандмауэры по умолчанию.
Как изменить порт SSH в CentOS/RHEL/Fedora
Большинство дистрибутивов на базе RHEL, например CentOS, используют комплекс безопасности SELinux (Security-Enhanced Linux), который в том числе выполняет функции брандмауэра. Сначала проверьте, включён ли SELinux. Для этого выполните следующую команду:
sudo sestatus
Если вы видите что-то подобное, где первая строка содержит Статус SELinux: включён выполните шаги ниже. Если нет — пропустите этот раздел и переходите к последнему шагу. здесь.
![[Команда для проверки статуса SELinux]](https://cloudzy.com/wp-content/uploads/Screenshot-from-2021-07-17-11-53-29.png)
Теперь, когда мы убедились, что SELinux включён, воспользуемся пакетом semanage Если SELinux отключён, с помощью этих инструкций его можно быстро включить. Выполните следующую команду, чтобы добавить выбранный порт в список портов SSH в SELinux (в данном примере — 3333):
sudo semanage port -a -t ssh_port_t -p tcp 3333
Теперь нужно добавить порт 3333 в публичную зону брандмауэра — это зарегистрированный диапазон открытых номеров портов:
sudo firewall-cmd --zone=public --add-port=3333/tcp --permanent
Осталось перезапустить службу брандмауэра, чтобы изменения вступили в силу:
sudo firewall-cmd --reload
На этом смена порта SSH на CentOS завершена. Проверить новый порт можно ниже.
Читайте также: Лучший клиент SSH для Windows в 2022 году
Как изменить порт SSH в Ubuntu/Debian/Kali
В Ubuntu и некоторых других дистрибутивах на базе Debian по умолчанию установлен и активен брандмауэр UFW. Чтобы открыть порт, выполните следующую команду в терминале так же, как все предыдущие:
sudo ufw allow 2222/tcp
На этом смена порта SSH на Ubuntu завершена. Переходим к проверке подключения через новый порт.
Проверка нового порта SSH
Теперь проверим, всё ли прошло как надо, и убедимся, что перенаправление портов SSH выполнено успешно. Если вы работали через SSH до этого момента, сначала завершите сессию, закрыв оболочку. Откройте терминал на клиентской машине и выполните следующую команду для установки SSH-соединения:
shh 00.00.00.00 -p 3333
Разумеется, замените 00.00.00 на актуальный IP-адрес вашего сервера — его можно найти в панели управления на сайте провайдера.
Хостинг Linux без лишних сложностей
Хотите удобнее размещать сайты и веб-приложения? Разрабатываете что-то новое? Просто не нравится Windows? Именно для этого у нас есть Linux VPS.
Получите свой Linux VPSДополнительные меры безопасности
На этом основные шаги по усилению безопасности SSH-сервера заканчиваются, но работа администратора на этом не останавливается. Ещё предстоит многое: отключить доступ root-аккаунта, задать более сложные пароли и так далее. Ключевую роль в обеспечении безопасности сервера, конечно же, играет хостинг-провайдер, поэтому выбирать его нужно осознанно. Именно поэтому Cloudzy размещает серверы Linux VPS на защищённых машинах с аппаратными и AI-брандмауэрами, интеллектуальной защитой DDoS и другими собственными средствами безопасности. Доверьтесь надёжному решению и получите защищённое решение Linux VPS от Cloudzy прямо сейчас.