Управляем пользователями: useradd, usermod и userdel. Useradd linux примеры


В чем разница между adduser и useradd? Ubuntu Linux

useradd – это родной двоичный файл, скомпилированный с помощью системы. Но adduser – это Perl-скрипт, который использует двоичный файл useradd во внутреннем useradd .

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

Источник: В чем разница между «adduser» и «useradd»?

Всегда используйте adduser (и deluser при удалении пользователей) при создании новых пользователей из командной строки. (Если вы пишете сценарий, особенно если вы нацелены на переносимость, вместо этого вы можете использовать утилит deluser – и adduser / deluser могут быть недоступны для всех дистрибутивов, например, на SuSE.)

Команды useradd , userdel и usermod являются низкоуровневыми утилитами, которые существуют по историческим причинам, а adduser/deluser Do The Right Thing ™. (Я помню, что использовать, думая, что user* приходит после adduser/deluser в алфавит, и, следовательно, «хуже».)

Согласно соответствующим manpages (на Ubuntu 12.04 Precise Pangolin, то есть на производной системе Debian).

Manpage для adduser говорит:

(Акцент добавлен.)

adduser и addgroup добавляет пользователей и группы в систему в соответствии с параметрами командной строки и информацией о конфигурации в /etc/adduser.conf . Они являются более дружественными передними концами к инструментам низкого уровня, таким как программы useradd , groupadd и usermod , по умолчанию выбирают согласованные значения UID и GID политики Debian, создавая домашний каталог с конфигурацией скелета, запуская собственный скрипт и другие функции. adduser и addgroup могут быть запущены в одном из пяти режимов:

Manpage для useradd говорит:

useradd – это низкоуровневая утилита для добавления пользователей. В Debian администраторы обычно должны использовать adduser(8) .

См. Также: В чем разница между «adduser» и «useradd»? (на SuperUser)

adduser : добавьте пользователя с полным профилем и информацией (пропуск, квота, разрешение и т. д.)

useradd : добавьте пользователя только с его именем (если вы хотите добавить временного пользователя только с именем, другая информация не требуется)

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

Еще пара различий, которые приводят к конкретным сценариям, где useradd может быть предпочтительнее.

  1. В некоторых новых дистрибутивах, включая Ubuntu 14.4, adduser будет запрашивать информацию, такую ​​как пароль и «gecos» (данные для команды finger). Это означает, что он может быть менее подходящим для вызова из скрипта (кредит: уже упоминается в комментарии Wernight).

    Запросы могут быть подавлены путем передачи нулевых аргументов:

    adduser --disabled-password --gecos "" USER
  2. useradd позволяет передавать несколько дополнительных групп, чтобы добавить пользователя с помощью опции -G . adduser похоже, требует, чтобы вы вызывали команду один раз для каждой добавляемой группы.

Основное отличие – «adduser» создаст домашний каталог и добавит файлы скелета в этот каталог, где «useradd» не будет создавать файлы домашней директории и скелета!

Adding user `try' ... Adding new group `try' (1001) ... Adding new user `try' (1001) with group `try' ... Creating home directory `/home/try' ... Copying files from `/etc/skel' ... Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully Changing the user information for try Enter the new value, or press ENTER for the default Full Name []: Room Number []: Work Phone []: Home Phone []: Other []: Is the information correct? [Y/n] y # ll /home/ total 20 drwxr-xr-x 5 root root 4096 Oct 26 15:52 ./ drwxr-xr-x 22 root root 4096 Oct 26 15:47 ../ drwx------ 8 ashishk ashishk 4096 Oct 26 15:50 ashishk/ drwxr-xr-x 3 root root 4096 Oct 14 13:02 .ecryptfs/ drwxr-xr-x 2 try try 4096 Oct 26 15:52 try/ root@chef-workstation:/home/ashishk#

ubuntu.fliplinux.com

[Linux] useradd

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

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

Добавление пользователя осуществляется при помощи команды useradd. Пример использоания:

sudo useradd vasyapupkin

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

Ключ

Описание

-b

Базовый каталог. Это каталог, в котором будет создана домашняя папка пользователя. По умолчанию /home

Комментарий. В нем вы можете напечатать любой текст.

-d

Название домашнего каталога. По умолчанию название совпадает с именем создаваемого пользователя.

-e

Дата, после которой пользователь будет отключен. Задается в формате ГГГГ-ММ-ДД. По умолчанию отключено.

-f

Количество дней, которые должны пройти после устаревания пароля до блокировки пользователя, если пароль не будет изменен (период неактивности). Если значение равно 0, то запись блокируется сразу после устаревания пароля, при -1 - не блокируется. По умолчанию -1.

-g

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

-G

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

-k

Каталог шаблонов. Файлы и папки из этого каталога будут помещены в домашнюю папку пользователя. По умолчанию /etc/skel.

-m

Ключ, указывающий, что необходимо создать домашнюю папку. По умолчанию домашняя папка не создается.

-p

Зашифрованный пароль пользователя. По умолчанию пароль не задается, но учетная пользователь будет заблокирован до установки пароля

-s

Оболочка, используемая пользователем. По умолчанию /bin/sh.

-u

Вручную задать UID пользователю.

Параметры создания пользователя по умолчанию

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

useradd -D

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

GROUP=100

HOME=/home

INACTIVE=-1

EXPIRE=

SHELL=/bin/sh

SKEL=/etc/skel

CREATE_MAIL_SPOOL=no

Если вас не устраивают такие настройки, вы можете поменять их выполнив

sudo useradd -D -s /bin/bash

где -s это ключ из таблицы выше.

Таким образом могут быть заданы параметры, определяемые только ключами: -b -e -f -g -s

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

Изменение параметров пользователя происходит с помощью утилиты usermod. Пример использования:

sudo usermod -c "Эта команда поменяет комментарий пользователю" vasyapupkin

usermod использует те же опции, что и useradd.

Изменение пароля

Изменить пароль пользователю можно при помощи утилиты passwd.

sudo passwd vasyapupkin

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

passwd

и ввести старый и новый пароли.

Основные ключи passwd:

Ключ

Описание

-d

Удалить пароль пользователю. После этого пароль будет пустым, и пользователь сможет входить в систему без предъявления пароля.

-e

Сделать пароль устаревшим. Это заставит пользователя изменить пароль при следующем входе в систему.

-i

Заблокировать учетную запись пользователя по прошествии указанного количества дней после устаревания пароля.

-n

Минимальное количество дней между сменами пароля.

-x

Максимальное количество дней, после которого необходимо обязательно сменить пароль.

-l

Заблокировать учетную запись пользователя.

-u

Разблокировать учетную запись пользователя.

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

Супер пользователь с помощью утилит командной строки passwd и usermod или путем редактирования файла /etc/shadow может удалить пароль пользователь, дав возможность входить в систему без указания пароля.

sudo passwd -d vasyapupkin

или

sudo usermod -p "" vasyapupkin

Если учетная запись пользователя в этот момент была заблокирована командой passwd -l, то указанные выше команды так же снимут эту блокировку

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

sudo passwd -e vasyapupkin

Получение информации о пользователях

  • w – вывод информации (имя пользователя, рабочий терминал, время входа в систему, информацию о потребленных ресурсах CPU и имя запущенной программы) о всех вошедших в систему пользователях.
  • who – вывод информации (имя пользователя, рабочий терминал, время входа в систему) о всех вошедших в систему пользователях.
  • who am i или whoami или id – вывод вашего имени пользователя.
  • users – вывод имен пользователей, работающих в системе.
  • id имя_пользователя – вывод о идентификаторах пользователя: его uid, имя_пользователя, gid и имя первичной группы и список групп в которых состоит пользователь
  • groups имя_пользователя – вывод списка групп в которых состоит пользователь.

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

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

sudo userdel vasyapupkin

userdel имеет всего два основных ключа:

Ключ

Описание

-f

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

-r

Удалить домашний каталог пользователя.

