Обновяване на предпочитанията за бисквитки

Как да деактивирате root достъпа през SSH и да създадете сигурен потребител в Ubuntu 24.04

27 Jun 2025, 20:34:37
Изключването на отдалечения достъп до сървъра за потребителя root е основна мярка за сигурност при използване на сървъри с операционна система на базата на Linux. Като цяло, при систематично обновяване на паролата на потребителя root или изключване на авторизацията с парола и спазване на други елементарни правила за сигурност, няма нищо страшно в това, че SSH връзката е достъпна за суперпотребителя. Именно по тази причина в повечето случаи, когато наемете отделен сървър или VPS, получавате именно тези данни за авторизация на сървъра. Но, както и всеки друг базов случай (порт 22 за SSH или URL /admin за админ панела на сайта), това потребителско име е мишена за злоумишленици. Друга опасност от използването на потребител root за ежедневни задачи е неговите максимални права в системата. Скриптовете, заредени и изпълнени под този потребител, ще имат достъп до всички части на вашия сървър.
В тази статия ще работим на наскоро инсталирана ОС Ubuntu 24.04, но инструкцията е актуална и за много други системи на базата на ядро Linux. В нея ще изпълним три прости действия: ще създадем нов потребител, ще му дадем възможност да използва sudo и ще деактивираме root-достъпа по SSH.

Създаване на нов потребител

Свързваме се със сървъра чрез SSH като потребител root:
ssh root@your_server_IP
  • your_server_IP - IP адрес на вашия сървър
Създаване на нов потребител с помощта на програмата adduser:
adduser ehuser
  • ehuser - вашето потребителско име
Посочваме и потвърждаваме паролата. Данни като име, телефон и др. могат да бъдат пропуснати, като натиснете Enter. Потвърждаваме верността на информацията с буквата Y и получаваме отговор за успешното създаване на потребителя и добавянето му в различни групи:
20250627_0R5ZPIjt

Включване на sudo за потребител

Изпълнихме само една команда, но вече можем да се свържем със сървъра чрез SSH с нашия нов потребител. При изпълнение на каквито и да е команди от името на суперпотребителя обаче, познатата на всички утилита sudo извежда грешка - {your_user} is not in the sudoers file.:
20250627_UHs3HYeC
За да поправим това, трябва да добавим новия ни потребител в групата sudo. Това може да се направи с помощта на програмата usermod:
usermod -aG sudo ehuser
  • -a - добавяне на потребител в група, без да се изтрива от други групи;
  • -G sudo - посочете в коя група трябва да се добави потребителят. В нашия случай sudo;
  • ehuser - името на вашия потребител.
Командата няма да изведе нищо, което означава, че няма грешки при изпълнението на операцията:
20250627_BcU2Taln
При използване на sudo под нов потребител този път ни очаква успех:
20250627_UsGDqtM1

Изключване на root-достъпа по SSH

За да изпълним следните действия, а именно директно да деактивираме достъпа по SSH за потребителя root, вече можем да се свържем със сървъра под нов потребител и да изпълним всички следващи команди, използвайки sudo.
Отваряме файла с настройките на SSH:
sudo nano /etc/ssh/sshd_configНамираме параметъра PermitRootLogin:
20250627_d1MLDfTB
Променяме значението yes на no, запазваме файла с комбинацията от клавиши Ctrl + O, излизаме от nano с комбинацията Ctrl + X.
Рестартирайте SSH сървъра:
sudo systemctl restart ssh.serviceСега, когато се опитате да се свържете чрез SSH като потребител root, сървърът ви ще покаже грешка за достъп:
20250627_EzHsmJCG
Прилагането на тази практика за осигуряване на сигурност има смисъл само в комбинация с други основни практики, като промяна на стандартния SSH порт, за която писахме в статията Как да променя SSH порта?, и настройка на авторизацията чрез SSH-ключове, която също е разгледана в статията Настройка на авторизация чрез SSH ключове на Linux сървър. В случай на затруднения при прилагането на тези мерки за сигурност на отделените сървъри и VPS от EuroHoster, винаги можете да се обърнете за помощ към нашия онлайн чат или система за тикети.