Настройка пользователей в Linux

Материал из Wikibebra
Перейти к навигацииПерейти к поиску

Введение

Под пользователем понимается любой, кто работает с компьютером. Как правило, для каждого пользователя в системе создаётся отдельный аккаунт, которому присваивается специальное имя. В качестве имени пользователя можно использовать как реальные имена, вроде Mary или Bill, так и псевдонимы — Dragonlady, Pirate и т.п. С помощью имени пользователь получает доступ к своему аккаунту и, в конечном счёте, к системе. Некоторые системные службы запускаются либо привилегированными аккаунтами, либо строго определёнными аккаунтами пользователей.

Механизм пользователей был разработан по соображениям безопасности, для ограничения доступа к различным частям системы. Суперпользователь (root) имеет полный доступ к операционной системе и её настройкам. Этот аккаунт используется только для целей системного администрирования; обычные пользователи могут временно повысить уровень своих прав командами su и sudo.

Один человек может создать несколько аккаунтов с разными именами. Некоторые специфические имена, вроде того же "root", зарезервированы и запрещены к использованию.

Пользователи часто объединятся в "группы". Добавление пользователя в определённую группу обычно даёт ему дополнительные права, связанные с этой группой.

Обзор на пользователей и группы

В операционной системе UNIX были сформулированы некоторые общие идеи и принципы, которые оказали в дальнейшем сильное влияние на её архитектуру, пользовательский интерфейс, культуру и развитие. В частности, один из основополагающих принципов выражается мантрой "всё есть файл", которую часто называют определяющим пунктом UNIX в целом. Суть данного принципа заключается в создании унифицированного способа доступа к широкому диапазону ресурсов ввода/вывода: к документам, каталогам, жёстким дискам, дискам CD-ROM, модемам, клавиатурам, принтерам, мониторам, терминалам и даже межпроцессным и сетевым взаимодействиям. Цель — предоставление универсальной абстракции для каждого из этих объектов, названных отцами-оснвоателями UNIX общим термином "файл". Поскольку доступ к файлу осуществляется с помощью одного и того же API, стало возможно использовать одинаковый набор базовых команд для чтения и записи таких разнородных устройств, как диск, клавиатура, документ или сетевой интерфейс.
Абстракция файла, существующая в операционной системе UNIX и совместимых с ней системах, является основополагающей и всеобъемлющей. Любая системная служба и интерфейс устройства теперь могут реализовываться так, чтобы предоставлять другим приложениям метафору файла или файловой системы. Это открывает новые способы их использования и значительно расширяет возможности существующих приложений — простые инструменты, разработанные для решения узких задач, теперь, вооружившись абстракцией файла UNIX, могут использоваться совершенно по-новому. Небольшая утилита вроде cat, предназначенная для считываения одного или нескольких файлов и вывода их содержимого на стандартный поток вывода, теперь может выполнять чтение с устройств ввода-вывода с помощью специальных файлов устройств, как правило расположенных в каталоге /dev. С другой стороны, во многих системах запись и проигрываение звука теперь выполняется всего лишь командами "cat /dev/audio > myfile" и "cat myfile > /dev/audio" соответственно.
В GNU/Linux каждый файл принадлежит какому-то пользователю и группе. Существует три типа прав доступа — чтение, запись и исполнение. Права доступа задаются по отдельности для владельца-пользователя, владельца-группы, и для прочих пользователей, которые не входят в первые две категории.

Краткая настройка

Перейдем в суперпользователя su -. Для создания пользователя с конкретным идентификатором пользователя (UID), можно использовать команду useradd с опцией -u. Например, чтобы создать пользователя с именем dmosk и UID 10101, следует выполнить команду useradd dmosk -u 10101. После создания пользователя необходимо задать ему пароль с помощью команды passwd. Для пользователя dmosk это будет выглядеть следующим образом: passwd dmosk. После выполнения этой команды система запросит ввод нового пароля, который необходимо ввести дважды для подтверждения. Добавим пользователя в группу с помощью команды usermod -aG wheel dmosk и проверим результат с помощью команды `id dmosk`.

Для предоставления пользователю прав на выполнение команд с правами sudo (root) без ввода пароля, необходимо отредактировать файл /etc/sudoers. Этот файл управляет правами доступа пользователей к командам с повышенными привилегиями. Для настройки следует выполнить следующие шаги: открыть файл /etc/sudoers для редактирования с помощью команды mcedit /etc/sudoers, что должно быть сделано с правами суперпользователя (root). В файле /etc/sudoers нужно убрать комментарии (удалить символ # в начале строк) с следующих строк: WHEEL_USERS ALL=(ALL:ALL) ALL и WHEEL_USERS ALL=(ALL:ALL) NOPASSWD: ALL. После внесения изменений, необходимо удостовериться в корректности работы. Для этого нужно зайти под пользователем и выполнить команду sudo -i для проверки прав доступа. Если все настроено правильно, пользователь сможет выполнять команды с правами sudo без ввода пароля.