Управление группами

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

Программа groupadd создаёт новую группу согласно указанным значениям командной строки и системным значениям по умолчанию. Пример использования:

sudo groupadd testgroup

Основные ключи:

Ключ

Описание

-g

Установить собственный GID.

-p

Пароль группы.

-r

Создать системную группу.

Изменение группы

Сменить название группы, ее GID или пароль можно при помощи groupmod. Пример:

sudo groupmod -n newtestgroup testgroup #Имя группы изменено с testgroup на newtestgroup

Опции groupmod:

Ключ

Описание

-g

Установить другой GID.

-n

Новое имя группы.

-p

Изменить пароль группы.

Удаление группы

Удаление группы происходит так:

sudo groupdel testgroup

groupdel не имеет никаких дополнительных параметров.

Файлы конфигурации

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

/etc/passwd

В файле /etc/passwd хранится вся информация о пользователях кроме пароля. Одна строка из этого файла соответствует описанию одного пользователя. Примерное содержание строки таково:

vasyapupkin:x:1000:1000:Vasya Pupkin:/home/vpupkin:/bin/bash

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

Поле

Описание

1

vasyapupkin

Имя пользователя для входа в систему.

2

x

Необязательный зашифрованный пароль.

3

1000

Числовой идентификатор пользователя (UID).

4

1000

Числовой идентификатор группы (GID).

5

Vasya Pupkin

Поле комментария

6

/home/vpupkin

Домашний каталог пользователя.

7

/bin/bash

Оболочка пользователя.

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

/etc/group

В /etc/group, как очевидно из названия хранится информация о группах. Она записана в аналогичном /etc/passwd виде:

vasyapupkin:x:1000:vasyapupkin,petya

Поле

Описание

1

vasyapupkin

Название группы

2

x

Необязательный зашифрованный пароль.

3

1000

Числовой идентификатор группы (GID).

4

vasyapupkin,petya

Список пользователей, находящихся в группе.

В этом файле второе и четвертое поля могут быть пустыми.

/etc/shadow

Файл /etc/shadow хранит в себе пароли, по этому права, установленные на этот файл, не дают считать его простому пользователю. Пример одной из записей из этого файла:

vasyapupkin:$6$Yvp9VO2s$VfI0t.o754QB3HcvVbz5hlOafmO.LaHXwfavJHniHNzq/bCI3AEo562hhiWLoBSqxLy7RJJNm3fwz.sdhEhHL0:15803:0:99999:7:::

Здесь:

Поле

Описание

1

vasyapupkin

Имя пользователя для входа в систему.

2

$6$Yvp9VO2s$VfI0t.o754QB3HcvVbz5hlOafmO.LaHXwfavJHniHNzq/bCI3AEo562hhiWLoBSqxLy7RJJNm3fwz.sdhEhHL0

Необязательный зашифрованный пароль.

3

15803

Дата последней смены пароля.

4

0

Минимальный срок действия пароля.

5

99999

Максимальный срок действия пароля.

6

7

Период предупреждения о пароле.

7

Период неактивности пароля.

9

Дата истечения срока действия учётной записи.

Управление пользователями и группами через GUI

В текущей версии Ubuntu отсутствует штатная утилита управления группами пользователей системы, поэтому по умолчанию все действия с группами необходимо выполнять в консоли. Однако для этих целей существует специальная утилита «Пользователи и группы».

Установка

Пакет gnome-system-tools находится в репозитории Ubuntu, поэтому ставится одной командой:

sudo apt-get install gnome-system-tools

Управление группами

Для добавления, удаления групп, а также добавления\удаления пользователей в\из конкретных групп, необходимо в главном окне нажать кнопку «Управление группами», после чего вы увидите окно, отображающее все присутствующие в системе группы:в котором выбрав нужную группу и нажав «Свойства» можно отметить галочкой пользователей, которых необходимо внести в группу.

webhamster.ru

useradd, usermod и userdel. Как добавить пользователя в группу Linux.

Чтобы добавить пользователя в группу можно использовать команды useradd или usermod . Useradd создаст нового пользователя. Usermod модифицирует существующую запись, ее можно использовать для добавления существующего пользователя в группу.

Есть два типа групп — первичная и вторичная. Вся информация о пользователях сохраняется в файлах /etc/passwd ,/etc/shadow и /etc/group.

Useradd — добавить нового пользователя во вторичную группу

Use useradd command to add new users to existing group (or create a new group and then add user). If group does not exist, create it. Syntax:

useradd -G {group-name } username Create a new user called vivek and add it to group called developers. First login as a root user (make sure group developers exists), enter:# grep developers /etc/group Output:

Developers:x:1124:

If you do not see any output then you need to add group developers using groupadd command:# groupadd developers Next, add a user called vivek to group developers:# useradd -G developers vivek Setup password for user vivek:# passwd vivek Ensure that user added properly to group developers:# id vivek Output:

Uid=1122(vivek) gid=1125(vivek) groups=1125(vivek),1124(developers)

Please note that capital G (-G) option add user to a list of supplementary groups. Each group is separated from the next by a comma, with no intervening whitespace. For example, add user jerry to groups admins, ftp, www, and developers, enter:# useradd -G admins,ftp,www,developers jerry

Useradd — добавить нового пользователя в первичную группу

To add a user tony to group developers use following command:# useradd -g developers tony# id tony

uid=1123(tony) gid=1124(developers) groups=1124(developers) Please note that small -g option add user to initial login group (primary group). The group name must exist. A group number must refer to an already existing group.

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

Add existing user tony to ftp supplementary/secondary group with usermod command using -a option ~ i.e. add the user to the supplemental group(s). Use only with -G option:# usermod -a -G ftp tony

В том числе и ОС Linux, со всеми её многочисленными оболочками. Эта статья поможет всем интересующимся разобраться, как добавить пользователя в группу Linux, а также создать, изменить и удалить их. Поехали!

Настройка грyпп и юзеров происходит в консольном режиме

Начнём с разбора процедуры создания. Как и всё остальное, эта операция выполняется посредством специальной команды, которая в нашем случае имеет следующий синтаксис:

Обратите внимание, что для внесения подобных изменений в систему, вам необходимы root-права. Если вы их не имеете, то добавляйте «sudo» в начале каждой вводимой вами команды, чтобы они успешно выполнялись.

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

В том случае, если создание с параметрами не удалось осуществить, попробуйте прописать следующее:

Указанная строка позволит вам просмотреть все настройки.

Изменить эти параметры вам позволит строка:

Для изменения информации и параметров используйте утилиту usermod. Команда будет иметь следующий синтаксис:

Задать или поменять пароль дозволено следующим образом. Введите:

После этого потребуется написать желаемый пароль либо, если он уже был установлен, ввести старый, а после - новый.

Также у вас есть возможность задать пустой пароль . В таком случае команда будет иметь вид:

С точки зрения безопасности, не следует создавать «юзера» без соответствующего пароля. Однако, это актуально только для администраторов фирм и компаний. Для домашнего использования в этом нет необходимости.

Для удаления используйте userdel. Синтаксис в нашем случае будет иметь вид.

Вопрос. Как я могу добавить пользователя в группу в Linux?

Ответ. Вы можете использовать команды useradd илиusermod для добавления пользователя в группу. Команда useradd создает нового пользователя или обновляет информацию у существующего. Команда usermod модифицирует существуюего пользователя. Вся информация о пользователях и группах храниться в файлах /etc/passwd, /etc/shadow и /etc/group.

Пример использования useradd — Добавляем нового пользователя в вторичную группу

Используем команду useradd для добавления нового пользователя в существующую группу. Если группа не существует создайте её. Синтаксис:

useradd -G {group-name } username

Создадим пользователя vivek и добавим его в группу developers. Залогиньтесь как пользователь root и убедитесь что группа developers существует:

# grep developers /etc/group

Developers:x:1124:

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

# groupadd developers

Затем добавьте пользователя vivek в группу developers:

# useradd -G developers vivek

Установите пароль пользователю vivek:

Убедитесь что пользователь добавлен в группу developers:

Uid=1122(vivek) gid=1125(vivek) groups=1125(vivek),1124(developers)

Опция -G позволяет добавить пользователю гру

bazava.ru

Управляем пользователями: useradd, usermod и userdel

Создадим пользователя vivek и добавим его в группу developers. Залогиньтесь как пользователь root:

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

useradd -g users -G admins,ftp,www,developers -s /bin/bash -p xxxx -d /home/ghost -m vivek

  • -d домашний каталог
  • -s задать стартовую оболочку (/bin/sh) - после можно изменить в файле /etc/passwd
  • -p пароль
  • -g основная группа, к которой приписывается пользователь (Группа должна существовать)
  • -G другие группы к которой приписывается пользователь
  • -m создать для пользователя домашний каталог
  • xxxx символьный пароль пользователя

Убедимся что группа developers существует:

# grep developers /etc/group

вывод:

developers:x:1124:

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

# groupadd developers

Теперь с помощью команды usermod добавим пользователя vivek в группу developers:

# adduser vivek developers && newgrp developers

Убедимся что пользователь добавлен в группу developers:

# id vivekOutput:uid=1122(vivek) gid=1125(vivek) groups=1125(vivek),1124(developers)

Установим/изменим пароль пользователю vivek:

# passwd vivek

Поиграемся с группами

Укажим пользователю vivek участие только в группе developers 

usermod -G developers vivek 

Укажим пользователю vivek участие только в группах admins, ftp, www, developers, введя:

# usermod -G admins,ftp,www,developers vivek

Удалим пользователя vivek из некоторых групп (переназначим ему группы):

# usermod -G ftp,www vivek

теперь vivek не входит в группы admins и developers.

Примечание: команда usermod не будет изменять имя пользователя, если этот пользователь в данный момент работает в системе.

userdel — удалить пользователя

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

userdel -r vivek

  • -r удалить пользователя вместе с домашним каталогом

Подробный СИНТАКСИС

useradd [-u идентификатор [-o] [-i]] [-g группа] [-G группа[[,группа] . . .]] [-d каталог] [-s shell] [-c комментарий] [-m [-k skel_dir]] [-f inactive] [-e expire] [-p passgen] [-a событие[, . . .]] рег_имя

Подробное ОПИСАНИЕ

Вызов useradd обычно добавляет новую запись о пользователе в файлы данных системы идентификации и проверки идентичности (Identification and Authentication - I&A). Исключением являются пользователи сетевой информационной службы (Network Information Service или, сокращенно, NIS). Она также позволяет задать принадлежность к дополнительным группам для пользователя (опция -G) и создать для него начальный каталог (опция -m). Новое регистрационное имя блокируется до тех пор, пока не будет выполнена команда passwd.

Сразу после установки стандартные значения для различных параметров указаны в файле /etc/default/useradd. Стандартные значения для тех из перечисленных ниже опций, которые предполагают использование стандартных значений, можно изменить с помощью команды defadm.

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

Поддерживаются следующие опции:

-u идентификатор Идентификационный номер пользователя (UID). Этот номер должен быть неотрицательным целым числом, не превосходящим MAXUID, определенный в sys/param.h. По умолчанию используется следующий доступный (уникальный) не устаревший UID, больший 99. Эта опция игнорируется, если новое регистрационное имя будет администрироваться сетевой информационной службой (NIS). Подробнее об этом см. ниже в разделе "Регистрационные имена сетевой информационной службы".
-o Эта опция позволяет сдублировать UID (сделать его не уникальным). Поскольку защита системы в целом, а также целостность контрольного журнала (audit trail) и учетной информации (accounting information) в частности, зависит от однозначного соответствия каждого UID определенному лицу, использовать эту опцию не рекомендуется (чтобы обеспечить учет действий пользователей).
-i Позволяет использовать устаревший идентификатор UID.
-g группа Целочисленный идентификатор или символьное имя существующей группы. Эта опция задает основную группу (primary group) для нового пользователя. По умолчанию используется стандартная группа, указанная в файле /etc/default/useradd. Эта опция игнорируется, если новое регистрационное имя будет администрироваться сетевой информационной службой (NIS). См. раздел "Регистрационные имена сетевой информационной службы" ниже.
-G группа[[,группа] . . .] Один или несколько элементов в списке через запятую, каждый из которых представляет собой целочисленный идентификатор или символьное имя существующей группы. Этот список определяет принадлежность к дополнительным группам (supplementary group membership) для пользователя. Повторения игнорируются. Количество элементов в списке не должно превосходить NGROUPS_MAX- 1, поскольку общее количество дополнительных групп для пользователя плюс основная группа не должно превосходить NGROUPS_MAX. Эта опция игнорируется, если новое регистрационное имя будет администрироваться сетевой информационной службой (NIS). См. раздел "Регистрационные имена сетевой информационной службы" ниже.
-d каталог Начальный каталог (home directory) нового пользователя. Длина этого поля не должна превосходить 256 символов. По умолчанию используется HOMEDIR/рег_имя, где HOMEDIR - базовый каталог для начальных каталогов новых пользователей, а рег_имя - регистрационное имя нового пользователя.
-s shell Полный путь к программе, используемой в качестве начального командного интерпретатора для пользователя сразу после регистрации. Длина этого поля не должна превосходить 256 символов. По умолчанию это поле - пустое, что заставляет систему использовать стандартный командный интерпретатор /usr/bin/sh. В качестве значения shell должен быть указан существующий выполняемый файл.
-c комментарий Любая текстовая строка. Обычно, это краткое описание регистрационного имени и используется сейчас для указания фамилии и имени реального пользователя. Эта информация хранится в записи пользователя в файле /etc/passwd. Длина этого поля не должна превосходить 128 символов.
-m Создает начальный каталог нового пользователя, если он еще не существует. Если каталог уже существует, добавляемый пользователь должен иметь права на доступ к указанному каталогу.
-k skel_dir Копирует содержимое каталога skel_dir в начальный каталог нового пользователя, вместо содержимого стандартного "скелетного" каталога, /etc/skel. Каталог skel_dir должен существовать. Стандартный "скелетный" каталог содержит стандартные файлы, определяющие среду работы пользователя. Заданный администратором каталог skel_dir может содержать аналогичные файлы и каталоги, созданные для определенной цели.
-f inactive Максимально допустимое количество дней между использованиями регистрационного имени, когда это имя еще не объявляется недействительным. Обычно в качестве значений используются положительные целые числа.
-e expire Дата, начиная с которой регистрационное имя больше нельзя будет использовать; после этой даты никакой пользователь не сможет получить доступ под этим регистрационным именем. (Эта опция удобна при создании временных регистрационных имен.) Вводить значение аргумента expire (представляющего собой дату) можно в любом формате (кроме Julian date). Например, можно ввести 10/6/99 или October 6, 1999.
-p passgen Указывает, что поле FLAG в файле /etc/shadow должно быть установлено в указанное значение. К этому полю обращается команда passwd, чтобы определить, действует ли для данного пользователя генератор паролей. Если опция -p явно не задана, проверяется запись FORCED_PASS в файле /etc/default/useradd, чтобы определить значение для соответствующего поля в /etc/shadow. Если записи FORCED_PASS нет в /etc/default/useradd, в соответствующем поле записи в /etc/shadow значения не будет. Если значение FORCED_PASS равно 1, запись в /etc/shadow получает значение 1. Если значение passgen не пустое и не является печатным символом ASCII, выдается диагностическое сообщение.
-a событие Список типов или классов событий через запятую, образующих маску аудита (audit mask) для пользователя. Сразу после установки системы стандартной маски аудита для пользователя нет, но ее можно задать в файле /etc/default/useradd с помощью команды defadm. Эту опцию можно использовать, только если установлены утилиты аудита (Auditing Utilities). (Чтобы узнать, какие пакеты установлены в системе, выполните команду pkginfo.)
рег_имя Строка печатных символов, задающая регистрационное имя для нового пользователя. В ней не должно быть двоеточий (:) и символов перевода строки (\n). Она также не должна начинаться с прописной буквы.

