Установка атрибутов пользователя

После того, как создано имя нового пользователя, может оказаться нужным изменить атрибуты этого пользователя, например, домашний каталог или пароль. Самый простой способ сделать это — просто поменять информацию в файле /etc/passwd. Для создания пароля нужно использовать команду passwd. Так, команда

passwd larry

изменит пароль пользователя larry. Изменять пароли любых пользователей может только пользователь root, однако свои пароли пользователи могут изменять сами, отдавая команду passwd без параметров.

Группы пользователей

Как указывалось выше, каждый пользователь принадлежит одной либо нескольким группам. Единственное, что является существенным в принадлежности к той или иной группе — это права доступа. Для каждого файла определён не только пользователь-владелец, но и группа-владелец, и набор прав доступа, которые определяют, как пользователи из этой группы могут осуществлять доступ к этому файлу. При создании нового пользователя создаётся также группа, имя которой совпадает с именем пользователя и куда входит только он один.

Имеется несколько групп, определённых системой, например, bin, mail, sys. Эти группы созданы для оформления прав доступа к системным файлам, и пользователи не должны принадлежать к этим группам. Для пользователей создаются специальные группы, например, users.

Информация о группах содержится в файле /etc/group. Формат каждой строки таков:

имя группы:пароль:GID:другие члены группы

Примеры групп:

root:*:0:

users:*:100:mdw,larry

guest:*:200:

other:*:250:kiwi

Первая группа — root — специальная группа для пользователя root. Вторая группа — users — содержит обычных пользователей. GID этой группы равен 100, и в неё входят пользователи mdw и larry. Напомним, что в файле /etc/passwd каждому пользователю определена его группа по умолчанию. Тем не менее, пользователи могут принадлежать к более чем одной группе, и это осуществляется посредством перечисления их имён в файле /etc/group. Команда groups перечисляет список групп, к которым относится (имеет доступ) данный пользователь.

Третья группа называется guest и предназначена для посетителей. Для прочих пользователей создана группа other; в эту группу занесён пользователь kiwi.

Иногда в файле /etc/group заполняется поле password (пароль) для того, чтобы установить пароль на групповой доступ. Это требуется редко. Для того, чтобы не позволять пользователям проникать в привилегированные группы (командой newgroup), в это поле надо поставить символ *.

Для создания новых групп пользователей могут быть использованы команды addgroup или groupadd. Обычно легче внести вручную новую строчку в файл /etc/group, поскольку никакого другого конфигурирования не требуется. Для удаления группы можно просто удалить соответствующую строчку в файле /etc/group.

Еще команды для работы с пользователями и группами

Id — Показывает сводную информацию по текущему пользователю;

finger user_name — Показать информацию о пользователе user_name;

last — Показывает последних зарегистрированных пользователей;

who — Показывает имя текущего пользователя и время входа;

write — передача сообщения другому пользователю.

Изучите, с какими параметрами можно вызвать эти команды.

Виды прав доступа

Права доступа определяются по отношению к трём типам действий:

1.чтение,

2.запись и

3.исполнение.

Эти права доступа могут быть предоставлены трём классам пользователей:

1.владельцу файла (пользователю),

2.группе, которой принадлежит файл,

3.а также всем остальным пользователям, не входящим в эту группу.

Право на чтение даёт пользователю возможность читать содержимое файла или, если такой доступ разрешён к каталогам, просматривать содержимое каталога (используя команду ls). Право на запись даёт пользователю возможность записывать или изменять файл, а право на запись для каталога — возможность создавать новые файлы или удалять файлы из этого каталога. Наконец, право на исполнение позволяет пользователю запускать файл как программу или сценарий командной оболочки (разумеется, это действие имеет смысл лишь в том случае, если файл является программой или сценарием). Для каталогов право на исполнение имеет особый смысл — оно позволяет сделать данный каталог текущим, т. е. “перейти” в него, например, командой cd.

Чтобы получить информацию о правах доступа, используйте команду ls с ключом -l. При этом будет выведена подробная информация о файлах и каталогах, в которой будут, среди прочего, отражены права доступа.

Рассмотрим следующий пример:

/home/ivanov/docs# ls -l report1303

-rw-r—r— 1 ivanov users 505 Mar 13 19:05 report1303

Первое поле в этой строке (-rw-r—r—) отражает права доступа к файлу. Третье поле указывает на владельца файла (ivanov), четвёртое поле указывает на группу, которая владеет этим файлом (users). Последнее поле — это имя файла (report1303). Другие поля описаны в документации к команде ls.

