Учебники

Unix / Linux — Администрирование пользователей

В этой главе мы подробно обсудим администрирование пользователей в Unix.

В системе Unix есть три типа учетных записей:

Корневой аккаунт

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

Системные учетные записи

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

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

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

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

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

Существует четыре основных файла администрирования пользователей —

  • / etc / passwd — хранит информацию об учетной записи пользователя и пароле. Этот файл содержит большую часть информации об учетных записях в системе Unix.

  • / etc / shadow — содержит зашифрованный пароль соответствующей учетной записи. Не все системы поддерживают этот файл.

  • / etc / group — этот файл содержит информацию о группе для каждой учетной записи.

  • / etc / gshadow — этот файл содержит информацию об учетной записи защищенной группы.

/ etc / passwd — хранит информацию об учетной записи пользователя и пароле. Этот файл содержит большую часть информации об учетных записях в системе Unix.

/ etc / shadow — содержит зашифрованный пароль соответствующей учетной записи. Не все системы поддерживают этот файл.

/ etc / group — этот файл содержит информацию о группе для каждой учетной записи.

/ etc / gshadow — этот файл содержит информацию об учетной записи защищенной группы.

Проверьте все перечисленные выше файлы с помощью команды cat .

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

Sr.No. Команда и описание
1

useradd

Добавляет учетные записи в систему

2

usermod

Изменяет атрибуты аккаунта

3

userdel

Удаляет аккаунты из системы

4

GroupAdd

Добавляет группы в систему

5

groupmod

Изменяет атрибуты группы

6

groupdel

Удаляет группы из системы

useradd

Добавляет учетные записи в систему

usermod

Изменяет атрибуты аккаунта

userdel

Удаляет аккаунты из системы

GroupAdd

Добавляет группы в систему

groupmod

Изменяет атрибуты группы

groupdel

Удаляет группы из системы

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

Создать группу

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

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

 groupadd [-g gid [-o]] [-r] [-f] groupname

В следующей таблице перечислены параметры —

Sr.No. Вариант и описание
1

-G GID

Числовое значение идентификатора группы

2

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

3

Этот флаг указывает groupadd добавить системную учетную запись

4

-f

Эта опция заставляет просто выйти с успешным статусом, если указанная группа уже существует. С помощью -g, если указанный GID уже существует, выбирается другой (уникальный) GID

5

имя группы

Фактическое имя группы, которая будет создана

-G GID

Числовое значение идентификатора группы

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

Этот флаг указывает groupadd добавить системную учетную запись

-f

Эта опция заставляет просто выйти с успешным статусом, если указанная группа уже существует. С помощью -g, если указанный GID уже существует, выбирается другой (уникальный) GID

имя группы

Фактическое имя группы, которая будет создана

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

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

$ groupadd developers

Изменить группу

Чтобы изменить группу, используйте синтаксис groupmod

$ groupmod -n new_modified_group_name old_group_name

Чтобы изменить имя группы developers_2 на developer, введите —

$ groupmod -n developer developer_2

Вот как вы измените финансовый GID на 545 —

$ groupmod -g 545 developer

Удалить группу

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

$ groupdel developer

Это удаляет только группу, а не файлы, связанные с этой группой. Файлы по-прежнему доступны их владельцам.

Завести аккаунт

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

useradd -d homedir -g groupname -m -s shell -u userid accountname

В следующей таблице перечислены параметры —

Sr.No. Вариант и описание
1

-d Homedir

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

2

-g имя группы

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

3

-m

Создает домашний каталог, если он не существует

4

оболочка

Определяет оболочку по умолчанию для этой учетной записи

5

-u идентификатор пользователя

Вы можете указать идентификатор пользователя для этой учетной записи

6

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

Фактическое имя учетной записи, которая будет создана

-d Homedir

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

-g имя группы

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

-m

Создает домашний каталог, если он не существует

оболочка

Определяет оболочку по умолчанию для этой учетной записи

-u идентификатор пользователя

Вы можете указать идентификатор пользователя для этой учетной записи

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

Фактическое имя учетной записи, которая будет создана

Если вы не укажете какой-либо параметр, система использует значения по умолчанию. Команда useradd изменяет файлы / etc / passwd , / etc / shadow и / etc / group и создает домашний каталог.

Ниже приведен пример создания учетной записи mcmohd с установкой его домашнего каталога на / home / mcmohd и группы в качестве разработчиков . Этому пользователю будет назначен Korn Shell.

$ useradd -d /home/mcmohd -g developers -s /bin/ksh mcmohd

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

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

$ passwd mcmohd20
Changing password for user mcmohd20.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.

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

Изменить аккаунт

Команда usermod позволяет вносить изменения в существующую учетную запись из командной строки. Он использует те же аргументы, что и команда useradd , плюс аргумент -l, который позволяет изменить имя учетной записи.

Например, чтобы изменить имя учетной записи mcmohd на mcmohd20 и соответственно изменить домашний каталог, вам нужно будет выполнить следующую команду —

$ usermod -d /home/mcmohd20 -m -l mcmohd mcmohd20

Удалить аккаунт

Команда userdel может использоваться для удаления существующего пользователя. Это очень опасная команда, если ее не использовать с осторожностью.

Для команды .r доступен только один аргумент или опция для удаления домашнего каталога учетной записи и почтового файла.

Например, чтобы удалить учетную запись mcmohd20 , введите следующую команду —

$ userdel -r mcmohd20

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