Учтите, что многие из стандартных значений для рассмотренных выше параметров можно изменить с помощью команды defadm, предназначенной для работы с файлом /etc/default/useradd. Эти стандартные значения применяются только для локальных пользователей. Для пользователей NIS стандартные значения задаются в базе данных сетевой информационной службы. Чтобы изменить стандартные значения NIS, необходимо задать опции в командной строке.

   Регистрационные имена сетевой информационной службы

Если регистрационное имя начинается с символа +, (например, +chris), определением пользователя будет управлять сетевая информационная служба (NIS). Значения по умолчанию будут определяться на основе базы данных NIS, а не файла /etc/defaults/useradd. Значения аргументов для опций -u, -g и -G будут молча проигнорированы, если эти опции заданы. Вместо этого, значения идентификатора пользователя и идентификатора группы будут взяты из базы данных NIS. Подробнее см. страницу справочного руководства passwd. Учтите, что при добавлении пользователя NIS регистрационное имя должно уже существовать в базе данных NIS. Например, чтобы добавить регистрационное имя chris как имя пользователя NIS, chris уже должен существовать в базе данных NIS. Затем необходимо вызвать useradd с регистрационным именем +chris, чтобы указать, что необходимо добавить пользователя chris как пользователя NIS, а не как локального пользователя.

ФАЙЛЫ

/etc/default/useradd/etc/group/etc/passwd/etc/security/ia/ageduid/etc/security/ia/audit (если установлены утилиты аудита - Auditing Utilties)/etc/security/ia/index/etc/security/ia/master/etc/shadow/etc/skel

ДИАГНОСТИКА

Команда useradd завершается с кодом возврата 0 в случае успеха. При возникновении ошибок могут быть выданы следующие сообщения:

Неверный синтаксис командной строки. The command line syntax was invalid.В опции задан недопустимый аргумент. An invalid argument was provided with an option.Указанный в опции -u идентификатор уже используется, а опция -o не указана.The uid specified with the -u option is already in use and the -o option was not specified.Указанная в опции -g группа не существует.The group specified with the -g option does not exist.Указанное регистрационное имя не уникально.The specified login is not unique.Не удалось изменить /etc/group. Регистрационное имя добавлено в файл /etc/passwd, но не в файл /etc/group.Cannot update /etc/group. The login was added to the /etc/passwd file but not to the /etc/group file.Не удалось создать начальный каталог (в опции -m) или не удалось выполнить копирование skel_dir в начальный каталог.Unable to create the home directory (with the -m option) or unable to complete the copy of skel_dir to the home directory.Идентификатор недостаточно устарел. Выберите другой.uid not aged sufficiently. Choose another.Была указана недопустимая опция -a; системная служба не установлена.An invalid option -a was specified; system service not installed.Указан недопустимый тип или класс события аудита.An invalid audit event type or class event was specified.

yapro.ru

Ubuntu Manpage: useradd - регистрирует нового пользователя или изменяет информацию по умолчанию о новых

Provided by: passwd_4.1.5.1-1ubuntu9_amd64
НАЗВАНИЕ
useradd - регистрирует нового пользователя или изменяет информацию по умолчанию о новых пользователях
СИНТАКСИС
useradd [параметры] УЧЁТНАЯ_ЗАПИСЬ useradd -D useradd -D [параметры]
ОПИСАНИЕ
useradd is a low level utility for adding users. On Debian, administrators should usually use adduser(8) instead. При запуске без параметра -D команда useradd создаёт новую учётную запись пользователя, используя значения из командной строки и системные значения по умолчанию. В зависимости от параметров командной строки, команда useradd обновляет системные файлы, а также может создать домашний каталог нового пользователя и скопировать начальные файлы настроек. По умолчанию, для нового пользователя также создаётся группа (смотрите параметры -g, -N, -U и USERGROUPS_ENAB).
ПАРАМЕТРЫ
Параметры команды useradd: -b, --base-dir БАЗОВЫЙ_КАТАЛОГ Базовый системный каталог по умолчанию, если другой каталог не указан с помощью параметра -d. Значение БАЗОВЫЙ_КАТАЛОГ объединяется с именем учётной записи для определения домашнего каталога. Если не указан параметр -m, то БАЗОВЫЙ_КАТАЛОГ должен существовать. Если этот параметр не задан, то команда useradd будет использовать базовый каталог, указанный в переменной HOME в файле /etc/default/useradd иначе /home (по умолчанию). -c, --comment КОММЕНТАРИЙ Любая текстовая строка. Обычно, здесь коротко описывается учётная запись, и в настоящее время используется как поле для имени и фамилии пользователя. -d, --home ДОМАШНИЙ_КАТАЛОГ Для создаваемого пользователя будет использован каталог ДОМАШНИЙ_КАТАЛОГ в качестве начального каталога. По умолчанию, это значение получается объединением ИМЕНИ пользователя с БАЗОВЫМ_КАТАЛОГОМ и используется как имя домашнего каталога. Каталог ДОМАШНИЙ_КАТАЛОГ необязательно должен существовать, но не будет создан, если его нет. -D, --defaults Смотрите далее в подразделе «Изменение значений по умолчанию». -e, --expiredate ДАТА_УСТАРЕВАНИЯ Дата, когда учётная запись пользователя будет заблокирована. Дата задаётся в формате ГГГГ-ММ-ДД. Если этот параметр не задан, то команда useradd будет использовать дату устаревания по умолчанию, указанную в переменной EXPIRE в файле /etc/default/useradd, иначе пустую строку (без устаревания, по умолчанию). -f, --inactive ДНЕЙ Если указано значение 0, то учётная запись блокируется сразу после устаревания пароля, а при значении -1 данная возможность не используется. Если этот параметр не задан, то команда useradd будет использовать срок неактивности по умолчанию, указанный в переменной INACTIVE в файле /etc/default/useradd или -1 (по умолчанию). -g, --gid ГРУППА Имя или числовой идентификатор первичной группы пользователя. Группа с таким именем должна существовать. Идентификатор группы должен указывать на уже существующую группу. Если не указан, то поведение useradd зависит от переменной USERGROUPS_ENAB в файле /etc/login.defs. Если значение этой переменной равно yes (или в командной строке указан параметр -U/--user-group), то для пользователя будет создана группа с тем же именем как его имя для входа. Если значение переменной равно no (или в командной строке указан параметр -N/--no-user-group), то useradd установит первичную группу нового пользователя равной значению переменной GROUP из файла /etc/default/useradd, или 100 (по умолчанию). -G, --groups ГРУППА1[,ГРУППА2,...[,ГРУППАN]]] Список дополнительных групп, в которых числится пользователь. Перечисление групп осуществляется через запятую, без промежуточных пробелов. На указанные группы действуют те же ограничения, что и для группы указанной в параметре -g. По умолчанию пользователь входит только в начальную группу. -h, --help Показать краткую справку и закончить работу. -k, --skel КАТАЛОГ_ШАБЛОНОВ Каталог с шаблонами, который содержит файлы и каталоги для копирования в домашний каталог пользователя при создании домашнего каталога командой useradd. Этот параметр можно использовать только с параметром -m (или --create-home). Если этот параметр не задан, то каталог шаблонов определяется переменной SKEL из файла /etc/default/useradd, или равен /etc/skel (по умолчанию). Если возможно, выполняется копирование ACL и расширенных атрибутов. -K, --key КЛЮЧ=ЗНАЧЕНИЕ Заменяет значения по умолчанию из файла /etc/login.defs (UID_MIN, UID_MAX, UMASK, PASS_MAX_DAYS и других). Пример: -K PASS_MAX_DAYS=-1 можно использовать при создании системной учётной записи, чтобы выключить устаревание пароля, даже если системная учётная запись вообще не имеет пароля. Можно указывать параметр -K несколько раз, например: -K UID_MIN=100 -K UID_MAX=499 -l, --no-log-init Не добавлять пользователя в базы данных lastlog и faillog. По умолчанию, записи пользователя в базах данных lastlog и faillog сбрасываются во избежание повторного использования записи, оставшейся от ранее удалённого пользователя. For the compatibility with previous Debian's useradd, the -O option is also supported. -m, --create-home Создать домашний каталог пользователя, если он не существует. Файлы и каталоги, содержащиеся в каталоге шаблонов (который можно указать с помощью параметра the -k option), будут скопированы в домашний каталог. По умолчанию, если этот параметр не указан и не задана переменная CREATE_HOME, домашний каталог не создаётся. -M Не создавать домашний каталог пользователя, даже если значение системной переменной в файле /etc/login.defs (CREATE_HOME) равно yes. -N, --no-user-group Не создавать группу с тем же именем как у пользователя, но добавить пользователя в группу, заданную параметром -g или переменной GROUP из файла /etc/default/useradd. Поведение по умолчанию (если не указан параметр -g, -N и -U) определяется переменной USERGROUPS_ENAB из файла /etc/login.defs. -o, --non-unique Разрешить создание учётной записи с уже имеющимся (не уникальным) UID. Этот параметр можно использовать только с параметром -u. -p, --password ПАРОЛЬ Шифрованное значение пароля, которое возвращает функция crypt(3). По умолчанию пароль отключён. Замечание: Этот параметр использовать не рекомендуется, так как пароль (или не шифрованный пароль) будет видим другими пользователям в списке процессов. Вы должны проверить, что пароль соответствует политике системных паролей. -r, --system Создать системную учётную запись. Системные пользователи создаются без информации об устаревании в /etc/shadow, и их числовые идентификаторы выбираются из диапазона SYS_UID_MIN-SYS_UID_MAX, определённого в /etc/login.defs, а не из UID_MIN-UID_MAX (это же касается и части с GID при создании групп). Заметим, что useradd не создаёт домашний каталог для данного пользователя независимо от значения по умолчанию в /etc/login.defs (CREATE_HOME). Если вы хотите создать домашний каталог для системной учётной записи укажите параметр -m. -R, --root КАТ_CHROOT Выполнить изменения в каталоге КАТ_CHROOT и использовать файлы настройки из каталога КАТ_CHROOT. -s, --shell ОБОЛОЧКА Имя регистрационной оболочки пользователя. По умолчанию это поле пусто, что вызывает выбор регистрационной оболочки по умолчанию согласно значению переменной SHELL из файла /etc/default/useradd, или по умолчанию используется пустая строка. -u, --uid UID Числовое значение идентификатора пользователя (ID). Оно должно быть уникальным, если не используется параметр -o. Значение должно быть неотрицательным. По умолчанию используется наименьшее значение ID большее или равное UID_MIN и большее чем у остальных пользователей. Смотрите также описание -r и UID_MAX. -U, --user-group Создать группу с тем же именем что и у пользователя, и добавить пользователя в эту группу. Поведение по умолчанию (если не указан параметр -g, -N и -U) определяется переменной USERGROUPS_ENAB из файла /etc/login.defs. -Z, --selinux-user SEUSER Пользователь SELinux для регистрационной оболочки пользователя. По умолчанию это поле пусто, что заставляет систему выбрать пользователя SELinux по умолчанию. Изменение значений по умолчанию При запуске программы только с параметром -D команда useradd показывает текущие значения по умолчанию. Если программа запускается с параметром -D вместе с другими параметрами, то useradd обновляет значения по умолчанию этих указанных параметров. Изменяемые параметры: -b, --base-dir БАЗОВЫЙ_КАТАЛОГ Начальная часть пути нового домашнего каталога пользователя. Имя пользователя будет добавлено в конец ДОМАШНЕГО_КАТАЛОГА для создания имени нового каталога, если при создании новой учётной записи не указан параметр -d. Этот параметр изменяет переменную HOME в файле /etc/default/useradd. -e, --expiredate ДАТА_УСТАРЕВАНИЯ Дата, когда учётная запись пользователя заблокирована. Этот параметр изменяет переменную EXPIRE в файле /etc/default/useradd. -f, --inactive ДНЕЙ Число дней, которые должны пройти после устаревания пароля, перед тем как учётная запись будет заблокирована. Этот параметр изменяет переменную INACTIVE в файле /etc/default/useradd. -g, --gid ГРУППА Имя группы или ID новой первичной группы пользователя (если используется -N/--no-user-group или когда значение переменной USERGROUPS_ENAB равно no (файл /etc/login.defs). Группа с указанным именем должна существовать, а для числового идентификатора группы должна быть соответствующая запись. Этот параметр изменяет переменную GROUP в файле /etc/default/useradd. -s, --shell ОБОЛОЧКА Имя новой регистрационной командной оболочки пользователя. Этот параметр изменяет переменную SHELL в файле /etc/default/useradd.
ЗАМЕЧАНИЯ
Системный администратор сам решает, какие файлы нужно положить в каталог /etc/skel/ (или в любой другой каталог шаблонов, указанный в /etc/default/useradd или в командной строке).
ПРЕДОСТЕРЕЖЕНИЯ
Нельзя добавить пользователя в группу NIS или LDAP. Это необходимо делать на соответствующем сервере. Также, если имя пользователя уже существует во внешней базе данных такой как NIS или LDAP, то useradd не станет создавать учётную запись пользователя. It is usually recommended to only use usernames that begin with a lower case letter or an underscore, followed by lower case letters, digits, underscores, or dashes. They can end with a dollar sign. In regular expression terms: [a-z_][a-z0-9_-]*[$]? On Debian, the only constraints are that usernames must neither start with a dash ('-') nor plus ('+') nor tilde ('~') nor contain a colon (':'), a comma (','), or a whitespace (space: ' ', end of line: '\n', tabulation: '\t', etc.). Note that using a slash ('/') may break the default algorithm for the definition of the user's home directory. Имена пользователей могут быть длиной не более 32 знаков.
НАСТРОЙКА
На работу этого инструмента влияют следующие переменные настройки из /etc/login.defs: CREATE_HOME (логический) Определяет, должен ли создаваться по умолчанию домашний каталог для новых пользователей. Эта переменная не влияет на системных пользователей и может быть переопределена из командной строки. GID_MAX (число), GID_MIN (число) Диапазон идентификаторов групп, используемый в программах useradd, groupadd или newusers для создания обычных групп. Значение по умолчанию для GID_MIN (соотв. GID_MAX) равно 1000 (соотв. 60000). MAIL_DIR (строка) Почтовый каталог. Данный параметр нужен для управления почтовым ящиком при изменении или удалении учётной записи пользователя. Если параметр не задан, то используется значение указанное при сборке. MAIL_FILE (строка) Определяет расположение почтовых файлов пользователя относительно домашнего каталога. Переменные MAIL_DIR и MAIL_FILE используются командами useradd, usermod и userdel для создания, перемещения или удаления почты пользователя. MAX_MEMBERS_PER_GROUP (число) Максимальное количество членов в записи о группе. При достижения максимума заводится новая запись группы (строка) в /etc/group (с тем же именем, паролем и тем же GID). Значение по умолчанию равно 0, означающее, что ограничения на количество членов в группе нет. Данная возможность (разделение группы) позволяет ограничить длину строк в файле групп. Это полезно для ограничения длины строк групп NIS в 1024 символа. Если вам нужно такое ограничение, укажите значение 25. Замечание: разделение групп поддерживается не всеми инструментами (даже в наборе инструментов Shadow). Вы не должны использовать эту переменную, если вам действительно это ненужно. PASS_MAX_DAYS (число) Максимальное число дней использования пароля. Если пароль старее этого числа, то будет запущена процедура смены пароля. Если значение не задано, то предполагается значение -1 (то есть возможность ограничения не используется). PASS_MIN_DAYS (число) Максимальное число дней между изменениями пароля. Любая смена пароля ранее заданного срока выполнена не будет. Если значение не задано, то предполагается значение -1 (то есть возможность ограничения не используется). PASS_WARN_AGE (число) Число дней за которое начнёт выдаваться предупреждение об устаревании пароля. Нулевое значение означает, что предупреждение выдаётся в день устаревания, при отрицательном значении предупреждение выдаваться не будет. Если значение не задано, выдача предупреждения отключается. SYS_GID_MAX (число), SYS_GID_MIN (число) Диапазон идентификаторов групп, используемый в программах useradd, groupadd или newusers для создания системных групп. Значение по умолчанию для SYS_GID_MIN (соотв.SYS_GID_MAX) равно 101 (соотв. GID_MIN-1). SYS_UID_MAX (число), SYS_UID_MIN (число) Диапазон идентификаторов пользователей, используемый в программах useradd или newusers для создания системных пользователей. Значение по умолчанию для SYS_UID_MIN (соотв. SYS_UID_MAX) равно 101 (соотв. UID_MIN-1). UID_MAX (число), UID_MIN (число) Диапазон идентификаторов пользователей, используемый в программах useradd или newusers для создания обычных пользователей. Значение по умолчанию для UID_MIN (соотв. UID_MAX) равно 1000 (соотв. 60000). UMASK (число) Задаёт начальное значение маски доступа для создаваемых файлов. Если не указано, то маска устанавливается в 022. Команды useradd и newusers используют эту маску для установки прав доступа к домашнему каталогу, который они создают. Она также используется командой pam_umask как значение umask по умолчанию. USERGROUPS_ENAB (логический) Если значение равно yes, то userdel удаляет пользовательскую группу, если в ней нет больше членов, а useradd по умолчанию создаёт группу с именем пользователя.
ФАЙЛЫ
/etc/passwd содержит информацию о пользователях /etc/shadow содержит защищаемую информацию о пользователях /etc/group содержит информацию о группах /etc/gshadow содержит защищаемую информацию о группах /etc/default/useradd значения по умолчанию для создаваемой учётной записи /etc/skel/ каталог, содержащий файлы по умолчанию /etc/login.defs содержит конфигурацию подсистемы теневых паролей
ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ
Команда useradd завершая работу, возвращает следующие значения: 0 успешное выполнение 1 не удалось изменить файл паролей 2 ошибка в параметрах команды 3 недопустимое значение параметра 4 такой UID уже существует (и не задан параметр -o) 6 указанная группа не существует 9 имя пользователя уже существует 10 не удалось изменить файл групп 12 не удалось создать домашний каталог 14 can't update SELinux user mapping
СМОТРИТЕ ТАКЖЕ
chfn(1), chsh(1), passwd(1), crypt(3), groupadd(8), groupdel(8), groupmod(8), login.defs(5), newusers(8), userdel(8), usermod(8).

manpages.ubuntu.com

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

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

Мэтт Уэлш

Даже если на компьютере работает только один человек, необходимо понимать аспекты управления пользователями в системе Linux. Важно создать по крайней мере одно имя пользователя (помимо пользователя root) для повседневной работы.

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

Пользователи с точки зрения Linux

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

Имя пользователя (user name)

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

Идентификационный номер пользователя (User ID)

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

Идентификационный номер группы (group ID)

Этот номер (сокращённо GID) обозначает группу, к которой по умолчанию относится пользователь. Группы позволяют регулировать доступ многих пользователей к различным ресурсам. Каждый пользователь принадлежит одной или нескольким группам, и эту принадлежность устанавливает системный администратор.

Пароль (password)

Это зашифрованный (encripted) пароль пользователя. Для создания и изменения пароля используется команда passwd.

Полное имя (full name)

Помимо системного имени пользователя, в систему заносится и хранится имя (фамилия и т. д.) «реального» пользователя. Например, пользователю schmoj в реальной жизни может соответствовать человек по имени Joe Schmo.

Домашний каталог (home directory)

Это название каталога, в который попадает пользователь после того, как он вошёл в систему (зарегистрировался, login), и где хранятся его собственные файлы. Такой каталог имеется у каждого пользователя, и все такие каталоги собраны в один каталог, обычно называемый /home.

Начальная оболочка (login shell)

Командная оболочка, которая запускается при входе в систему. Например, /bin/bash или /bin/zsh.

Вся эта информация хранится в файле /etc/passwd. Каждая строка в файле имеет формат:

имя пользователя:зашифрованный пароль:UID:GID:полное имя:домашний каталог:оболочка

Приведём пример:

kiwi:Xv8Q981g71oKK:102:100:Laura Poole:/home/kiwi:/bin/bash

В этом примере на первом месте стоит имя пользователя, т. е. kiwi. В следующем поле помещается пароль в зашифрованном виде: Xv8Q981g71oKK. Пароли в системе хранятся не в «читаемом» формате, а в зашифрованном с собственным именем, использованным в качестве ключа. Иными словами, для того, чтобы расшифровать пароль, его нужно знать. Эта форма шифрования является достаточно надёжной.

В некоторых системах имеются «теневые пароли» (shadow passwords), когда информация о пароле хранится в файле /etc/shadow. Такая схема является несколько более безопасной, поскольку файл /etc/passwd может читаться кем угодно, а права доступа к файлу /etc/shadow гораздо сильнее ограничены. Теневые пароли также обеспечивают иные функции, например, истечение срока действия пароля.

Третье поле — 102 — UID. Это число должно быть уникальным. Четвёртое поле — 100 — GID, т. е. пользователь принадлежит к группе с номером 100. Информация о группах хранится в файле /etc/group.

Пятое поле — реальное имя пользователя, в данном случае — Laura Poole. Последние два поля — домашний каталог пользователя (/home/kiwi) и начальная оболочка (/bin/bash). Не требуется, чтобы имена пользователя и домашнего каталога совпадали, однако такая организация помогает устанавливать принадлежность каталога.

Создание новых пользователей

При создании новых пользователей надо совершить последовательность из нескольких действий. Во-первых, на пользователя заводится запись в файле /etc/passwd, где пользователю даются уникальные имя и UID. UID обычных пользователей должны быть больше 100, поскольку низкие UID зарезервированы для системных целей. Также указываются GID, реальное имя и другая информация. Дальше создаётся домашний каталог пользователя, и права доступа устанавливаются так, что этим каталогом владеет данный пользователь. В каталог помещаются файлы инициализации командной оболочки. Также во всей системе модифицируются конфигурационные файлы (например, хранилище (spool) для приходящей пользователям электронной почты).

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

В файле /etc/default/useradd содержится информация о стандартной начальной конфигурации для всех новых пользователей. В этом файле задаются значения переменным, которые использует программа useradd. Кроме того, этот файл указывает, где находятся конфигурационные файлы содержащие настройки по умолчанию. Расположение этих файлов задаётся переменной SKEL. Файлы, которые помещаются в этот каталог (такие, как файл .profile, устанавливающий режим по умолчанию во всей системе, а также файлы .zshrc или .bashrc), будут автоматически скопированы в домашний каталог создаваемого пользователя командой useradd.

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

Удаление пользователей из системы может быть произведено командой userdel или deluser.

Если требуется временно запретить пользователю вход в систему, но не удалять его домашний каталог и прочие сделанные установки, можно просто поставить звёздочку (символ *) в то поле файла /etc/passwd, где находится пароль. Например, таким образом изменённая строка для пользователя kiwi будет выглядеть как

kiwi:*Xv8Q981g71oKK:102:100:Laura Poole:/home/kiwi:/bin/bash

При этом вход в систему пользователя kiwi станет невозможным.

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

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

passwd larry

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

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

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

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

Информация о группах содержится в файле /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.

heap.altlinux.org

пользователь Linux и управление группами пользователей

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

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

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

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

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

  • учетной записи пользователя, добавлять, удалять и изменять.
  • Управление пользователями пароля.
  • Управление группами пользователей.

A, система Linux управление учетными записями пользователей

Управление пользователями учетной записи в основном связаны с учетной записью пользователя, добавлять, изменять и удалять.

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

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

useradd 选项 用户名

Параметр Описание:

Пример 1
# useradd –d /usr/sam -m sam

Эта команда создает пользователя Сэмом, в котором -d и -m опция используется для создания имени Войти Сэмом домашний каталог / USR / СЭМ (/ USR для домашней директории пользователя по умолчанию является родительский каталог).

Пример 2
# useradd -s /bin/sh -g group –G adm,root gem

Эта команда создает пользовательскую жемчужину, логин пользователя Шелл /bin/sh , он принадлежит к группе пользователей группы, но и принадлежат к корневым и пользователей адм групп, группы пользователей , которым группа является основной группой.

Там может быть новая группа: #groupadd group及groupadd adm

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

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

3, удалить учетную запись

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

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

userdel 选项 用户名

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

Например:

# userdel sam

Эта команда удаляет пользователя Сэмом в системном файле (в основном / и т.д. / пароль, / и т.д. / тень, / и т.д. / группы и т.д.) запись, удалить домашний каталог пользователя.

4. Счет Изменить

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

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

usermod 选项 用户名

Общие параметры включают -c, -d, -m, -g, -G, -s, -u以及-o等 -G, -s, -u useradd -c, -d, -m, -g, -G, -s, -u以及-o等 , то есть эти опции с useradd опции командной, вы можете задать новое значение для пользователей ресурса.

Кроме того, некоторые системы могут использовать параметры: -l новое имя пользователя

Этот параметр определяет новую учетную запись, будет исходное имя пользователя для нового имени пользователя.

Например:

# usermod -s /bin/ksh -d /home/z –g developer sam

Эта команда устанавливает Логин пользователя Shell сэм изменить Ksh, домашний каталог в / Home / г, группу пользователей к разработчику.

5, управление паролями пользователей

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

Укажите и изменять пароли пользователей командой оболочки является passwd . Суперпользователь может указать пароль для себя и других пользователей, обычные пользователи могут использовать его только изменить свой пароль. Формат команды:

passwd 选项 用户名

Дополнительное использование:

  • -l Блокировка паролем, который отключает учетную запись.
  • -u пароль разблокировки.
  • -d включить учетную запись без пароля.
  • -f Заставить пользователей менять пароль при следующем входе в систему.

Если имя пользователя по умолчанию, а затем изменить пароль текущего пользователя.

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

$ passwd Old password:****** New password:******* Re-enter new password:*******

Если пользователь супер, вы можете указать пароль любого пользователя, используя следующую форму:

# passwd sam New password:******* Re-enter new password:*******

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

Для обеспечения безопасности системы, вы должны выбрать более сложные пароли, например, предпочтительно использовать 8-разрядный пароль, пароль содержит прописные и строчные буквы и цифры, и должны назвать, день рождения и т.д. не то же самое.

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

# passwd -d sam

Эта команда удалит пароль пользователя Сэму, так что пользователь сэм следующий раз, когда вы войти, система не будет спрашивать пароль.

Команда PASSWD может также зафиксировать с помощью -l (замок) пользовательского параметра, вы не можете войти, такие как:

# passwd -l sam

Во-вторых, система управления группа пользователей Linux

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

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

1, добавить новые группы пользователей GroupAdd команду. Его формат выглядит следующим образом:

groupadd 选项 用户组

Параметры могут быть использованы:

  • -g GID Определяет новую группу пользователей идентификатор группы (GID).
  • -o опция -g, как правило, используется одновременно с указанием ГУВ новой группы с системой GID имеет ту же группу пользователей.
Пример 1:
# groupadd group1

Эта команда добавляет в систему новую группу group1, новой группы идентификатор группы добавляется к основе имеющихся в настоящее время максимальный групповой идентификационный номер 1.

Пример 2:
# groupadd -g 101 group2

Эта команда для добавления в систему новой группы GROUP2, при задании новой группы групповой идентификации числа составляет 101.

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

groupdel 用户组
Например:
# groupdel group1

Эта команда, чтобы удалить группу из системы group1.

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

groupmod 选项 用户组

Обычно используемые опции:

  • -g GID Задает новый идентификатор группы для группы пользователей.
  • -o опция -g и использовать новую GID группу пользователей системы с теми же GID существующих групп пользователей.
  • -n новая группа пользователей будет изменено на новое имя от названия группы пользователя
Пример 1:
# groupmod -g 102 group2

Эта команда группы group2 группы идентификационный номер изменен на 102.

Пример 2:
# groupmod –g 10000 -n group3 group2

Эта команда идентификации группы group2 номер 10000, и название группы изменено на группе 3.

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

Пользователи могут войти, используйте команду newgrp, чтобы переключиться на другие группы пользователей, параметр порядка является объектом группы пользователей. Например:

$ newgrp root

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

В-третьих, системные файлы учетная запись пользователя, связанных с

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

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

Ниже описывается содержимое этих файлов.

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

Система Linux, каждый пользователь имеет соответствующие строки в / и т.д. / пароль файл, который записывает основные атрибуты пользователей.

Этот файл доступен для чтения для всех пользователей. Он похож на следующий пример:

# cat /etc/passwd root:x:0:0:Superuser:/: daemon:x:1:1:System daemons:/etc: bin:x:2:2:Owner of system commands:/bin: sys:x:3:3:Owner of system files:/usr/sys: adm:x:4:4:System accounting:/usr/adm: uucp:x:5:5:UUCP administrator:/usr/lib/uucp: auth:x:7:21:Authentication administrator:/tcb/files/auth: cron:x:9:16:Cron daemon:/usr/spool/cron: listen:x:37:4:Network daemon:/usr/net/nls: lp:x:71:18:Printer administrator:/usr/spool/lp: sam:x:200:50:Sam san:/usr/sam:/bin/sh

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

用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell

1) "Имя пользователя" является строкой, которая представляет собой учетную запись пользователя.

Обычно не более восьми символов, а также заглавных и строчных букв и / или цифр. Войти Имя не может содержать двоеточие (:), потому что здесь есть разделители толстой кишки.

Из соображений совместимости, имя Логин не должен содержать точечный характер, и не использует дефис (.) (-) И плюс (+) начинается.

2) "Пароль" в некоторых системах, хранения пользовательских паролей в зашифрованном виде.

Хотя это поле хранится в зашифрованном строке пароля, не прямо, но из-за / и т.д. / пароль файл для всех пользователей читать, так что это по-прежнему создает угрозу безопасности. Так что теперь многие системы Linux (например, SVR4) оба используют технику тени, пароли пользователей действительно зашифрована хранятся в / и т.д. / теневого файла, а в поле пароля / и т.д. / пароль файл содержит только специальный символы, такие как "х" или "*".

3) "Идентификатор пользователя" представляет собой целое число в пределах системы, чтобы использовать его для идентификации пользователя.

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

идентификационный номер пользователя, как правило, в диапазоне от 0 до 65 535,0 суперпользователя идентификационный номер корня, от 1 до 99 зарезервированы системой, так как управление учетными записями, общего пользовательского идентификационного номера от 100 запусков. В системах Linux, этот предел составляет 500.

4) Поле "Идентификатор группы" записи является группа пользователей принадлежит пользователь.

Это соответствует / и т.д. / группы файлов записи.

5) "комментарии Описание" поле записывает личную ситуацию пользователя.

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

6) "Главное меню", которое является исходный рабочий каталог пользователя.

Это каталог, в котором пользователь после входа в систему. В большинстве систем, домашний каталог каждого пользователя организованы в рамках одной конкретной директории, а имя домашнего каталога пользователя это имя Логин пользователя. Каждый пользователь имеет свой собственный каталог домашнего чтения, запись, выполнение (поиск) разрешение на доступ к каталогам других пользователей устанавливаются в зависимости от обстоятельств.

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

