Якщо ви хочете підвищити безпеку сервера, вам потрібно змінити порт SSH із стандартного значення. Порт за замовчуванням є загальновідомим фактом, а отже — реальним ризиком для безпеки, який не можна ігнорувати. Щоб спростити цей процес, ми підготували покрокові інструкції зрозумілою мовою, які пояснюють, як змінити порт SSH у Linux. Огляд містить базову інформацію про протокол SSH і його роль у безпеці сервера. За бажанням можна пропустити цю частину й одразу перейти до практичної інструкції.
Що таке SSH?
Той Протокол Secure SHell (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 дозволяє редагувати файли прямо з CLI, що робить його зручним вибором для підключень 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, а # перед ним означає, що цей рядок є коментарем. Щоб внести зміни, потрібно видалити # щоб розкоментувати рядок. Деякі використовують порт 443 для SSH, який зазвичай зарезервований для шифрування 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 встановлено і активовано за замовчуванням. Щоб вимкнути його, виконайте таку команду в Terminal, як і попередні:
sudo ufw allow 2222/tcp
На цьому зміна порту SSH у Ubuntu завершена. Перейдемо до перевірки з'єднання через новий порт.
Перевірка нового порту SSH
Щоб переконатися, що все пройшло як треба, швидко перевіримо, чи вдалося перенаправити порт SSH. Якщо ви досі працювали в SSH, спочатку завершіть сесію, закривши оболонку. Відкрийте Terminal на клієнтській машині та введіть таку команду для встановлення 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 сьогодні.