admin / 14.05.2018

Группы пользователей в Linux — IT Expert

Фундаментальные основы Linux. Часть VII. Управление локальными учетными записями пользователей

Оригинал: Linux Fundamentals
Автор: Paul Cobbaut
Дата публикации: 16 октября 2014 г.
Перевод: А.Панин
Дата перевода: 23 декабря 2014 г.

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

Учетные записи пользователей системы могут объединяться в рамках . Концепция групп пользователей позволяет устанавливать права доступа на уровне групп пользователей вместо установки аналогичных прав доступа для каждого отдельного пользователя.

В каждом дистрибутиве Unix или Linux имеется инструмент с графическим интерфейсом для управления группами пользователей. Пользователям, не имеющим опыта работы с данными системами, рекомендуется использовать именно эти инструменты. Более опытные пользователи могут использовать инструменты с интерфейсом командной строки для управления учетными записями пользователей, проявляя при этом осторожность: некоторые дистрибутивы не позволяют работать одновременно с инструментами для управления группами пользователей с графическим интерфейсом и интерфейсом командной строки (примером может служить инструмент YaST из состава дистрибутива Novell Suse). Опытные системные администраторы могут осуществлять непосредственное редактирование соответствующих файлов с помощью текстового редактора или утилиты .

Утилита groupadd

Группы пользователей могут создаваться с помощью утилиты . В примере ниже показана методика создания пяти групп (без добавления в них пользователей). root@laika:~# groupadd tennis root@laika:~# groupadd football root@laika:~# groupadd snooker root@laika:~# groupadd formula1 root@laika:~# groupadd salsa

Файл group

Пользователи могут состоять в нескольких группах. Членство пользователей в группах описывается в файле . root@laika:~# tail -5 /etc/group tennis:x:1006: football:x:1007: snooker:x:1008: formula1:x:1009: salsa:x:1010: root@laika:~#

Первым полем в строке с описанием группы пользователей является имя группы. Во втором поле размещается (зашифрованный) пароль группы (это поле может быть пустым).

В третьем поле размещается идентификатор группы или значение . Четвертое поле является списком членов группы, который в данном случае является пустым, так как в группах нет пользователей.

Команда groups

Пользователь может выполнить команду для ознакомления со списком групп, в которых он состоит. [harry@RHEL4b ~]$ groups harry sports [harry@RHEL4b ~]$

Утилита usermod

Членство пользователя в группах может быть изменено с помощью утилиты useradd или . root@laika:~# usermod -a -G tennis inge root@laika:~# usermod -a -G tennis katrien root@laika:~# usermod -a -G salsa katrien root@laika:~# usermod -a -G snooker sandra root@laika:~# usermod -a -G formula1 annelies root@laika:~# tail -5 /etc/group tennis:x:1006:inge,katrien football:x:1007: snooker:x:1008:sandra formula1:x:1009:annelies salsa:x:1010:katrien root@laika:~#

Проявляйте осторожность при использовании утилиты для добавления пользователей в группы. По умолчанию утилита будет пользователя из всех групп, в которых он состоял, если имена данных групп не были переданы в составе команды! Использование параметра (append — дополнение) позволяет избежать данного поведения.

Утилита groupmod

Вы можете изменить имя группы пользователей с помощью утилиты . root@laika:~# groupmod -n darts snooker root@laika:~# tail -5 /etc/group tennis:x:1006:inge,katrien football:x:1007: formula1:x:1009:annelies salsa:x:1010:katrien darts:x:1008:sandra

Утилита groupdel

Вы можете навсегда удалить группу пользователей с помощью утилиты .

root@laika:~# groupdel tennis root@laika:~#

Утилита gpasswd

