Първата и най-важна стъпка към защитата на Linux сървъри и системи е предотвратяването на неизисквания достъп на злонамерени страни. Правилният контрол на потребителските акаунти е един от многото начини за подобряване на сигурността на вашата система.

Укрепеният потребителски акаунт предотвратява системата от най-често срещаните методи за атака на хоризонтална или вертикална ескалация на привилегии. Следователно, като системен администратор на Linux, вие също сте отговорни за защитата на вашия сървър чрез ефективни техники за сигурност.

Тази статия обхваща някои основни контроли за сигурност на потребителския акаунт, за да се предотврати ненужен достъп и да се коригират възможни вратички за компрометиране на системата.

1. Ограничете достъпа до root акаунт

По подразбиране всяка инсталация на Linux настройва root акаунт, достъпен за всеки отвън чрез SSH. Въпреки това, достъпът до основния акаунт чрез SSH или достъпът на множество потребители вътре в системата може да причини проблеми с отказването.

instagram viewer

Например, нападателят може с груба сила да влезе като root потребител и да получи достъп до системата.

За да ограничите ненужния root достъп отвътре/извън системата на Linux, можете:

  • Добавете друг потребител и му дайте root привилегии
  • Деактивирайте SSH root влизане

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

Да се дайте sudo или root разрешения към обикновен потребителски акаунт на Linux, добавете потребителя към sudo група, както следва:

usermod -aG sudo потребителско име

Сега превключете към потребителския акаунт с помощта на командата su и проверете неговите root привилегии, като издадете команда, достъпна само за root потребител:

su - потребителско име
sudo systemctl рестартирайте sshd

Активирането на sudo разрешенията осигурява някои добри предимства за сигурност, като например:

  • Не е необходимо да споделяте root пароли с обикновени потребители.
  • Помага ви да проверите всички команди, изпълнявани от редовни потребители, което означава, че съхранява кой, кога и къде подробности за изпълнението на командите в /var/log/secure файл.
  • Освен това можете да редактирате /etc/sudoers файл за ограничаване на разрешенията на суперпотребител на обикновените потребители. Можете да използвате командата су -л за да проверите текущите root права на потребител.

Деактивирайте Root SSH влизане

За да деактивирате root SSH достъпа във вашата система, първо отворете основния конфигурационен файл.

sudo vim /etc/ssh/sshd_config

Сега декоментирайте следния ред, за да зададете права за влизане в root не:

PermitRootLogin no

Запазете файла и рестартирайте sshd услуга, като напишете:

sudo systemctl рестартирайте sshd

Сега, когато се опитате да влезете в системата по SSH като root потребител, ще получите следното съобщение за грешка:

Разрешението е отказано, моля, опитайте отново.

2. Задайте дати на валидност за акаунти

Друг ефективен начин за контрол на ненужния достъп е да зададете дати на изтичане на акаунти, създадени за временно използване.

Например, ако стажант или служител се нуждае от достъп до системата, можете да зададете дата на изтичане по време на създаване на акаунт. Това е предпазна мярка в случай, че забравите ръчно да премахнете или изтриете акаунта, след като те напуснат организацията.

Използвай промяна команда с помощната програма grep за да извлечете подробности за изтичане на акаунта за потребителя:

промяна -l потребителско име| grep акаунт

Изход:

Сметката изтича: никога

Както е показано по-горе, той не извежда дата на изтичане. Сега използвайте потребителски мод команда с флаг, за да зададете датата на изтичане в ГГГГ-ММ-ДД форматирайте и проверете промяната, като използвате командата chage по-горе.

usermod -e 2021-01-25 потребителско име
промяна -l потребителско име| grep акаунт

3. Подобрете сигурността на паролата на акаунта

Налагането на правила за силни пароли е важен аспект от защитата на потребителските акаунти, тъй като слабите пароли позволяват на нападателите лесно да проникнат във вашите системи чрез груба сила, речник или атаки с таблица с дъга.

Изборът на лесна за запомняне парола може да предложи известно удобство, но също така отваря възможности за нападателите да отгатнат пароли с помощта на наличните онлайн инструменти и списъци с думи.

Задайте дата на валидност на паролата

Освен това Linux предлага някои опции по подразбиране вътре /etc/logins.defs файл, който ви позволява да зададете стареене на паролата за акаунт. Използвай промяна команда и grep подробностите за изтичане на паролата, както следва:

промяна -l потребителско име | grep дни
Променливи Стойност по подразбиране Използване Идеална стойност
PASS_MAX_DAYS 9999 Броят дни по подразбиране за използване на парола, който зависи от типа на настройката на вашия акаунт 40
PASS_MIN_DAYS 0 Не позволява на потребителите да променят паролата си незабавно 5
PASS_MIN_LEN 5 Принуждава потребителя да зададе пароли с определена дължина 15
PASS_WARN_AGE 0 Предупреждава потребителя да промени паролата, преди да бъде принуден да го направи 7

