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

Команда useradd

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

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

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

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

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

Чтобы просто создать пользователя используется команда useradd без каких-либо опций. Указывается только имя пользователя.

Данная команда создает нового пользователя с системными параметрами по умолчанию, которые прописаны в файле /etc/default/useradd

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

Создание нового пользователя с домашней директорией в /home

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

Домашняя директория создается по умолчанию в каталоге /home. Имя директории совпадает с именем пользователя.

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

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

Создаем домашнюю директорию для будущего пользователя:

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

Создаем пользователя и указываем домашнюю директорию:

Меняем права доступа у домашней директории:

Задаем пароль для пользователя:

Можно просмотреть информацию о пользователе, которая сохранена в файле /etc/passwd

Создание нового пользователя с произвольными UID, GID

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

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

Создание пользователя с указанием оболочки (shell)

По умолчанию новые пользователи создаются с оболочкой /bin/sh Чтобы задать другую оболочку, используется опция -s /путь/до/оболочки

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

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

Команда useradd

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

Чтобы использовать команду и создавать новых пользователей, вам необходимо войти в систему как root или как пользователь с доступом sudo.

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

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

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

Как удалить пользователей

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

Для полноценного удаления пользователя желательно выполнить все представленные ниже шаги.

#Шаг 1: Удаление прав пользователя

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

Например если удаленный пользователь имел права root, то найдите и удалите запись:

#Шаг 2: Найти и удалить все процессы пользователя

Узнаем идентификаторы процессов, которые были запущены пользователем.

Узнаем название запущенных процессов по их идентификаторам.

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

Если у вас не оказалось команды , то установите пакет psmisc с помощью yum.

#Шаг 3: Сохранение файлов пользователя (back up)

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

Создание

Синтаксис:

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

* опции не являются обязательными при создании пользователя.

Пример:

useradd dmosk

* в данном примере создается учетная запись dmosk.

Для учетной записи стоит сразу создать пароль:

passwd dmosk

* после ввода, система попросит ввести пароль дважды.

Ключи (опции)

Ключ Описание и примеры
-b Задает базовый каталог для домашнего каталогаuseradd dmosk -b /var/home
-c Создает комментарий для описания учетной записиuseradd dmosk -c «Пользователя для управления системой»
-d Полный путь к домашнему каталогу пользователяuseradd dmosk -d /home/newuser
-D Позволяет показать или изменить настройки по умолчанию, которые будут применяться при последующем создании пользователейuseradd dmosk -Ds /bin/bash
-e Дата, после которой учетная запись устареет.useradd dmosk -e 2017-12-31
-f Число дней, после которого учетная запись с устаревшим паролем будет заблокированаuseradd dmosk -f 0
-g Задает основную группуuseradd dmosk -g altternativegroup
-G Задает дополнительные группыuseradd dmosk -G wheel
-k Путь к источнику скелета (файлы с шаблонами для нового пользователя)useradd dmosk -k /var/skel
-m При создании пользователя создать домашний каталогuseradd dmosk -m
-M Не создавать домашний каталогuseradd dmosk -M
-N Не создавать основную группу с таким же именем, как у пользователяuseradd dmosk -N
-o Разрешает создание учетной записи с повторяющимся UIDuseradd dmosk -u 15 -o
-p Задает парольuseradd dmosk -p pass
-r Системная учетная запись (без домашнего каталога и с идентификаторами в диапазоне SYS_UID_MIN — SYS_UID_MAX из файла /etc/login.defs)useradd dmosk -r
-R Каталог, в который выполняется chrootuseradd dmosk -R /var/chroot/home
-s Путь до оболочки командной строкиuseradd dmosk -s /bin/csh
-u Задает UIDuseradd dmosk -u 666
-U Имя группы будет таким же, как у пользователяuseradd dmosk -U

Актуальный список ключей можно получить командой useradd -h.

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

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

Блокировка пользователя

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

Блокировку пользователя мы рассматривали выше.

usermod -L techlist