Также вы можете делегировать функции контроля над членством в определенной группе пользователей другому пользователю с помощью утилиты . В примере ниже мы делегируем права на добавление пользователей в группу sports и удаление их из нее пользователю serena. После этого мы используем команду для добавления пользователя harry в группу sports от лица пользователя serena. [root@RHEL4b ~]# gpasswd -A serena sports [root@RHEL4b ~]# su — serena [serena@RHEL4b ~]$ id harry uid=516(harry) gid=520(harry) группы=520(harry) [serena@RHEL4b ~]$ gpasswd -a harry sports Добавление пользователя harry в группу sports [serena@RHEL4b ~]$ id harry uid=516(harry) gid=520(harry) группы=520(harry),522(sports) [serena@RHEL4b ~]$ tail -1 /etc/group sports:x:522:serena,venus,harry [serena@RHEL4b ~]$
Администраторы групп пользователей не обязаны быть членами этих групп. Они могут удалить свои учетные записи из администрируемых ими групп пользователей и это никак не повлияет на их возможности добавления пользователей в эти группы или удаления пользователей из них. [serena@RHEL4b ~]$ gpasswd -d serena sports Удаление пользователя serena из группы sports [serena@RHEL4b ~]$ exit
Информация об администраторах групп пользователей хранится в файле . [root@RHEL4b ~]# tail -1 /etc/gshadow sports:!:serena:venus,harry [root@RHEL4b ~]#
Для удаления всех учетных записей администраторов из группы пользователей следует использовать утилиту с параметрами для задания пустого списка администраторов. [root@RHEL4b ~]# gpasswd -A «» sports

Утилита newgrp

Вы можете запустить с новой временной , воспользовавшись командой . root@rhel65:~# mkdir prigroup root@rhel65:~# cd prigroup/ root@rhel65:~/prigroup# touch standard.txt root@rhel65:~/prigroup# ls -l итого 0 -rw-r—r—. 1 root root 0 апр 13 17:49 standard.txt root@rhel65:~/prigroup# echo $SHLVL 1 root@rhel65:~/prigroup# newgrp tennis root@rhel65:~/prigroup# echo $SHLVL 2 root@rhel65:~/prigroup# touch newgrp.txt root@rhel65:~/prigroup# ls -l итого 0 -rw-r—r—. 1 root tennis 0 апр 13 17:49 newgrp.txt -rw-r—r—. 1 root root 0 апр 13 17:49 standard.txt root@rhel65:~/prigroup# exit exit root@rhel65:~/prigroup#

Утилита vigr

По аналогии с утилитой vipw, утилита может использоваться для редактирования файла в ручном режиме, так как она осуществляет корректную блокировку этого файла в процессе редактирования. Текстовый редактор или утилита может использоваться для управления группами пользователей исключительно опытными системными администраторами.

Практическое задание: группы пользователей

1. Создайте группы пользователей tennis, football и sports.

2. С помощью одной команды сделайте пользователя venus членом групп tennis и sports.

3. Переименуйте группу пользователей fotball в foot.

4. Используйте текстовый редактор vi для добавления пользователя serena в группу пользователей tennis.

5. Используйте команду id для того, чтобы убедиться, что пользователь serena состоит в группе пользователей tennis.

6. Сделайте кого-либо из пользователей ответственным за управление членством пользователей в группах foot и sports. Проверьте работоспособность использованного механизма.

Корректная процедура выполнения практического задания: группы пользователей

1. Создайте группы пользователей tennis, football и sports.

groupadd tennis ; groupadd football ; groupadd sports

2. С помощью одной команды сделайте пользователя venus членом групп tennis и sports.

usermod -a -G tennis,sports venus

3. Переименуйте группу пользователей fotball в foot.

groupmod -n foot football

4. Используйте текстовый редактор vi для добавления пользователя serena в группу пользователей tennis.

5. Используйте команду id для того, чтобы убедиться, что пользователь serena состоит в группе пользователей tennis.

id (после выхода из системы и входа в нее пользователь serena должен быть членом группы)

6. Сделайте кого-либо из пользователей ответственным за управление членством пользователей в группах foot и sports. Проверьте работоспособность использованного механизма.

gpasswd -A (для того, чтобы сделать пользователя ответственным за управление членством в группе пользователей) gpasswd -a (для того, чтобы сделать пользователя членом группы пользователей)

Если вам понравилась статья, поделитесь ею с друзьями:


Управление пользователями Linux

Автор: Admin

Дата:2012-10-30

Команды управление пользователями Linux

В Linux  самой главной учетной записью является root — суперпользователь.

По другому root — это администратор.
Однако в ОС Linux имеются и специализированные учетные записи — системные учетные записи. Они необходимы для выполнения службами в Linux, так как все службы в этой ОС должны быть зарегистрированы под учетной записью.

Используемые файлы для работы с пользователями и группами:

       /etc/group — содержит информацию о группах
       /etc/passwd — содержит информацию о пользователях
       /etc/shadow — содержит защищаемую информацию о пользователях

