Введение
Для большого количества администраторов (особенно это актуально для начинающих пользователей, но и «старички» нередко грешат таким) существует лишь один пользователь – root, а перед любой командой уже машинально набирается sudo. Так ли необходимо писать это волшебное слово и чем чревато использование суперпользователя?
Пользователь root в системах GNU/Linux – это пользователь, имеющий административный доступ к вашей системе. Это означает, что вы можете настраивать права на владение файлами, управлять владением групп, настраивать самих пользователей и т.д. То есть – заниматься администрированием.
Давайте представим ситуацию, произошедшую с Андреем, системным администратором в небольшой организации.
Андрей имел привычку использовать root-аккаунт или команды с sudo для всех задач в Linux, даже когда это было не нужно. Это означало, что пароль от root-аккаунта часто использовался и был сохранен во многих местах для удобства.
Однажды пароль от root-аккаунта был украден. Злоумышленник, получивший доступ к аккаунту суперпользователя, имел возможность делать что угодно с системой. Он установил вредоносное ПО, которое дало ему доступ к конфиденциальной клиентской информации, включая банковские счета и личные данные. Это привело к массовой утечке данных и краже средств с клиентских счетов.
В результате компания потерпела огромные убытки, ее репутация была серьезно подорвана. Были предъявлены иски от клиентов, регуляторы наложили крупные штрафы. Андрей был уволен, а компания была вынужден провести тщательный аудит и пересмотреть свои процедуры безопасности.
Такого бы не произошло, если бы система имела пользователя отдельно для каждой задачи, а root-пользователь не использовался в принципе.
Как создать нового пользователя
Для создания пользователя есть команда useradd. Работает она так:
useradd nelly -d /home/user -m -G users -s /bin/bash
Данной командой мы создали пользователя nelly, а далее:
- командой -d указали директорию пользователя;
- командой -G указали, что nelly относится к группе users;
- командой -m создали домашнюю директорию;
- а с помощью -s указали оболочку, по умолчанию используется sh.
Заключение
Надеюсь, я внес ясность, почему стоит использовать разделение полномочий в Linux. Да, здесь не рассказано подробно о том, как работают группы пользователей и как давать им разрешения, если на эту тему нужна статья, буду рад получить фидбек.
Комментарии
Разумеется, вообще не должно быть логина под рутом, а sudo следует использовать только тогда, когда без этого не работает.