За използваните акаунти можете да контролирате стареенето на паролата с помощта на промяна команда за задаване на PASS_MAX_DAYS, PASS_MIN_DAYS и PASS_WARN_AGE на 40, 5 и 7.

промяна -M 40 -m 5 -W 7 потребителско име

Хешове за пароли

Друг начин за засилване на сигурността на паролата на акаунта е да съхранявате хешове на пароли вътре файла /etc/shadow. Хешовете са еднопосочни математически функции, които приемат паролата като вход и извеждат необратим низ.

По-рано в системите с Linux, всеки път, когато потребител въведе паролата си, за да влезе, системата генерира своя хеш и го сверява с този, съхранен в /etc/passwd файл.

Въпреки това, има проблем с достъпа за достъп до файла passwd, тоест всеки със системен достъп може да прочете файла и да разбие хеша с таблици с дъга.

Следователно Linux сега запазва хешовете вътре /etc/shadow файл със следния набор от разрешения за достъп:

ls -l /etc/shadow
1 корен корен 1626 януари 7 13:56 /etc/shadow

Все още е възможно да инсталирате Linux със старите начини за съхранение на хешове. Можете да промените това, като стартирате pwconv команда, така че автоматично да запише хешовете на паролата в /etc/shadow файл. По същия начин можете да активирате другия метод (/etc/passwd файл) с помощта на pwunconv команда.

4. Премахнете неизползваните потребителски акаунти

Лошият актьор може да използва неизползвани и изтекли акаунти в системата, като поднови този акаунт и го направи да изглежда като легитимен потребител. За да премахнете неактивен акаунт и свързани данни всеки път, когато потребител напусне организацията, първо намерете всички файлове, свързани с потребителя:

намери / -потребителско име

След това деактивирайте акаунта или задайте дата на изтичане, както беше обсъдено по-горе. Не забравяйте да архивирате файловете, притежавани от потребителя. Можете да изберете да присвоите файлове на нов собственик или да ги премахнете от системата.

Накрая изтрийте потребителския акаунт с помощта на командата userdel.

userdel -f потребителско име

5. Ограничете отдалечения достъп до конкретна потребителска група

Ако хоствате уеб сървър на вашата Linux машина, може да се наложи да разрешите само на определени потребители за отдалечен SSH в системата. OpenSSL ви позволява да ограничите потребителите чрез кръстосана проверка дали принадлежат към определена група.

За това създайте потребителска група с име ssh_gp, добавете потребителите, на които искате да предоставите отдалечен достъп към групата, и избройте информацията за потребителската група, както следва:

sudo groupadd ssh_gp
sudo gpasswd -потребителско име ssh_gp
потребителско име на групи

Сега отворете основния конфигурационен файл на OpenSSL, за да включите разрешената потребителска група ssh_gp.

sudo vim /etc/ssh/sshd_config
AllowGroups ssh_gp

Не забравяйте да декоментирате реда, за да осигурите успешно включване в групата. Когато приключите, запазете и излезте от файла и рестартирайте услугата:

sudo systemctl рестартирайте sshd

Поддържане на сигурността на потребителския акаунт в Linux

В днешно време повечето организации хостват критични инфраструктури като уеб сървъри, защитни стени и бази данни Linux и компрометирането на всеки вътрешен компонент представлява значителна заплаха за цялото инфраструктура.

Предвид важността на настройката, управлението и защитата на потребителски акаунти е основно предизвикателство, пред което са изправени администраторите на Linux. Тази статия изброява някои мерки за сигурност, които администраторът на акаунта трябва да предприеме, за да защити системата срещу потенциални заплахи поради незащитени потребителски акаунти.

Пълното ръководство за управление на потребителите в Linux

Управлението на потребителите е решаваща задача, с която всеки системен администратор на Linux трябва да владее. Ето най-доброто ръководство за управление на потребителите за Linux.

Прочетете Следващото

Дялтуителектронна поща
Свързани теми
  • Linux
  • Сигурност
  • Управление на потрбителския профил
  • Сигурност
  • Съвети за сигурност
За автора
Румайса Ниази (Публикувани 8 статии)

Румайса е писател на свободна практика в MUO. Тя е носила много шапки, от математик до ентусиаст по информационна сигурност, и сега работи като SOC анализатор. Нейните интереси включват четене и писане за нови технологии, Linux дистрибуции и всичко около информационната сигурност.

Още от Rumaisa Niazi

Абонирайте се за нашия бюлетин

Присъединете се към нашия бюлетин за технически съвети, ревюта, безплатни електронни книги и ексклузивни оферти!

Щракнете тук, за да се абонирате