Shell представляет собой интерфейс между пользователем и системами Linux. Есть много Linux-Shell, каждый с различными характеристиками. Обычно используется ш (Bourne Shell), CSH (C Shell), КШ (Korn Shell), Tcsh (TENEX / TOPS-20 типа C Shell), Bash (Bourne Again Shell) и тому подобное.

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

Войти User Shell также могут быть заданы для конкретной программы (эта программа не является интерпретатор команд).

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

8) система имеет класс пользователей, называемых псевдо-пользователей (псевдопользователей).

Пользователь также имеет / и т.д. / пароль файл записи, но не может войти, потому что их Войти Shell пуст. Они существуют в основном для облегчения управления системой, системные процессы для удовлетворения соответствующих требований владельца файла.

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

伪 用 户 含 义 bin 拥有可执行的用户命令文件 sys 拥有系统文件 adm 拥有帐户文件 uucp UUCP使用 lp lp或lpd子系统使用 nobody NFS使用

У вас есть файл учетной записи

1, за исключением того, псевдо-пользователя, перечисленных выше, существует множество стандартных псевдо-пользователей, таких как: аудит, хрон, почта, Usenet и т.д., они также актуальны для соответствующих процессов и требований к документации.

Так как / и т.д. / пароль файл доступен для чтения для всех пользователей, если пароль пользователя слишком простой или очевидные слова закона, обычный компьютер может легко сломать, поэтому, чем выше требования к безопасности системы Linux Считаясь зашифрованные пароли разделены, хранится в отдельном файле, этот файл / и т.д. / тень файла. Там есть привилегии суперпользователя, чтобы читать этот файл, который гарантирует безопасность пароля пользователя.

2, / и т.д. / тень в строках и т.д. / пароль в соответствие /, оно автоматически генерируется данных команды pwconv / и т.д. / пароль, в соответствии с

Его формат файла и / и т.д. / аналогично PASSWD, состоит из нескольких полей, между полями с ":" разделены. Эти поля являются:

登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
  1. "Логин" согласуется с / и т.д. / файле паролей, учетная запись пользователя имя Логин
  2. Поле "Password" хранится в зашифрованных паролей пользователей, длиной 13 символов. Если пусто, то соответствующий пользователь без пароля, нет логина пароля, если вы не принадлежат множеству {содержащим ./0-9A-Za-z} символов, соответствующий пользователь не может войти в систему.
  3. "Последнее изменение", то есть с определенного времени, пользователю для изменения количества дней пароль в последний раз. Время начала для разных систем может быть различной. Например, в SCO Linux, самое время начать является 1 января., 1970
  4. "Минимальный интервал" относится к минимальному количество дней, необходимых между двумя изменить пароль.
  5. "Максимальный интервал времени" относится к паролю действует максимальное количество дней.
  6. "Предупреждение Time" указывает количество дней от системы начал предупреждать пользователей официального пароля между отказами.
  7. "Неактивный время" означает, что пользователь не зарегистрирован, но счет активности остается активным максимальное количество дней.
  8. Поле "Мертвое время" заданное число дней абсолютных, если вы используете это поле, то это дает срок службы соответствующих счетов. После истечения срока действия учетной записи больше не является законным счетом, он не может быть использован для входа в систему.

Вот пример / и т.д. / тень:

# cat /etc/shadow root:Dnakfw28zf38w:8764:0:168:7::: daemon:*::0:0:::: bin:*::0:0:::: sys:*::0:0:::: adm:*::0:0:::: uucp:*::0:0:::: nuucp:*::0:0:::: auth:*::0:0:::: cron:*::0:0:::: listen:*::0:0:::: lp:*::0:0:::: sam:EkdiSECLWPdSa:9740:0:0::::

3, все данные сохраняются в пользовательской группе / и т.д. файла / группы.

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

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

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

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

Вся информация хранится в группе пользователей / и т.д. / файл группы. Формат этого файла также похож на / и т.д. / пароль файл, двоеточие (:), разделенных количеством полей, которые являются:

组名:口令:组标识号:组内用户列表
  1. "Имя группы" это название группы, состоящей из букв или цифр. А / и т.д. / пароль имена пользователей, имена групп не должны повторяться.
  2. Поле "Password" хранится в группе пользователей пароли в зашифрованном виде. Linux группы пользователей системы, как правило, нет пароля, что это поле обычно пусто, или *.
  3. "Идентификатор группы" с идентификационного номера пользователя подобным, является целым числом, внутренние системы, используемые для идентификации групп.
  4. "Пользователи в списке групп" является частью списка всех пользователей / б] эта группа, разделенных между различными пользователями с запятой (,). Эта группа пользователей может быть первичной группы пользователей, это может быть дополнительная группа.

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

root::0:root bin::2:root,bin sys::3:root,uucp adm::4:root,adm daemon::5:root,daemon lp::7:root,lp users::20:root,sam

В-четвертых, количество пользователей гранта

Добавлять и удалять учетные записи пользователей на каждой системе Linux администраторов легко, труднее, если вы хотите добавить десятки, сотни или даже тысячи пользователей, мы вряд ли сможем использовать useradd, чтобы добавить один за другим, обязательно ищет способ создания большого числа пользователей метода прост. Система Linux предоставляет большое количество пользователей, чтобы создать инструмент, который позволяет создавать большое количество пользователей сразу же, следующим образом:

(1) для редактирования пользователем текстового файла.

Каждый столбец в соответствии с /etc/passwd и /etc/passwd записывается в формате файла паролей, обратите внимание на имя пользователя каждого пользователя, UID, не может принять тот же каталог, в котором можно оставить поле пароля пустым или введите номер х. User.txt файл выборки выглядит следующим образом:

user001::600:100:user:/home/user001:/bin/bash user002::601:100:user:/home/user002:/bin/bash user003::602:100:user:/home/user003:/bin/bash user004::603:100:user:/home/user004:/bin/bash user005::604:100:user:/home/user005:/bin/bash user006::605:100:user:/home/user006:/bin/bash

(2) Как корень, выполнить команду /usr/sbin/newusers , из пользовательского файла , который вы только что создали user.txt импорта данных, создать пользователя:

# newusers < user.txt

После этого вы можете выполнить команду vipw или vi /etc/passwd и /etc/passwd vi /etc/passwd для проверки /etc/passwd и /etc/passwd файл стало появление данных этих пользователей, и домашний каталог пользователя был создан.

(3) Run / USR / SBIN / pwunconv.

/etc/shadow И shadow /etc/passwd /etc/shadow shadow /etc/shadow генерируется shadow пароль декодируется , а затем записывается обратно в /etc/passwd и /etc/passwd и /etc/shadow и /etc/shadow от shadow поле пароля удален. Это должно облегчить следующий шаг криптографического преобразования работы, которая является для отмены shadow password функции.

# pwunconv

(4) для редактирования файла управления пароль для каждого пользователя.

Примеры файлов passwd.txt выглядит следующим образом :

user001:密码 user002:密码 user003:密码 user004:密码 user005:密码 user006:密码

(5) Запуск от имени корня /usr/sbin/chpasswd .

Создание пароля пользователя, chpasswd будет проходить через /usr/bin/passwd команды кодируются пароли , написанные /etc/passwd и /etc/passwd Поле для ввода пароля.

# chpasswd < passwd.txt

(6) для определения пароля, закодированного запись / и т.д. / пароль поле пароля позже.

Run /usr/sbin/pwconv пароль , закодированный в качестве shadow password , и результат записывается в /etc/shadow и /etc/shadow .

# pwconv

Это завершает создание большого числа пользователей, после чего вы можете пойти, чтобы проверить разрешения на домашней директории пользователя в / домашних условиях являются правильными, если, и убедитесь, что пароль пользователя правильно Логин.

www.w3big.com