Данный файл является собственностью пользователя ivanov и группы users. Последовательность -rw-r—r— показывает права доступа для пользователя — владельца файла, пользователей — членов группы-владельца, а также для всех остальных пользователей.

Первый символ из этого ряда (-) обозначает тип файла. Символ — означает, что это — обычный файл, который не является каталогом (в этом случае первым символом было бы d) или псевдофайлом устройства.

Следующие три символа (rw-) представляют собой права доступа, предоставленные владельцу ivanov. Символ r — сокращение от read (англ. читать), а w — сокращение от write (англ. писать). Таким образом, ivanov имеет право на чтение и запись (изменение) файла report1303.

После символа w мог бы стоять символ x, означающий наличие прав на исполнение (англ. execute, исполнять) файла. Однако символ -, стоящий здесь вместо x, указывает, что ivanov не имеет права на исполнение этого файла. Это разумно, так как файл report1303 не является программой.

Следующие три символа (r—) отражают права доступа группы к файлу. Группой-собственником файла в нашем примере является группа users. Поскольку здесь присутствует только символ r, все пользователи из группы users могут читать этот файл, но не могут изменять или исполнять его.

Наконец, последние три символа (это опять r—) отражают собой права доступа к этому файлу всех других пользователей, помимо собственника файла и пользователей из группы users. Так как здесь указан только символ r, эти пользователи тоже могут читать файл

Возможность доступа к файлу зависит также от прав доступа к каталогу, в котором находится файл. Например, даже если права доступа к файлу установлены как -rwxrwxrwx, другие пользователи не могут получить доступ к файлу, пока они не имеют прав на исполнение для каталога, в котором находится файл. Другими словами, чтобы воспользоваться имеющимися у вас правами доступа к файлу, вы должны иметь право на исполнение для всех каталогов вдоль пути к файлу.

Если вы работаете в системе, используя расширенные права суперпользователя root (или наделены ими), вы сможете изменять права доступа у любого файла и каталога, принадлежащих любому пользователю системы. Если вы являетесь обычным пользователем, вы сможете назначать или изменять права доступа только на созданные вами каталоги и файлы.

Для изменения прав доступа к файлу или каталогу используется команда chmod.

Команда chmod изменяет права доступа к указанным файлам (среди которых могут быть каталоги) в соответствии с указанным режимом. Режим может быть задан в абсолютном или символьном виде.

Абсолютный вид — восьмеричное число, являющееся поразрядным ИЛИ следующих режимов (названы не все режимы):

00400 Доступен для чтения владельцем.

00200 Доступен для записи владельцем.

00100 Доступен для выполнения (в случае каталога — для просмотра) владельцем.

00040 Доступен для чтения членами группы.

00020 Доступен для записи членами группы.

00010 Доступен для выполнения (просмотра) членами группы.

00004 Доступен для чтения прочими пользователями.

00002 Доступен для записи прочими пользователями.

00001 Доступен для выполнения (просмотра) прочими пользователями.

Символьный вид основан на однобуквенных обозначениях, которые определяют класс доступа и права доступа для членов данного класса. Права доступа к файлу зависят от идентификатора пользователя и идентификатора группы, в которую он входит. Режим в целом описывается в терминах трех последовательностей, по три буквы в каждой:

Владелец Группа Прочие
(u) (g) (o)
rwx rwx rwx

Для задания режима доступа в символьном виде используется синтаксис:

[кому] операция права

Часть кому есть комбинация букв u, g и o (владелец, члены группы и прочие пользователи соответственно). Если часть кому опущена или указано a, то это эквивалентно ugo.

Операция может быть: + (добавить право), — (лишить права), = (в пределах данного класса присвоить права абсолютно, то есть добавить указанные права и отнять неуказанные).

Права — любая осмысленная комбинация следующих букв (не все):

r Право на чтение.

w Право на запись.

x Право на выполнение (поиск в каталоге).

Например, команда chmod u+w,go+x f1

добавит для владельца право писать в файл f1, а для членов группы и прочих пользователей — право выполнять файл. Права устанавливаются в указанном порядке.

Изменить режим доступа к файлу может только его владелец или суперпользователь.

Как стать владельцем файла или папки и получить доступ на просмотр и редактирование ✍️👁️‍🗨️📁


Похожие статьи.

Понравилась статья? Поделиться с друзьями: