7.35 Привилегии и root

Правила хорошего тона при работе

Правило 1

Никогда не выполняйте под правами администратора пользовательскую работу! Бороздить бескрайние просторы интернета, читать и отправлять почту, набирать текстовые документы и рисовать изображения — всё это можно и нужно делать под правами обычного пользователя!

Правило 2

При необходимости выполнить действия, требующие администраторских прав, не регистрируйтесь в системе как root, а используйте утилиты sudo или su! Если Вам потребовалось установить какой-либо пакет или внести изменения в системные настройки, то воспользуйтесь данными утилитами как в терминальном окне MATE или Cinnamon, так и в полном консольном режиме. Применяя утилиту su (повышение привилегий) в интерактивном режиме (то есть фактически создавая
отдельный терминальный сеанс) не забывайте после выполнения требуемых задач завершать работу данного сеанса, а не оставлять его «висящим» в системе на всякий случай.

Правило 3

Запуская сервисы, старайтесь по возможности давать им пониженные права! Это верно как для уже готовых пакетов, когда имя пользователя, с чьими правами будет работать демон, задаётся в файлах конфигурации, так и для программного обеспечения, которое Вы пишите самостоятельно. Каким бы важным не был сервис (веб-сервер, служба DNS или почтовый сервис), ему нет необходимости работать с эффективными правами пользователя root — достаточно и прав порою даже меньше, чем у «обычного» пользователя.

Правило 4

Можно не входить в систему как root и даже не использовать утилиты sudo или su — достаточно на часто запускаемые файлы установить бит SUID, и тогда пользователю, запускающему эти программы многое станет доступно без поднятия привилегий. Ни в коем случае так нельзя делать! Использование битов SUID/SGID должно быть под полным запретом в Вашей практике!

Утилиты su и sudo

поднятия привилегий. Ни в коем случае так нельзя делать! Использование битов SUID/SGID должно быть под полным запретом в Вашей практике!

Команда su позволяет изменить привилегии на любого имеющегося в системе пользователя, в связи с чем синтаксис команды следующий:

su [имя_пользователя] [опции]

Если не указать имя пользователя, то по умолчанию считается, что это — root, то есть выполнение команды без аргументов «su» означает «su root». Из опций наиболее значимыми являются:
-c — позволяет выполнить команду, указанную после данного ключа в кавычках, и завершить работу
утилиты. Например:

su -с "yum update"

– или -l — при получении привилегий другого пользователя запускается отдельная оболочка со значениями переменных окружения того пользователя, чьи привилегии мы получаем. То есть, выполнив из-под пользователя ivanov команду «su», мы останемся в том же рабочем окружении, что и были (то есть получив права супер-администратора, всё равно нашим домашним каталогом останется /home/ivanov, а также все переменные рабочего окружения оболочки). Следовательно, если какая-то программа или команда захочет что-то записать в домашнюю папку, то она сделает это в каталоге /home/ivanov, но владельцем файла установит уже пользователя root, что потом при работе с правами пользователя ivanov не позволит этот файл редактировать, удалить и т. д. Совсем плохо, если этим файлом окажется какой-то из файлов конфигурации. Поэтому, запомните как ещё одно правило: используя команду su, выполняйте её с аргументом «–»! Например:

su -

При первом использовании команды sudo будет выведено экран следующее предупреждение:

И после ввода пароля пользователя может быть выдано следующее сообщение:

Это означает, что при установке РЕД ОС на шаге создания пользователя Вы не установили флажок «Сделать этого пользователя администратором». Но это дело поправимо! Достаточно внести нашего пользователя в группу wheel, для чего нужно из-под администратора root выполнить следующую команду:

usermod -aG wheel имя_пользователя

Если пользователь, которому менялось членство в группах, находился в системе, то необходимо завершить сеанс работы и войти в систему заново. После этого использование утилиты sudo станет возможным. Соответственно, если необходимо убрать у пользователя право пользоваться командой sudo, то достаточно удалить его из группы wheel.

Если вы нашли ошибку, выделите текст и нажмите Ctrl+Enter.

Print Friendly, PDF & Email