А теперь давайте откроем файл и посмотрим на его содержимое
# vi /etc/passwd

root:x:0:0:root:/root:/bin/bash

daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
www-data:x:33:33:www-data:/var/www:/bin/sh

aroma:x:1000:1000:aroma,,,:/home/aroma:/bin/bash
manager1:x:1006:1011::/home/manager1:/bin/bash

Давайте рассмотрим одну из записей.

manager1:x:1006:1011:Manager_Misha:/home/manager1:/bin/bash

    Где:
manager1 —
имя пользователя
x
— пароль
1006 — числовой идентификатор пользователя
1011 —
числовой идентификатор группы
Manager_Misha — описание
/home/manager1 — месторасположение домашнего каталога
/bin/bash — командный интерпретатор

Давайте создадим нашего первого пользователя

Команда useradd:

# useradd timmi -c my_comment -d /home/tiimi_home -g 100
    Где:
timmi — имя нового пользователя
-c комментарий
-d — домашний каталог
-g числовой идентификатор группы пользователя
Так же можно использовать дополнительные параметры:
-e — задает дату истечения срока учетной записи (2012-12-12)
-G — задает дополнительную группу пользователя
-r создается системная учетная запись
-p пароль
-s задает командный интерпретатор
-u Уникальный числовой идентификатор

Команда userdell

Для удаления пользователя из системы применяется команда userdel
# userdel timmi
Однако при выполнении ее в таком варианте пользователь удаляется однако остаются его файлы.
Для полного удаления пользователя с его рабочим каталогом необходимо использовать ключ -r
# userdel -r timmi
userdel: error removing directory /home/tiimi_home

Изменение пользователя.

Для изменения пользователя применяется команда usermod
Однако стоит рассмотреть утилиту passwd
passwd — просто задает пароль пользователя или меняет его.
usermod — может не просто менять пароль, группу или текстовое описание пользователя но при помощи ключей:
— L — блокирует учетную запись
— U — разблокирует учетную запись
А так ее синтаксис и ключи схожи с useradd.

# usermod -c my_comment_change -d /home/tiimi_home_new -g 1000 timmi

Заметьте, что имя пользователя указывается после всех параметров.

Создание групп в Linux

Информация о группах содержится в файле

# vi /etc/group
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:aroma
    Где:
adm — имя группы
x — пароль
aroma — пользователи входящиу в эту группу (через запятую)

Команда grouadd

# groupadd buhgalter -g 1111
Создали группу с числовым идентификатором 1111

Изменение групп — groupmod
Для изменения группы используем команду
# groupmod buhgalter -n buh_1

Для удаления — groupdel
# groupdel buh_1

Другие команды Linux

Количество просмотров: 5831

© Plutonit.ru — Администрирование, настройка Linux и Windows 2009 — 2018

Материал из Wiki Open book

Перейти к: навигация, поиск

Оглавление | Предыдущая страница | Следующая страница


Файл — это текстовая база данных, в которой описываются учетные записи пользователей сервера.

Формат файла очень простой и уважающий себя администратор должен знать его наизусть. На одного пользователя в файле отводится одна строка.

Поля в строке разделяются символами двоеточие. В файле семь полей:

  • Имя учетной записи пользователя (login).
  • Хеш пароля пользователя.
  • Уникальный номер пользователя в системе (UID).
  • Уникальный номер основной группы пользователя (GID).
  • Дополнительная информация.
  • Домашняя директория пользователя.
  • Программа, которая запускается при входе пользователя в систему.

Обязательными полями считаются только: login, UID и GID основной группы. Все остальные поля можно не определять.

Имя учетной записи пользователя — это обязательное поле. Имя должно быть уникальным. Максимальная длинна 256 символов (Если в Вашей компании Вы с кем-то не очень дружите, можете такому «другу» сделать учетную запись с именем длинной в 256 символов. Ему это будет приятно. Особенно по утрам, когда он будет входить в систему.). В имени можно использовать только английские буквы большие или маленькие (они отличаются) и цифры.

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

