Создание новой группы linux

Содержание
  1. Как добавить пользователя в группу в Linux
  2. Группы Linux
  3. Как добавить существующего пользователя в группу
  4. Как добавить существующего пользователя в несколько групп одной командой
  5. Как удалить пользователя из группы
  6. Как создать группу
  7. Как удалить группу
  8. Как изменить основную группу пользователя
  9. Как создать нового пользователя и назначить группы одной командой
  10. Показать группы пользователей
  11. Выводы
  12. Как создавать группы в Linux (команда groupadd)
  13. Синтаксис команды groupadd
  14. Создание группы в Linux
  15. Создание группы с определенным GID
  16. Создание системной группы
  17. Переопределение значений /etc/login.defs по умолчанию
  18. Создание системной группы с паролем
  19. Выводы
  20. Пользователи и группы в linux. Добавление удаление редактирование пользователей
  21. Добавление пользователей в Linux
  22. Создание и назначение домашнего каталога пользователю
  23. Создание пароля для пользователя
  24. Проверка учётной записи
  25. Управление учётными записями
  26. Удаление пользователей
  27. Файл /etc/passwd – описание локальных учётных записей
  28. Файл /etc/group – создание и удаление групп пользователей
  29. Файл /etc/shadow – хранение паролей

Как добавить пользователя в группу в Linux

В этом руководстве мы объясним, как добавить пользователя в группу в системах Linux. Мы также покажем вам, как удалить пользователя из группы и как создавать, удалять и перечислять группы.

Группы Linux

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

В операционных системах Linux есть два типа групп:

Основная группа — когда пользователь создает файл, группа файла устанавливается как основная группа пользователя. Обычно название группы совпадает с именем пользователя. Информация об основной группе пользователя хранится в /etc/passwd .

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

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

Только root или пользователи с доступом sudo могут добавлять пользователя в группу.

Как добавить существующего пользователя в группу

Чтобы добавить существующего пользователя во вторичную группу, используйте команду usermod -a -G после имени группы и пользователя:

Например, чтобы добавить пользователя linuxize в группу sudo , вы должны выполнить следующую команду:

Всегда используйте параметр -a (добавить) при добавлении пользователя в новую группу. Если вы опустите опцию -a , пользователь будет удален из всех групп, не перечисленных после опции -G .

В случае успеха команда usermod не выводит никаких результатов. Он предупреждает вас только в том случае, если пользователь или группа не существует.

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

Если вы хотите добавить существующий пользователь к нескольким вторичным группам в одной команде, используйте usermod команды , за которой следует -G названия опции группы , разделенной , (запятые):

Как удалить пользователя из группы

Чтобы удалить пользователя из группы, используйте команду gpasswd с параметром -d .

В следующем примере мы удаляем username из имени группы groupname :

Как создать группу

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

Как удалить группу

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

Как изменить основную группу пользователя

Чтобы изменить основную группу пользователя, используйте команду usermod за которой следует параметр -g :

В следующем примере мы меняем основную группу пользователя linuxize на developers :

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

Следующая команда useradd создает нового пользователя с именем nathan с users первичной группы и вторичными группами wheel и разработчиками.

Показать группы пользователей

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

Если вы опустите имя пользователя, команда напечатает информацию о текущем вошедшем в систему пользователе. Проверим пользовательский linuxize :

Из вывода выше мы видим, что основная группа пользователя — это users и она принадлежит к дополнительным группам wheel , storage , libvirt , docker и kvm .

Используйте команду groups для отображения дополнительных групп пользователя:

Если команде groups не передано имя пользователя, она распечатает группы пользователей, вошедших в систему.

Выводы

В этом руководстве мы показали вам, как добавить пользователя в группу.

Те же команды применимы для любого дистрибутива Linux, включая Ubuntu, CentOS, RHEL, Debian и Linux Mint.

Не стесняйтесь оставлять комментарии, если у вас есть вопросы.

Источник

Как создавать группы в Linux (команда groupadd)

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

В этой статье мы поговорим о том, как создавать новые группы в Linux, используя команду groupadd .

Синтаксис команды groupadd

Общий синтаксис команды groupadd следующий:

Только root или пользователь с привилегиями sudo могут создавать новые группы.

При вызове groupadd создает новую группу, используя параметры, указанные в командной строке, плюс значения по умолчанию, указанные в файле /etc/login.defs .

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

Чтобы создать новую группу, введите groupadd за которым следует имя новой группы.

Например, чтобы создать новую группу с именем mygroup вы должны запустить:

Читайте также:  Отчет совместимости windows 10

Команда добавляет запись для новой группы в файлы /etc/group и /etc/gshadow .

После создания группы вы можете начать добавлять пользователей в группу .

Если группа с таким именем уже существует, система напечатает сообщение об ошибке, подобное следующему:

Чтобы подавить сообщение об ошибке, если группа существует, и для успешного завершения команды используйте параметр -f ( —force ):

Создание группы с определенным GID

В Linux и Unix-подобных операционных системах группы идентифицируются по имени и уникальному GID (положительное целое число).

По умолчанию, когда создается новая группа, система назначает следующий доступный GID из диапазона идентификаторов групп, указанных в файле login.defs .

Используйте параметр -g ( —gid ), чтобы создать группу с определенным GID.

Например, чтобы создать группу с именем mygroup с GID 1010 , введите:

Вы можете проверить GID группы, перечислив все группы и отфильтровав результат с помощью grep :

Если группа с данным GID уже существует, вы получите следующую ошибку:

При использовании с параметром -o ( —non-unique ) команда groupadd позволяет создать группу с неуникальным GID:

Создание системной группы

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

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

Используйте параметр -r ( —system ), чтобы создать системную группу. Например, чтобы создать новую системную группу с именем mysystemgroup вы должны запустить:

Переопределение значений /etc/login.defs по умолчанию

Параметр -K ( —key ), за которым следует KEY=VAL позволяет переопределить значения по умолчанию, указанные в файле /etc/login.defs .

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

Допустим, вы хотите создать новую группу с GID в диапазоне от 1200 до 1500. Для этого укажите минимальные / максимальные значения, как показано ниже:

Создание системной группы с паролем

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

Параметр -p ( —password ), за которым следует пароль, позволяет вам установить пароль для новой группы:

Выводы

В Linux вы можете создавать новые группы с помощью команды groupadd .

Те же инструкции применимы для любого дистрибутива Linux, включая Ubuntu, CentOS, RHEL, Debian, Fedora и Arch Linux.

Не стесняйтесь оставлять комментарии, если у вас есть вопросы.

Источник

Пользователи и группы в linux. Добавление удаление редактирование пользователей

Системы, обеспечивающие многопользовательский доступ, будь то операционная система ОС, программное обеспечение (ПО), система управления контентом (CMS), очень важно иметь инструментарий для надёжного управления пользователями (их аккаунтами или учётными записями, пользовательскими конфигурациями, домашними каталогами и т. д.), а также для организации и управления самим пользовательским доступом. В таких случаях грамотное и продуманное управление пользователями (точнее, их учётными записями) является ключевым аспектом, от которого зависят безопасность, стабильность и, как следствие — надёжность всей системы. В современных дистрибутивах Linux имеются автоматизированные системы управления пользователями с наглядным графическим пользовательским интерфейсом (GUI), что позволяет быстро и удобно выполнять рутинные (как оказывается на самом деле) мероприятия по управлению пользователями и конфигурации их учётных записей. Однако, очень важно знать и понимать как и какие на самом деле процессы и изменения происходят в самой системе во время управления пользователями.

Добавление пользователей в Linux

Для добавления в систему нового пользователя с именем John, следует просто выполнить команду:

В результате будет создана следующая запись в файле /etc/passwd:

Однако, команда useradd располагает куда большими возможностями, например:

Эта команда добавит в систему пользователя с полным именем «John Silver», регистрационным именем «john». Включив его в основную группу «pirates», а также добавит его в ещё одну дополнительную группу «john» и назначит ему домашний каталог по адресу /home/pirates/john. В результате, соответствующая запись в файле /etc/passwd будет примерно такой:

Команда useradd автоматически создаёт домашний каталог пользователя, если он ещё не создан. A также копирует в него файлы из /etc/skel/.

Полный список параметров useradd

Использование: useradd [параметры] ПОЛЬЗОВАТЕЛЬ
useradd -D
useradd -D [параметры]

Параметры:
-b, —base-dir БАЗ_КАТ базовый каталог для домашнего каталога новой
учётной записи
-c, —comment КОММЕНТАРИЙ поле GECOS новой учётной записи
-d, —home-dir ДОМ_КАТ домашний каталог новой учётной записи
-D, —defaults показать или изменить настройки
по умолчанию для useradd
-e, —expiredate ДАТА_УСТ дата устаревания новой учётной записи
-f, —inactive НЕАКТИВНОСТЬ период неактивности пароля новой учётной записи
-g, —gid ГРУППА имя или ID первичной группы новой
учётной записи
-G, —groups ГРУППЫ список дополнительных групп новой
учётной записи
-k, —skel КАБ_ШАБ использовать альтернативный каталог с шаблонами
-K, —key КЛЮЧ=ЗНАЧЕНИЕ заменить значение по умолчанию
из /etc/login.defs
-l, —no-log-init не добавлять пользователя в базы данных lastlog и
faillog
-m, —create-home создать домашний каталог пользователя
-M, —no-create-home не создавать домашний каталог пользователя
-N, —no-user-group не создавать группу с тем же именем что и у
пользователя
-o, —non-unique разрешить создание пользователей с
повторяющимися (не уникальными) UID
-p, —password ПАРОЛЬ зашифрованный пароль новой учётной записи
-r, —system создать системную учётную запись
-R, —root КАТ_CHROOT каталог, в который выполняется chroot
-s, —shell ОБОЛОЧКА регистрационная оболочка новой
учётной записи
-u, —uid UID пользовательский ID новой учётной записи
-U, —user-group создать группу с тем же именем что и у
пользователя
-Z, —selinux-user SEUSER использовать указанного SEUSER для
пользовательского сопоставления SELinux

Читайте также:  Linux перезапуск сетевого интерфейса centos

Создание и назначение домашнего каталога пользователю

Обычно домашний каталог создается автоматически при добавлении пользователя в систему. Но бывают случаи когда по каким либо причинам домашний каталог не создается. А затем появляется необходимость создать его. Для создания домашнего каталога пользователя используется стандартная команда mkdir. После этого нужно скопировать необходимые конфигурационные скрипты в домашний каталог (для организации рабочей среды пользователя), далее, с помощью команд chown и chmod задать владельца и режимы доступа к каталогу и его содержимому. Это лучше сделать после того как все конфигурационные файлы были скопированы в целевой каталог. Например:

Как видно, файлы конфигурации были скопированы из каталога /etc/skel/ – именно здесь хранятся примеры конфигураций запуска, которые можно отредактировать так, как это необходимо. Кстати, модифицирование копии файлов из каталога /etc/skel/ следует хранить в каталоге usr/local/etc/skel. При задании владельца домашнего каталога необходимо следить за тем, чтобы (в случае неаккуратного использования команды chown) пользователь не стал владельцем псевдокаталога «..», т. е. каталог, уровнем выше, который часто представляет собой каталог /home, что по соображениям безопасности недопустимо.

Создание пароля для пользователя

В целях безопасности для учётной записи обязательно должен существовать надёжный пароль. Который следует задать сразу же после создания учётной записи пользователя:

Например, для пользователя jonh:

Проверка учётной записи

Перед тем, как передать новому пользователю реквизиты и начальный пароль для входа в свою учётную запись, её необходимо проверить. Для этого нужно завершить текущий сеанс. И войти в систему под именем нового пользователя (учётную запись которого необходимо проверить). И последовательно выполнить следующие команды:

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

Управление учётными записями

Как уже ранее отмечалось, для управления пользователями в Linux-системах существуют наборы специализированных утилит для добавления, редактирования и удаления учётных записей (пользователей) — useradd, usermod и userdel. Они выполняют предписанный порядок действий для достижения конечной цели — например, в случае с добавлением нового пользователя, команда useradd производит, соответственно, весь вышеописанный «комплекс мероприятий». Каждую из этих утилит можно гибко настроить с помощью конфигурационных файлов, чем, кстати, очень активно пользуются разработчики дистрибутивов Linux. Ведь в разных Linux-системах работа этих утилит незначительно, но отличается, хотя утилиты, по сути, идентичные. Ниже приводится таблица, показывающая команды и файлы конфигурации для управления пользователями для некоторых систем на примере утилиты useradd:

Система Команды Файлы конфигурации Комментарий
Ubuntu useradd /etc/login.defs
adduser /etc/default/useradd Perl-версия
/etc/adduser.conf
SUSE useradd /etc/login.defs
/etc/default/useradd
/etc/default/passwd
/usr/sbin/useradd.local Локальные настройки
/usr/sbin/userdel.local Локальные настройки
/usr/sbin/userdel-pre.local Локальные настройки
/usr/sbin/userdel-post.local Локальные настройки
Red Hat useradd /etc/login.defs
/etc/default/useradd
Solaris useradd /etc/default/
/etc/security/policy.conf

Удаление пользователей

Для удаления пользователей из системы используется команда userdel, например команда

Удалит пользователя john, но зачастую (как и команда useradd, кстати) не в «чистом» виде, а в виде Perl-оболочек с использованием сценария удаления учётной записи. Например, в дистрибутивах Ubuntu используется команда deluser, которая является обычным сценарием на Perl. Который, в свою очередь, вызывает саму команду userdel для удаления и очистки всего того, что было сделано ранее командой useradd. При этом, используется файл сценария (обычно это файл /etc/deluser.conf в Ubuntu и /etc/login.defs в RedHat). Который позволяет задать следующие опции для работы команды userdel:

Использование: userdel [параметры] ПОЛЬЗОВАТЕЛЬ

Параметры:
-f, —force принудительное удаление пользователя и файлов, даже если они используются в настоящее время
-r, —remove удалить домашний каталог и почтовый ящик
-R, —root КАТ_CHROOT каталог, в который выполняется chroot
-Z, —selinux-user удалить все пользовательские сопоставления
SELinux для пользователя

Файл /etc/passwd – описание локальных учётных записей

Если в системе не используется какая-либо автоматизированная служба управления каталогами (например LDAP, NIS), то файл /etc/passwd – это именно тот файл, в котором хранится информация об учётных записях пользователей, известных системе. К этому файлу система обращается всякий раз при попытке авторизации пользователя в поисках требуемого идентификатора пользователя и определения его домашнего каталога. Формат этого файла заключается в том, что каждая строка в нём соответствует одному конкретному пользователю (учётной записи), в которой (в строке) перечислены атрибуты (поля) учётной записи, разделяемые символом двоеточия:

  1. Имя пользователя.
  2. Пароль пользователя (в шифрованном виде) или «заполнитель» пароля.
  3. Идентификатор пользователя.
  4. Идентификатор группы пользователя (по умолчанию).
  5. Информация GECOS — полное имя, офис, телефоны и т. д.
  6. Домашний каталог.
  7. Регистрационная оболочка.

Содержимое файла /etc/passwd может выглядеть следующим образом: Как можно видеть, второе поле для всех записей содержит символ «x» — заполнитель пароля. В Linux-системах зашифрованные пароли хранятся отдельно, в файле /etc/shadow. В случае, если совместно с файлом /etc/passwd используется служба автоматизированного управления каталогами, то в этом же файле имеются записи, начинающиеся с символа «+». Такие записи содержат инструкции по интеграции службы управления каталогами в системе. Стоит вкратце рассмотреть поля учётных записей:

  • Имя пользователя или регистрационное имя — уникальное имя, которое должно составляться согласно правилам построения регистрационных имён для той или иной системы. Для Linux длина регистрационного имени может быть не более 32 символов. Допускается использование только строчных букв с включением цифр. Начинаться регистрационное имя должно с буквы.
  • Зашифрованный пароль — как уже отмечалось, пароли для локальных учётных записей хранятся в /etc/shadow в зашифрованном виде. В Linux в качестве криптографических инструментов для шифрования паролей используются алгоритмы crypt, MD5, Blowfish. Минимальная длина пароля составляет 5 символов, максимальная 8
  • Идентификатор пользователя — это целое число без знака, по которому система «распознаёт» отдельных пользователей, поэтому идентификаторы пользователей используются системой и программной средой, в то время как имена пользователей служат для наглядности и удобства представления пользователей в системе. Для пользователя root зарезервирован идентификатор под номером 0, также рекомендуется присваивать реальным пользователям идентификаторы, следующие после 500, поскольку в системе может быть много «неперсонифицированных» пользователей, таких как bin или daemon – это позволит содержать в порядке список пользователей и избегать путаницы. Также в Linux-системах предусмотрен псевдопользователь nobody, с идентификатором -1 или -2. Обычно этот псевдопользователь используется, когда суперпользователь системы пытается получить доступ к файлам, примонтированным с другого компьютера, у которого нет доверия к исходному компьютеру.
  • Идентификатор группы — целое число без знака, аналогично идентификатору пользователя предназначено для обозначения в системе уникальных групп пользователей. Под номером 0 зарезервирована группа root. Группы используются в основном для удобного управления и организации совместного доступа к файлам. Как и в случае с идентификаторами пользователей, в системе зарезервированы группы (например bin) для использования самой системой.
  • ПолеGECOS – информация, которая не имеет чётко определённой спецификации, отражает в себе дополнительные данные о пользователе: его полное имя, телефоны, сведения о должности и отделе и т. д. Информацию в этом поле можно менять с помощью команды chfn.
  • Домашний каталог — «место» в дереве файловой системы, которое отведено для хранения данных определённого пользователя. Этот каталог из соображений безопасности должен быть доступен только пользователю-владельцу этого каталога. Если домашний каталог отсутствует на момент регистрации, то пользовательские данные помещаются в каталог /. Также, если в файле /etc/login.defs в опции DEFAULT_HOME, задающем домашний каталог по умолчанию указано значение no, то авторизация/регистрация пользователя будет невозможной.
  • Регистрационная оболочка — командная оболочка интерпретатора команд (или любая другая программа), которая запускается при входе пользователя в свою учётную запись. Для Linux используется интерпретатор

Файл /etc/group – создание и удаление групп пользователей

Добавления новой группы в Linux осуществляется с помощью команды

где group_name название новой группы. Эта команда создаст в файле /etc/group новую запись

Формат этого файла такой же как и у /etc/passwd. Пример содержимого файла /etc/group: Как видно, каждая строка включает в себя четыре поля:

  1. Имя группы.
  2. Зашифрованный пароль или заполнитель пароля.
  3. Уникальный идентификатор группы.
  4. Список пользователей, входящих в данную группу, содержащий имена пользователей, разделённых запятыми без пробелов.

Интересным здесь является поле пароля. Пароль группы предназначен для того, чтобы пользователи могли вступить в группу с помощью команды newgrp. Сам же пароль для группы задаётся командой gpasswd, после чего он в зашифрованном виде будет храниться в файле /etc/gshadow. Однако, следует заметить, что пароли для групп используются крайне редко. Системным администраторам следует следить за содержимым файлов /etc/passwd и /etc/group и согласовывать их между собой, поскольку иногда возникают ситуации, когда пользователь указывается членом группы в файле /etc/passwd и в то же время в файле /etc/group такого объявления нет. Следует заметить, что в этом случае пользователь будет считаться членом группы, однако всё же настоятельно рекомендуется согласовывать содержимое обоих файлов.

По умолчанию в дистрибутивах Linux (кроме SUSE), при создании пользователя (утилита useradd) создаётся и его одноимённая группа, в которую он сразу же включается. Это предусмотрено для того, чтобы максимально исключить вероятность доступа разных пользователей к файлам друг друга.

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

Эта команда удалит запись из /etc/group.

Файл /etc/shadow – хранение паролей

Для хранения скрытых или теневых паролей используется отдельный файл /etc/shadow. Доступ к которому доступен только суперпользователю. Нужно также заметить, что файлы /etc/shadow и /etc/passwd хоть и связаны концептуально, однако на уровне системы между ними практически нет никакого взаимодействия. За исключением того, что поле, содержащее регистрационное имя в shadow берётся из passwd. Т.е. при модификации shadow, изменения не отражаются автоматически в passwd – эти файлы хранятся отдельно и обрабатываются системой независимо друг от друга. Формат /etc/shadow аналогичен /etc/passwd и каждая строка включает в себя следующие поля:

  1. Регистрационное имя.
  2. Пароль в зашифрованном виде.
  3. Дата последнего изменения пароля.
  4. Минимальное количество дней между изменениями пароля.
  5. Максимальное количество дней между изменениями пароля.
  6. Количество дней до выдачи сообщения об окончании срока действия пароля.
  7. Количество дней (по истечению срока действия пароля) до автоматического аннулирования учётной записи.
  8. Период действия учётной записи.
  9. Зарезервированное поле.

Запись из файла /etc/shadow выглядит следующим образом:

Следует отметить, что обязательными являются первые два поля. Формат полей дат соответствует количеству дней, прошедших с первого января 1970 года. Поле с регистрационным именем, как уже отмечалось, заполняется соответствующим значением из файла /etc/passwd. В Linux седьмое поле содержит значение, которое определяет по истечении какого времени (в днях) после устаревания пароля учётная запись будет автоматически отключена. Эта интерпретация отличается от той, которая используется в системах Solaris и HP-UX. В восьмом поле, для установки даты истечения срока действия учётной записи можно использовать команду usermod в формате гггг-мм-чч.

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

Источник

Читайте также:  Прекращена работа windows update
Оцените статью