Убить все пользовательские процессы

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

pgrep -u techlist
1556
1558
1584
1585

Узнаем что это за процессы используя их pid.

ps -f --pid $(pgrep -u techlist)
UID        PID  PPID  C STIME TTY      STAT   TIME CMD
techlist  1556     1  0 06:21 ?        Ss     0:00 /lib/systemd/systemd --user
techlist  1558  1556  0 06:21 ?        S      0:00 (sd-pam)
techlist  1584  1554  0 06:21 ?        S      0:00 sshd: techlist@pts/3
techlist  1585  1584  0 06:21 pts/3    Ss+    0:00 -bash

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

killall -9 -u techlist

-9 - отправить сигнал завершения процессам
-u - задает пользователя

Для выполнения данной команды в системе должен быть установлен пакет psmisc

debian & ubuntu
apt-get install psmisc -y

centos и пр.
yum install psmisk -y

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

userdel -r techlist

deluser --remove-home techlist

--remove-home - указан для удаления домашнего каталога пользователя
или в /etc/deluser.conf изменить значение REMOVE_HOME = 0 на 1 REMOVE_HOME = 1

Получите список всех пользователей с помощью файла /etc/passwd

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

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

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

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

Sudo и su

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

Программа su служит для выполнения от имени указанного пользователя (по умолчанию — root) указанной команды/программы (по умолчанию — той программы, что определена в качестве оболочки (shell) для указанного пользователя) и запрашивает она пароль указанного пользователя.

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

  • Нет «программы по умолчанию». для запуска оболочки, определённой для указанного пользователя, надо передать программе опцию -i.
  • По умолчанию запрашивается не пароль указанного пользователя, а пароль пользователя, выполняющего программу sudo. какому пользователю, какие программы и от чьего имени можно запускать, определяется содержимым конфигурационного файла (редактируется с помощью программы visudo).

Общие понятия:

У каждого объекта в Linux есть свой идентификатор, а так же права доступа, применяемые к данному идентификатору. Идентификатор есть у пользователя — UID, у группы — GID, у файла — inod. Собственно inode является, как идентификатором файла/каталога, так и сущностью, которая содержит в себе информацию о файле/каталоге. Например такую, как: принадлежность к владельцу/группе, тип файла и права доступа к файлу.

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

Print-server:/# ls -li
итого 50
22089 drwxr-xr-x  2 root root  3072 Ноя 15 14:15 bin
32129 drwxr-xr-x  3 root root  1024 Окт  1 18:03 boot
12 lrwxrwxrwx  1 root root    11 Окт  1 15:36 cdrom -> media/cdrom
557 drwxr-xr-x 13 root root  3340 Ноя 17 06:25 dev
30121 drwxr-xr-x 50 root root  4096 Ноя 15 14:46 etc
....

Из вывода команды видно (рассмотрим первую строку):

22089

это есть номер inode

drwxr-xr-x

это есть те самые права доступа и тип файла (об этом ниже)

2

количество жестких ссылок на файл

root

имя владельца файла

root

имя группы владельца файла

3072

размер файла

Ноя 15 14:15

дата создания файла

bin

имя файла/каталога

Для каждого объекта файловой системы в модели полномочий Linux есть три типа полномочий: полномочия чтения (r от read), записи (w от write) и выполнения (x от execution). В полномочия записи входят также возможности удаления и изменения объекта.  Право выполнения можно установить для любого файла. Потенциально, любой файл в системе можно запустить на выполнение, как программу в Windows. В Linux является ли файл исполняемым или нет, определяется не по его расширению, а по правам доступа. Кроме того, эти полномочия указываются отдельно для владельца файла, членов группы файла и для всех остальных.

Собрав вышесказанное в кучу, то есть представив 3 правила (rwx) для трех групп (владелец, группа, остальные) запись прав доступа будет выглядеть вот так: rwx rwx rwx(то есть владельцу разрешено чтение, выполнение и запись, группе разрешено то же самое и остальным). Рассмотрев права на папку /bin в выше приведенном листинге, можно представить такую картину:

drwxr-xr-x+
||||||||||+наличие дополнительных прав (ACL)
|||||||||+-исполнение для всех остальных - разрешено
||||||||+--запись для всех остальных - НЕ разрешено
|||||||+---чтение для всех остальных - разрешено
||||||+----исполнение для группы владельца - разрешено
|||||+-----запись для группы владельца - НЕ разрешено
||||+------чтение для группы владельца - разрешено
|||+-------исполнение для владельца - разрешено
||+--------запись для владельца - разрешено
|+---------чтение для владельца - разрешено
+----------тип файла (об этом ниже...)

Кроме указанного представления полномочий доступа (символьного), существует так же и числовое представление. Для общего понимания, приведу таблицу соответствия числового (двоичного и десятичного) значения прав доступа и буквенного:

владелец группа остальные
буквенное rwx r-x r—
числовое (десятичное) 421 401 400
итоговое 7 5 4

В приведенной таблице показано, что право чтения, соответствует значению 4, право записи — 2, право выполнения — 1, отсутствие права — 0, складывая данные показатели, можно представлять и назначать права в числовом виде. Для примера, права rwx r-x r— будут соответствовать значению 754, потому что: rwx (4+2+1=7) r-x (4+0+1=5) r— (4+0+0=4).  Так же, довольно распространена комбинация rw- (4+2+0=6). Думаю данный пример достаточно нагляден.

Создание пользователя с определенным идентификатором пользователя

В Linux и Unix-подобных операционных системах пользователи идентифицируются по уникальному UID и имени пользователя.

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

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

Используйте параметр ( ), чтобы создать пользователя с определенным UID. Например, чтобы создать нового пользователя с именем с UID вы должны набрать:

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

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

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

  • Команда — это зарезервированное слово, «приказ» системе выполнить то или иное действие.
  • Ключ — под ключом мы имеем ввиду некий переключатель, используемый в команде и расширяющий ее возможности. Ключ может принимать значение, а может и не принимать.
  • Аргумент или значение ключа — это некий логический набор данных, который обрабатывается командой.

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

Назначение домашнего каталога по умолчанию, блокировка учетной записи по истечении указанной даты, добавление пользователя в другие группы, создание пользователя без GUI и домашней папки, смена папки с конфигурационными файлами пользователя и назначение ему уникального ID и шелла — всё это и многое другое можно сделать с помощью терминала.

Добавляется новый пользователь в Ubuntu командой useradd имя-юзера. Перед выполнением команды мы запрашиваем разрешение у root, поэтому вначале ставим sudo. Если вы хотите в рамках сессии постоянно работать с правами суперпользователя, выполните sudo su -. Если увидите на скриншотах такую конструкцию, это значит мы переключились в режим root.

При выполнении команды useradd автоматически будет создана новая группа и домашняя папка юзера. В процессе система попросит придумать и ввести для нового пользователя пароль и указать дополнительные сведения, которые, в отличие от пароля, можно проигнорировать. Это будет самый обычный пользователь с домашней папкой в каталоге /home и командной строкой bash. Получить базовые сведения о пользователе можно командой id имя-юзера. Для примера мы только что создали нового пользователя ludos и вывели командой id ludos о нём сведения. В результате получили строку из трех частей.

  1. uid — это идентификатор пользователя.
  2. gid — идентификатор его группы (по умолчанию равен ID юзера).
  3. группы — перечень групп, в которые входит пользователь.

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

Да очень просто: используя ключи -o, -u, -g и -s Первый ключ разрешает создание пользователя с неуникальным ID, второй назначает ему идентификатор пользователя, а третий — идентификатор группы, которые совпадают с идентификаторами рута (0). Четвёртый ключ назначает командную оболочку. Сама же команда будет выглядеть следующим образом, где newroot — новый рутовый пользователь.

useradd -o -u 0 -g 0 -s /bin/bash newroot

Только вот делать так не рекомендуем.

