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

Материал из ALT Linux Wiki
Нет описания правки
Нет описания правки
Строка 9: Строка 9:
Пример:
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# useradd test1
# useradd buh1
</syntaxhighlight>
</syntaxhighlight>


Строка 20: Строка 20:
Пример:
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# useradd -M petr
# useradd -M buh1
</syntaxhighlight>
</syntaxhighlight>


Строка 29: Строка 29:
Пример:
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# useradd -N petr
# useradd -N buh1
</syntaxhighlight>
</syntaxhighlight>


Строка 38: Строка 38:
Пример:
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# useradd -p gfrgjhrkj petr
# useradd -p gfrgjhrkj buh1
</syntaxhighlight>
</syntaxhighlight>


Строка 47: Строка 47:
Пример:
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# useradd -d /opt/users/user petr
# useradd -d /opt/users/buh1 buh1
</syntaxhighlight>
</syntaxhighlight>


Строка 57: Строка 57:
*-e - создание пользователя с истекающим сроком действия аккаунта. Он задается опцией -e ГГГГ-ММ-ДД
*-e - создание пользователя с истекающим сроком действия аккаунта. Он задается опцией -e ГГГГ-ММ-ДД
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# useradd -e 2023-05-30 petr
# useradd -e 2023-05-30 buh1
</syntaxhighlight>
</syntaxhighlight>


Проверяем командой '''chage''':
Проверяем командой '''chage''':
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# chage -l petr
# chage -l buh1
</syntaxhighlight>
</syntaxhighlight>


Пример вывода:
Пример вывода:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# chage -l petr
# chage -l buh1
Последний раз пароль был изменён : мая 28, 2023
Последний раз пароль был изменён : мая 28, 2023
Срок действия пароля истекает : никогда
Срок действия пароля истекает : никогда
Строка 79: Строка 79:
*Устанавливаем срок действия пароля в течении 20-и дней,
*Устанавливаем срок действия пароля в течении 20-и дней,
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# chage -M 20 petr
# chage -M 20 buh1
</syntaxhighlight>
</syntaxhighlight>


Проверяем командой '''chage''':
Проверяем командой '''chage''':
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# chage -l petr
# chage -l buh1
</syntaxhighlight>
</syntaxhighlight>


Пример вывода:
Пример вывода:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# chage -l petr
# chage -l buh1
Последний раз пароль был изменён : мая 28, 2023
Последний раз пароль был изменён : мая 28, 2023
Срок действия пароля истекает : июн 17, 2023
Срок действия пароля истекает : июн 17, 2023
Строка 102: Строка 102:


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# useradd -c "Петрушка" petr
# useradd -c "Богомолова Ольга" buh1
</syntaxhighlight>
</syntaxhighlight>


При входе в систему у пользователя petr, вместо логина, будет отображаться имя "Петрушка"
При входе в систему у пользователя buh1, вместо логина, будет отображаться имя "Богомолова Ольга"


*-s Указание другой оболочки
*-s Указание другой оболочки
Строка 112: Строка 112:


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# useradd -s /bin/sh petr
# useradd -s /bin/sh buh1
</syntaxhighlight>
</syntaxhighlight>


Строка 118: Строка 118:


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# grep -E 'petr' /etc/passwd
# grep -E 'buh1' /etc/passwd
petr:x:1001:1001::/home/petr:/bin/sh
buh1:x:1001:1001::/home/buh1:/bin/sh
</syntaxhighlight>
</syntaxhighlight>


Строка 134: Строка 134:
Пример:
Пример:


Изменим имя пользователя petr на petr_admin,  
Изменим имя пользователя buh1 на buh3,  
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# usermod -l petr_admin petr
# usermod -l buh3 buh1
</syntaxhighlight>
</syntaxhighlight>


Строка 142: Строка 142:


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# id petr
# id buh1
id: petr: такого пользователя нет
id: buh1: такого пользователя нет
# id petr_admin
# id buh3
uid=1001(petr_admin) gid=1002(group_1) группы=1002(group_1),10(wheel),1003(group_2)
uid=1001(buh3) gid=1002(group_1) группы=1002(group_1),10(wheel),1003(group_2)
</syntaxhighlight>
</syntaxhighlight>


Строка 154: Строка 154:
Пример:
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# passwd test1
# passwd buh3
</syntaxhighlight>
</syntaxhighlight>


Строка 163: Строка 163:
Пример:
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# usermod -c "Тестировщик" test1
# usermod -c "Огурцова Татьяна" buh3
</syntaxhighlight>
</syntaxhighlight>
Проверяем:
Проверяем:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
$ grep -E 'test1' /etc/passwd
$ grep -E 'buh3' /etc/passwd
  test1:x:1001:1001:Тестировщик:/home/test1:/bin/bash
  test1:x:1001:1001:Огурцова Татьяна:/home/buh1:/bin/bash
</syntaxhighlight>
</syntaxhighlight>


Строка 178: Строка 178:
Пример:
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# usermod -d /opt/petr -m petr
# usermod -d /home/buh3 -m buh3
</syntaxhighlight>
</syntaxhighlight>
Проверяем:
Проверяем:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# grep -E 'petr' /etc/passwd
# grep -E 'buh3' /etc/passwd
petr:x:1001:1001:Имя Фамилия:/opt/petr:/bin/bash
buh1:x:1001:1001:Огурцова Татьяна:/home/buh3:/bin/bash
</syntaxhighlight>
</syntaxhighlight>


Строка 196: Строка 196:
Пример:
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# usermod -e 2024-12-31 petr
# usermod -e 2024-12-31 buh3
</syntaxhighlight>
</syntaxhighlight>


Строка 205: Строка 205:
Пример:
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# chage -l petr
# chage -l buh3
Последний раз пароль был изменён : мая 29, 2023
Последний раз пароль был изменён : мая 29, 2023
Срок действия пароля истекает : никогда
Срок действия пароля истекает : никогда
Строка 234: Строка 234:
Пример:
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# userdel test2
# userdel buh3
</syntaxhighlight>
</syntaxhighlight>


Строка 243: Строка 243:
Пример:
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# userdel -f test2
# userdel -f buh3
</syntaxhighlight>
</syntaxhighlight>


Строка 252: Строка 252:
Пример:
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# userdel -r test2
# userdel -r buh3
</syntaxhighlight>
</syntaxhighlight>
<!--====deluser====
<!--====deluser====
Строка 270: Строка 270:
Для блокировки аккаунта пользователя достаточно выполнить команду с опцией -L.
Для блокировки аккаунта пользователя достаточно выполнить команду с опцией -L.
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# usermod -L petr_admin
# usermod -L buh3
</syntaxhighlight>
</syntaxhighlight>
Проверяем:
Проверяем:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# grep -E 'petr_admin' /etc/shadow
# grep -E 'buh3' /etc/shadow
petr_admin:!$6$Xq90Qiae$lNbChGeX89upuE1vuXJtTXaC63Fddy.Xn8ebmuao9Fuid7xuJ66bMHYlWtlx6QIRltKtX1T5TYMKhyW1ZZXtQ/:17204:0:99999:7:::
buh3!$6$Xq90Qiae$lNbChGeX89upuE1vuXJtTXaC63Fddy.Xn8ebmuao9Fuid7xuJ66bMHYlWtlx6QIRltKtX1T5TYMKhyW1ZZXtQ/:17204:0:99999:7:::
</syntaxhighlight>
</syntaxhighlight>


Строка 283: Строка 283:
Для того чтобы разблокировать аккаунт пользователя, достаточно выполнить команду с опцией -U.
Для того чтобы разблокировать аккаунт пользователя, достаточно выполнить команду с опцией -U.
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# usermod -U petr_admin
# usermod -U buh3
</syntaxhighlight>
</syntaxhighlight>


Проверяем:
Проверяем:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# grep -E 'petr_admin' /etc/shadow
# grep -E 'buh3' /etc/shadow
petr_admin:$6$Xq90Qiae$lNbChGeX89upuE1vuXJtTXaC63Fddy.Xn8ebmuao9Fuid7xuJ66bMHYlWtlx6QIRltKtX1T5TYMKhyW1ZZXtQ/:17204:0:99999:7:::
buh1_admin:$6$Xq90Qiae$lNbChGeX89upuE1vuXJtTXaC63Fddy.Xn8ebmuao9Fuid7xuJ66bMHYlWtlx6QIRltKtX1T5TYMKhyW1ZZXtQ/:17204:0:99999:7:::
</syntaxhighlight>
</syntaxhighlight>


Строка 299: Строка 299:
Чтобы изменить командную оболочку пользователя (например, на /bin/bash, /bin/sh, /bin/zsh), нужно выполнить команду usermod с опцией -s.
Чтобы изменить командную оболочку пользователя (например, на /bin/bash, /bin/sh, /bin/zsh), нужно выполнить команду usermod с опцией -s.


Например, изменим пользовательскую оболочку для petr_admin с /bin/bash/ на /bin/sh/.
Например, изменим пользовательскую оболочку для buh3 с /bin/bash/ на /bin/sh/.


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# usermod -s /bin/sh petr_admin
# usermod -s /bin/sh buh3
</syntaxhighlight>
</syntaxhighlight>


Проверяем:
Проверяем:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# grep -E 'petr_admin' /etc/passwd
# grep -E 'buh3' /etc/passwd
petr_admin:x:1001:1002:Имя Фамилия:/opt/petr:/bin/sh
buh3:x:1001:1002:Огурцова Татьяна:/home/buh3:/bin/sh
</syntaxhighlight>
</syntaxhighlight>


Строка 315: Строка 315:


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# usermod -u 777 petr_admin
# usermod -u 777 buh3
</syntaxhighlight>
</syntaxhighlight>


Проверяем:
Проверяем:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# id petr_admin
# id buh3
uid=777(petr_admin) gid=1002(group_1) группы=1002(group_1),10(wheel),1003(group_2)
uid=777(buh3) gid=1002(group_1) группы=1002(group_1),10(wheel),1003(group_2)
</syntaxhighlight>
</syntaxhighlight>


Для изменения GID пользователя используется опция -g.
Для изменения GID пользователя используется опция -g.
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# usermod -g 777 petr_admin
# usermod -g 777 buh3
</syntaxhighlight>
</syntaxhighlight>


Проверяем:
Проверяем:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# id petr_admin
# id buh3
uid=777(petr_admin) gid=777(newgroup) группы=777(newgroup),10(wheel),1003(group_2)
uid=777(buh3) gid=777(newgroup) группы=777(newgroup),10(wheel),1003(group_2)
</syntaxhighlight>
</syntaxhighlight>


Строка 355: Строка 355:
Пример:
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# groups user
# groups buh3
</syntaxhighlight>
</syntaxhighlight>


Строка 364: Строка 364:
Пример:
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# usermod -g test sergiy
# usermod -g administratsiya buh3
</syntaxhighlight>
</syntaxhighlight>


Строка 373: Строка 373:
Пример:
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# usermod -a -G ntpd petr
# usermod -a -G secrdostup buh3
</syntaxhighlight>
</syntaxhighlight>


Строка 382: Строка 382:
Пример:
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# gpasswd -d user root
# gpasswd -d buh3 secrdostup
</syntaxhighlight>
</syntaxhighlight>


Строка 391: Строка 391:
Пример:
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# groupadd test
# groupadd secrdostup
</syntaxhighlight>
</syntaxhighlight>


Строка 400: Строка 400:
Пример:
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# groupdel user
# groupdel secrdostup
</syntaxhighlight>
</syntaxhighlight>


[[Категория:HOWTO]]
[[Категория:HOWTO]]

Версия от 10:04, 22 января 2024

Пользователи

Примечание: Для работы команды chage нужно установить пакет shadow-change

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

useradd

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

Пример:

# useradd buh1
Параметры
  • -M - не создавать домашний каталог
# useradd -M имя_пользователя

Пример:

# useradd -M buh1
  • -N - не создавать группу с тем же именем что и у пользователя
# useradd -N имя_пользователя

Пример:

# useradd -N buh1
  • -p - пароль
# useradd -p пароль имя_пользователя

Пример:

# useradd -p gfrgjhrkj buh1
  • -d - указание кастомного домашнего каталога
# useradd -d путь_к_новому_каталогу имя_пользователя

Пример:

# useradd -d /opt/users/buh1 buh1
  • --system - создание системного аккаунта без пароля и домашнего аккаунта
# useradd --system cassandra
  • -e - создание пользователя с истекающим сроком действия аккаунта. Он задается опцией -e ГГГГ-ММ-ДД
# useradd -e 2023-05-30 buh1

Проверяем командой chage:

# chage -l buh1

Пример вывода:

# chage -l buh1
Последний раз пароль был изменён				: мая 28, 2023
Срок действия пароля истекает					: никогда
Пароль будет деактивирован через				: никогда
Срок действия учётной записи истекает				: мая 30, 2023
Минимальное количество дней между сменой пароля			: -1
Максимальное количество дней между сменой пароля		: -1
Количество дней с предупреждением перед деактивацией пароля	: -1
  • Устанавливаем срок действия пароля в течении 20-и дней,
# chage -M 20 buh1

Проверяем командой chage:

# chage -l buh1

Пример вывода:

# chage -l buh1
Последний раз пароль был изменён				: мая 28, 2023
Срок действия пароля истекает					: июн 17, 2023
Пароль будет деактивирован через				: никогда
Срок действия учётной записи истекает				: мая 30, 2023
Минимальное количество дней между сменой пароля			: -1
Максимальное количество дней между сменой пароля		: 20
Количество дней с предупреждением перед деактивацией пароля	: -1
  • -c Указание отображаемого имени
# useradd -c "Богомолова Ольга" buh1

При входе в систему у пользователя buh1, вместо логина, будет отображаться имя "Богомолова Ольга"

  • -s Указание другой оболочки

Вместо bash мы можем установить пользователю другой командный интерпретатор (/bin/bash, /bin/sh, /bin/zsh).

# useradd -s /bin/sh buh1

Проверяем:

# grep -E 'buh1' /etc/passwd
buh1:x:1001:1001::/home/buh1:/bin/sh

adduser

adduser по командам аналогична useradd.

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

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

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

# usermod -l новое_имя старое_имя

Пример:

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

# usermod -l buh3 buh1

Проверяем:

# id buh1
id: buh1: такого пользователя нет
# id buh3
uid=1001(buh3) gid=1002(group_1) группы=1002(group_1),10(wheel),1003(group_2)

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

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

Пример:

# passwd buh3

Добавление/Изменение отображаемого имени

# usermod -c "Отображаемое имя" имя_пользователя

Пример:

# usermod -c "Огурцова Татьяна" buh3

Проверяем:

$ grep -E 'buh3' /etc/passwd
 test1:x:1001:1001:Огурцова Татьяна:/home/buh1:/bin/bash

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

Опция -d меняет каталог, а опция -m переносит в новый каталог все содержимое старого.

usermod -d новый_домашний_каталог -m имя_пользователя

Пример:

# usermod -d /home/buh3 -m buh3

Проверяем:

# grep -E 'buh3' /etc/passwd
buh1:x:1001:1001:Огурцова Татьяна:/home/buh3:/bin/bash

Установка даты истечения срока аккаунта

Пользователю можно назначить дату истечения действия аккаунта. Она задается опцией -e ГГГГ-ММ-ДД.

Примечание: Для работы chage нужно установить пакет shadow-change


# usermod -e срок_действия имя_пользователя

Пример:

# usermod -e 2024-12-31 buh3

Проверяем:

# chage -l имя_пользователя

Пример:

# chage -l buh3
Последний раз пароль был изменён				: мая 29, 2023
Срок действия пароля истекает					: никогда
Пароль будет деактивирован через				: никогда
Срок действия учётной записи истекает				: дек 31, 2024
Минимальное количество дней между сменой пароля			: -1
Максимальное количество дней между сменой пароля		: -1
Количество дней с предупреждением перед деактивацией пароля	: -1

Просмотреть список пользователей

Всех:

$ cat /etc/passwd

Только с домашней папкой в /home:

$ cat /etc/passwd | grep /home

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

userdel

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

Пример:

# userdel buh3
  • удалить залогиненого пользователя
# userdel -f имя_пользователя

Пример:

# userdel -f buh3
  • удалить домашний каталог и почтовый ящик
# userdel -r имя_пользователя

Пример:

# userdel -r buh3

Изменение командной оболочки пользователя

Чтобы изменить командную оболочку пользователя (например, на /bin/bash, /bin/sh, /bin/zsh), нужно выполнить команду usermod с опцией -s.

Например, изменим пользовательскую оболочку для buh3 с /bin/bash/ на /bin/sh/.

# usermod -s /bin/sh buh3

Проверяем:

# grep -E 'buh3' /etc/passwd
buh3:x:1001:1002:Огурцова Татьяна:/home/buh3:/bin/sh

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

Для изменения UID пользователя используется опция -u.

# usermod -u 777 buh3

Проверяем:

# id buh3
uid=777(buh3) gid=1002(group_1) группы=1002(group_1),10(wheel),1003(group_2)

Для изменения GID пользователя используется опция -g.

# usermod -g 777 buh3

Проверяем:

# id buh3
uid=777(buh3) gid=777(newgroup) группы=777(newgroup),10(wheel),1003(group_2)

Таким образом можно управлять пользователями и изменять их по своему усмотрению.

Группы

Просмотреть список групп

# cat /etc/group

Группы текущего пользователя

$ groups

Группы конкретного пользователя

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

Пример:

# groups buh3

Принудительно назначить первичную группу

# usermod -g группа имя_пользователя

Пример:

# usermod -g administratsiya buh3

Добавить в дополнительную группу

# usermod -a -G группа имя_пользователя

Пример:

# usermod -a -G secrdostup buh3

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

# gpasswd -d пользователь имя_руппы

Пример:

# gpasswd -d buh3 secrdostup

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

# groupadd имя_группы

Пример:

# groupadd secrdostup

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

# groupdel имя_группы

Пример:

# groupdel secrdostup