Уникальный номер пользователя в системе — это обязательное поле. Существует два типа пользователей: суперпользователь (root) и все остальные. UID суперпользователя равен нулю. Иногда у администраторов возникает не здоровое желание поменять имя суперпользователя. Аргументируют это тем, что все пытаются получить пароль пользователя root. Если мы поменяем имя суперпользователя, допустим на admin, то никто не сможет подобрать его пароль. Так вот — это не правильное решение. Файл обязательно должен быть доступен для чтения всем пользователям системы. Если кто угодно может прочитать его содержимое, значит они могут узнать новый логин суперпользователя.

Уникальный номер группы, к которой принадлежит пользователь. Особенностью Linux (как и любого другого UNIX) является то, что пользователь обязательно является членом хотя бы одной группы. Эту группу называют основной группой пользователя (primary group). Все файлы, которые создает пользователь, принадлежат этому пользователю и его основной группе.

Дополнительная информация о пользователе — это не обязательный параметр. В этом поле можно описать пользователя. Написать его имя и фамилию, домашний и рабочий телефон и т.д. Существует специальный формат — GECOS, описывающий какие поля и для чего применяются в этом поле. Если Вы хотите сделать адресную книгу, для этого лучше использовать какой нибудь сервер LDAP: OpenLDAP или eDirectory.

Домашняя директория пользователя — это домашняя директория пользователя.

Последнее, седьмое поле очень интересное. Там записана программа, которая будет выполняться при входе пользователя в систему. Пользователь работает в системе до тех пор, пока работает эта программа. Обычно в этом поле написан шелл, например: .

Теперь представьте себе, что у Вас есть удаленный офис, в котором работают три кассира: Баба Маша, Баба Глаша и Баба Оля. Это женщины весьма преклонного возраста. Они начали работать кассирами еще во времена Царя Гороха, когда самым мощным вычислительным устройством были счеты. Поэтому научить их работать на компьютере крайне сложно. Постоянные звонки в службу поддержки:

— Сынок, у меня куда то пропала программа!

— Баба Глаша, может быть ты ее минимизировала?

— Чего Я сделала?

Знакомая ситуация?

Программа для работы с кассой — это клиент к какой нибудь базе данных. Можно попросить программистов написать такой клиент для Linux (Если программистам заплатить деньги они могут написать программу, работающую в любой операционной системе.), причем работать он будет в текстовом режиме. А кто сказал, что графический режим для таких программ самый удобный? Не факт.

Поставьте на рабочие места этих женщин компьютеры с Linux. Добавьте учетные записи. В качестве программы оболочки укажите программу касса. Теперь осталось научить наших клиентов пользоваться Linux.

— Баба Глаша, смотри. Компьютер включается вот этой большой кнопкой. Теперь по экрану побежали буковки. Не пугайтесь, так надо. Вот на экране появилось иностранное слово Login. Введите Ваш логин. Это то слово, которое я написал Вам на бумажке.

— Ага, вот это слово. А можно я этот стикер приклею на экран?

— Можно. Теперь на экране появилось иностранное слово Password. Сейчас Баба Глаша я вам скажу Ваш пароль. Вы его запомните, только не пугайтесь.

Тут Вы говорите пароль Бабе Глаше. Она этот пароль ОБЯЗАТЕЛЬНО запомнит. Почему? Объясню чуть позже. Баба Глаша слушает пароль, краснеет, но запоминает его.

Поскольку в качестве оболочки Вы установили программу касса, значит именно эта программа будет запущена при входе пользователя в систему. Для Бабы Глаши касса известна вдоль и поперек.

Работать в этой программе она умеет. Я надеюсь, что программисты не предусмотрят выход в систему из программы, потому что вешний вид командной строки Бабу Глашу сразит наповал. После завершения работы программы, на экране будет знакомое для Бабы Глаши приглашение входа в систему.

Для выключения компьютера достаточно нажать на кнопку выключения питания. Останется настроить систему энергосбережения так, что бы система правильно реагировала на нажатие на кнопку выключения питания.

Внедряя описанную Выше систему, Вы облегчаете жизнь себе и Вашим клиентам. Более того, клиенты смогут работать только в тех программах, в которых им разрешено работать. Один раз в Сбербанке я наблюдал очень интересную картину. Сидит кассир и обслуживает клиентов.

На соседней машине сидит, как я понимаю, дочь кассира и набирает реферат! И все это происходит в Банке! Теперь я понимаю, почему Сбербанк никогда не разорится.

Категория: Материалы для курсов Специалист

FILED UNDER : IT

Submit a Comment

Must be required * marked fields.

:*
:*