Во-первых, этот дубль-root не отображается на экране входа в систему (нужно нажать «нет в списке» и ввести его имя и пароль), не отображается он и в графической утилите управления пользователями. Во-вторых, у вас могут возникнуть проблемы с его удалением. Ubuntu советует использовать для удаления рутового пользователя ключ —force, но когда мы выполняем команду удаления deluser —force newroot, система сообщает об ошибке из-за использования newroot процесса с ID 1, принадлежащего пользователю root! То есть newroot стал как-бы зеркалом рута.

Типы пользователей

В ОС Linux существует три типа пользователей:

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

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

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

Каждый пользователь помимо имени имеет числовой идентификатор пользователя UID (User IDentificator). Пользователь root имеет идентификатор 0. Системные пользователи имеют идентификаторы от 1 до 100. Обычные пользователи имеют UID от 100.

Пользователи могут объединяться в группы. Каждый пользователь обязательно входит в ту или иную группу. Группы имеют числовой идентификатор группы GID (Group IDentificator).

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

Просмотр

Вся информация о пользователях хранится в файле .

Каждый аккаунт занимает одну строку, в формате

  • — имя пользователя.
  • — зашифрованный пароль пользователя.
  • — идентификационный номер пользователя.
  • — идентификационный номер основной группы пользователя.
  • — необязательное поле, используемое для указания дополнительной информации о пользователе (например, полное имя пользователя).
  • — домашний каталог ($HOME) пользователя.
  • — командный интерпретатор пользователя (обычно /bin/sh).

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

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

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

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

Ключи:

  • Базовый каталог. Это каталог, в котором будет создана домашняя папка пользователя. По умолчанию /home.
  • Комментарий. В нем вы можете напечатать любой текст.
  • Название домашнего каталога. По умолчанию название совпадает с именем создаваемого пользователя.
  • Дата, после которой пользователь будет отключен. Задается в формате ГГГГ-ММ-ДД. По умолчанию отключено.
  • Количество дней, которые должны пройти после устаревания пароля до блокировки пользователя, если пароль не будет изменен (период неактивности). Если значение равно 0, то запись блокируется сразу после устаревания пароля, при -1 — не блокируется. По умолчанию -1.
  • Первичная группа пользователя. Можно указывать как GID, так и имя группы. Если параметр не задан будет создана новая группа название которой совпадает с именем пользователя.
  • Список вторичных групп в которых будет находится создаваемый пользователь
  • Каталог шаблонов. Файлы и папки из этого каталога будут помещены в домашнюю папку пользователя. По умолчанию /etc/skel.
  • Ключ, указывающий, что необходимо создать домашнюю папку. По умолчанию домашняя папка не создается.
  • Зашифрованный пароль пользователя. По умолчанию пароль не задается, но учетная пользователь будет заблокирован до установки пароля.
  • Оболочка, используемая пользователем. По умолчанию /bin/sh.
  • Вручную задать UID пользователю.

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

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

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

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

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

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

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

  • Удалить пароль пользователю. После этого пароль будет пустым, и пользователь сможет входить в систему без предъявления пароля.
  • Сделать пароль устаревшим. Это заставит пользователя изменить пароль при следующем входе в систему.
  • Заблокировать учетную запись пользователя по прошествии указанного количества дней после устаревания пароля.
  • Минимальное количество дней между сменами пароля.
  • Максимальное количество дней, после которого необходимо обязательно сменить пароль.
  • Заблокировать учетную запись пользователя.
  • Разблокировать учетную запись пользователя.

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

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

или

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

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

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

Пример использования:

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

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

Войдите в систему как пользователь root и создайте нового пользователя с помощью команды:

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

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

После этого команда предложит подтвердить указанную информацию о пользователе. Чтобы продолжить, введите Y. В целом этот процесс выглядит так:

Room Number []: 123

Work Phone []: 123-123-123

Home Phone []:
Other []:
Is the information correct? [Y/n] y

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

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Ваша ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: