Управление пользователями: различия между версиями
Нет описания правки |
|||
Строка 6: | Строка 6: | ||
===Добавление нового пользователя=== | ===Добавление нового пользователя=== | ||
====useradd==== | ====useradd==== | ||
useradd test1 | <syntaxhighlight lang="bash"> | ||
# useradd test1 | |||
</syntaxhighlight> | |||
=====Параметры===== | =====Параметры===== | ||
-M - не создавать домашний каталог | *-M - не создавать домашний каталог | ||
*-N - не создавать группу с тем же именем что и у пользователя | |||
*-p - пароль | |||
- | <syntaxhighlight lang="bash"> | ||
# useradd -p gfrgjhrkj petr | |||
</syntaxhighlight> | |||
- | *-d - указание кастомного домашнего каталога | ||
useradd - | <syntaxhighlight lang="bash"> | ||
# useradd -d /opt/users/user techlist | |||
</syntaxhighlight> | |||
- | *-e - создание пользователя с истекающим сроком действия аккаунта | ||
useradd - | <syntaxhighlight lang="bash"> | ||
# useradd -e 2017-05-01 techlist | |||
</syntaxhighlight> | |||
- | Проверяем командой chage - пакет shadow-change | ||
<syntaxhighlight lang="bash"> | |||
# chage -l techlist | |||
</syntaxhighlight> | |||
Устанавливаем срок действия пароля в течении 20-и дней, | |||
<syntaxhighlight lang="bash"> | |||
chage -M 20 techlist | # chage -M 20 techlist | ||
</syntaxhighlight> | |||
Проверяем | Проверяем | ||
-c Указание отображаемого имени | <syntaxhighlight lang="bash"> | ||
useradd -c "Петрушка" petr | # chage -l techlist | ||
</syntaxhighlight> | |||
*-c Указание отображаемого имени | |||
<syntaxhighlight lang="bash"> | |||
# useradd -c "Петрушка" petr | |||
</syntaxhighlight> | |||
При входе в систему вместо petr у нас будет Петрушка | При входе в систему вместо petr у нас будет Петрушка | ||
-s Указание другой оболочки | *-s Указание другой оболочки | ||
useradd -s /sbin/sh techlist | |||
<syntaxhighlight lang="bash"> | |||
# useradd -s /sbin/sh techlist | |||
</syntaxhighlight> | |||
Проверяем | Проверяем | ||
grep -E 'techlist' /etc/passwd | |||
<syntaxhighlight lang="bash"> | |||
# grep -E 'techlist' /etc/passwd | |||
techlist:x:1001:1001::/home/techlist:/sbin/sh | techlist:x:1001:1001::/home/techlist:/sbin/sh | ||
</syntaxhighlight> | |||
====adduser==== | ====adduser==== | ||
adduser test1 | <syntaxhighlight lang="bash"> | ||
# adduser test1 | |||
</syntaxhighlight> | |||
===Изменение пользователя=== | ===Изменение пользователя=== | ||
Строка 55: | Строка 79: | ||
Существующему пользователю можно изменить имя, изменим имя пользователя techlist на techlist_admin, делается это опцией -l. | Существующему пользователю можно изменить имя, изменим имя пользователя techlist на techlist_admin, делается это опцией -l. | ||
<syntaxhighlight lang="bash"> | |||
# usermod -l techlist_admin techlist | |||
</syntaxhighlight> | |||
Проверяем | |||
<syntaxhighlight lang="bash"> | |||
# id techlist | |||
id: techlist: такого пользователя нет | |||
# id techlist_admin (а такой пользователь есть) | |||
uid=1001(techlist_admin) gid=1002(group_1) группы=1002(group_1),10(wheel),1003(group_2) | |||
</syntaxhighlight> | |||
====Изменение пароля пользователя==== | ====Изменение пароля пользователя==== | ||
passwd test1 | <syntaxhighlight lang="bash"> | ||
# passwd test1 | |||
</syntaxhighlight> | |||
====Добавление/Изменение отображаемого имени==== | ====Добавление/Изменение отображаемого имени==== | ||
<syntaxhighlight lang="bash"> | |||
# usermod -c "Тестировщик" test1 | |||
</syntaxhighlight> | |||
Проверяем | |||
<syntaxhighlight lang="bash"> | |||
$ grep -E 'test1' /etc/passwd | |||
test1:x:1001:1001:Тестировщик:/home/test1:/bin/bash | test1:x:1001:1001:Тестировщик:/home/test1:/bin/bash | ||
</syntaxhighlight> | |||
====Изменение домашнего каталога пользователя==== | ====Изменение домашнего каталога пользователя==== | ||
<syntaxhighlight lang="bash"> | |||
# usermod -d /opt/techlist -m techlist | |||
</syntaxhighlight> | |||
Проверяем | |||
<syntaxhighlight lang="bash"> | |||
# grep -E 'techlist' /etc/passwd | |||
techlist:x:1001:1001:Имя Фамилия:/opt/techlist:/bin/bash | |||
</syntaxhighlight> | |||
====Установка даты истечения срока аккаунта==== | ====Установка даты истечения срока аккаунта==== | ||
Назначим дату истечения действия аккаунта, аккаунт будет действовать до 2017-05-01, дата задается опцией -e. | Назначим дату истечения действия аккаунта, аккаунт будет действовать до 2017-05-01, дата задается опцией -e. | ||
Для работы chage нужно установить пакет shadow-change | |||
<syntaxhighlight lang="bash"> | |||
usermod -e 2017-05-01 techlist | |||
</syntaxhighlight> | |||
Проверяем | |||
<syntaxhighlight lang="bash"> | |||
chage -l techlist | |||
Последний раз пароль был изменён : фев 07, 2017 | |||
Срок действия пароля истекает : никогда | |||
Пароль будет деактивирован через : никогда | |||
Срок действия учётной записи истекает : май 01, 2017 | |||
Минимальное количество дней между сменой пароля : 0 | |||
Максимальное количество дней между сменой пароля : 99999 | |||
Количество дней с предупреждением перед деактивацией пароля : 7 | |||
</syntaxhighlight> | |||
===Просмотреть список пользователей=== | ===Просмотреть список пользователей=== | ||
Всех | Всех | ||
<syntaxhighlight lang="bash"> | |||
cat /etc/passwd | cat /etc/passwd | ||
</syntaxhighlight> | |||
cat /etc/passwd | grep /home | Только с домашней папкой в /home: | ||
<syntaxhighlight lang="bash"> | |||
# cat /etc/passwd | grep /home | |||
</syntaxhighlight> | |||
===Смена имени пользователя=== | ===Смена имени пользователя=== | ||
с | с тест1 на тест2 | ||
usermod -l test2 test1 | <syntaxhighlight lang="bash"> | ||
# usermod -l test2 test1 | |||
</syntaxhighlight> | |||
===Удаление пользователя=== | ===Удаление пользователя=== | ||
userdel -f test2 - | ====userdel==== | ||
<syntaxhighlight lang="bash"> | |||
# userdel test2 | |||
</syntaxhighlight> | |||
удалить залогиненого пользователя | |||
<syntaxhighlight lang="bash"> | |||
# userdel -f test2 | |||
</syntaxhighlight> | |||
удалить домашний каталог и почтовый ящик | |||
<syntaxhighlight lang="bash"> | |||
# userdel -r test2 | |||
</syntaxhighlight> | |||
====deluser==== | |||
<syntaxhighlight lang="bash"> | |||
# deluser test2 | |||
</syntaxhighlight> | |||
* --remove-home удалить домашний каталог пользователя | |||
и почтовый ящик | и почтовый ящик | ||
* --remove-all-files удалить все файлы принадлежащие пользователю | |||
* --backup сделать резервные копии файлов перед удалением. | |||
* --backup-to <КАТ> каталог для резервных копий файлов. | |||
По умолчанию используется текущий каталог. | По умолчанию используется текущий каталог. | ||
* --system удалить только если учётная запись системная | |||
===Блокировка аккаунта пользователя=== | ===Блокировка аккаунта пользователя=== | ||
Для блокировки аккаунта пользователя достаточно выполнить команду с опцией -L. | Для блокировки аккаунта пользователя достаточно выполнить команду с опцией -L. | ||
<syntaxhighlight lang="bash"> | |||
# usermod -L techlist_admin | |||
</syntaxhighlight> | |||
Проверяем | Проверяем | ||
<syntaxhighlight lang="bash"> | |||
# grep -E 'techlist_admin' /etc/shadow | |||
techlist_admin:!$6$Xq90Qiae$lNbChGeX89upuE1vuXJtTXaC63Fddy.Xn8ebmuao9Fuid7xuJ66bMHYlWtlx6QIRltKtX1T5TYMKhyW1ZZXtQ/:17204:0:99999:7::: | |||
</syntaxhighlight> | |||
Если перед зашифрованным паролем отображается восклицательный знак это значит что пользователь заблокирован. | |||
=== Разблокировка аккаунта пользователя=== | === Разблокировка аккаунта пользователя=== | ||
Для того чтобы разблокировать аккаунт пользователя, достаточно выполнить команду с опцией -U. | |||
<syntaxhighlight lang="bash"> | |||
# usermod -U techlist_admin | |||
</syntaxhighlight> | |||
Проверяем | |||
<syntaxhighlight lang="bash"> | |||
# grep -E 'techlist_admin' /etc/shadow | |||
techlist_admin:$6$Xq90Qiae$lNbChGeX89upuE1vuXJtTXaC63Fddy.Xn8ebmuao9Fuid7xuJ66bMHYlWtlx6QIRltKtX1T5TYMKhyW1ZZXtQ/:17204:0:99999:7::: | |||
</syntaxhighlight> | |||
Восклицательного знака нет, значит пользователь разблокирован. | |||
Изменение командной оболочки пользователя | === Изменение командной оболочки пользователя === | ||
Чтобы изменить командную оболочку пользователя, надо выполнить следующую команду с опцией -s. Изменим пользовательскую оболочку для techlist_admin с /bin/bash/ на /bin/sh/. | Чтобы изменить командную оболочку пользователя, надо выполнить следующую команду с опцией -s. Изменим пользовательскую оболочку для techlist_admin с /bin/bash/ на /bin/sh/. | ||
<syntaxhighlight lang="bash"> | |||
# usermod -s /bin/sh techlist_admin | |||
</syntaxhighlight> | |||
Проверяем | |||
<syntaxhighlight lang="bash"> | |||
# grep -E 'techlist_admin' /etc/passwd | |||
techlist_admin:x:1001:1002:Имя Фамилия:/opt/techlist:/bin/sh | |||
</syntaxhighlight> | |||
===Изменение UID и GID пользователя=== | ===Изменение UID и GID пользователя=== | ||
Для изменения UID пользователя используется опция -u. | |||
<syntaxhighlight lang="bash"> | |||
# usermod -u 777 techlist_admin | |||
</syntaxhighlight> | |||
Проверяем | |||
<syntaxhighlight lang="bash"> | |||
# id techlist_admin | |||
uid=777(techlist_admin) gid=1002(group_1) группы=1002(group_1),10(wheel),1003(group_2) | |||
</syntaxhighlight> | |||
===Для изменения GID пользователя используется опция -g.=== | ===Для изменения GID пользователя используется опция -g.=== | ||
<syntaxhighlight lang="bash"> | |||
# usermod -g 777 techlist_admin | |||
</syntaxhighlight> | |||
Проверяем | |||
<syntaxhighlight lang="bash"> | |||
# id techlist_admin | |||
uid=777(techlist_admin) gid=777(newgroup) группы=777(newgroup),10(wheel),1003(group_2) | |||
</syntaxhighlight> | |||
Таким образом можно управлять пользователями и изменять их по своему усмотрению. | Таким образом можно управлять пользователями и изменять их по своему усмотрению. | ||
Строка 171: | Строка 256: | ||
===Просмотреть список групп=== | ===Просмотреть список групп=== | ||
cat /etc/group | <syntaxhighlight lang="bash"> | ||
# cat /etc/group | |||
</syntaxhighlight> | |||
===Группы текущего пользователя=== | ===Группы текущего пользователя=== | ||
groups | <syntaxhighlight lang="bash"> | ||
$ groups | |||
</syntaxhighlight> | |||
===Группы конкретного пользователя=== | ===Группы конкретного пользователя=== | ||
<syntaxhighlight lang="bash"> | |||
groups user | # groups user | ||
</syntaxhighlight> | |||
===Добавить пользователя в дополнительную группу=== | ===Добавить пользователя в дополнительную группу=== | ||
usermod -G -a <имя_группы> <имя_пользователя> | <syntaxhighlight lang="bash"> | ||
# usermod -G -a <имя_группы> <имя_пользователя> | |||
</syntaxhighlight> | |||
===Добавить пользователя в основную группу=== | ===Добавить пользователя в основную группу=== | ||
<syntaxhighlight lang="bash"> | |||
usermod -g test sergiy | # usermod -g test sergiy | ||
</syntaxhighlight> | |||
===Удалить из группы=== | ===Удалить из группы=== | ||
<syntaxhighlight lang="bash"> | |||
# usermod -G <группа_1>,<группа_2>,<группа_3> <пользователь> | |||
</syntaxhighlight> | |||
usermod -r группа пользователь | <syntaxhighlight lang="bash"> | ||
# usermod -r группа пользователь | |||
</syntaxhighlight> | |||
===Удаление группы=== | ===Удаление группы=== | ||
groupdel user | <syntaxhighlight lang="bash"> | ||
# groupdel user | |||
</syntaxhighlight> | |||
===Создание группы=== | ===Создание группы=== | ||
groupadd test | <syntaxhighlight lang="bash"> | ||
# groupadd test | |||
</syntaxhighlight> |
Версия от 10:41, 28 мая 2023
Пользователи
Добавление нового пользователя
useradd
# useradd test1
Параметры
- -M - не создавать домашний каталог
- -N - не создавать группу с тем же именем что и у пользователя
- -p - пароль
# useradd -p gfrgjhrkj petr
- -d - указание кастомного домашнего каталога
# useradd -d /opt/users/user techlist
- -e - создание пользователя с истекающим сроком действия аккаунта
# useradd -e 2017-05-01 techlist
Проверяем командой chage - пакет shadow-change
# chage -l techlist
Устанавливаем срок действия пароля в течении 20-и дней,
# chage -M 20 techlist
Проверяем
# chage -l techlist
- -c Указание отображаемого имени
# useradd -c "Петрушка" petr
При входе в систему вместо petr у нас будет Петрушка
- -s Указание другой оболочки
# useradd -s /sbin/sh techlist
Проверяем
# grep -E 'techlist' /etc/passwd
techlist:x:1001:1001::/home/techlist:/sbin/sh
adduser
# adduser test1
Изменение пользователя
Изменение имени пользователя
Существующему пользователю можно изменить имя, изменим имя пользователя techlist на techlist_admin, делается это опцией -l.
# usermod -l techlist_admin techlist
Проверяем
# id techlist
id: techlist: такого пользователя нет
# id techlist_admin (а такой пользователь есть)
uid=1001(techlist_admin) gid=1002(group_1) группы=1002(group_1),10(wheel),1003(group_2)
Изменение пароля пользователя
# passwd test1
Добавление/Изменение отображаемого имени
# usermod -c "Тестировщик" test1
Проверяем
$ grep -E 'test1' /etc/passwd
test1:x:1001:1001:Тестировщик:/home/test1:/bin/bash
Изменение домашнего каталога пользователя
# usermod -d /opt/techlist -m techlist
Проверяем
# grep -E 'techlist' /etc/passwd
techlist:x:1001:1001:Имя Фамилия:/opt/techlist:/bin/bash
Установка даты истечения срока аккаунта
Назначим дату истечения действия аккаунта, аккаунт будет действовать до 2017-05-01, дата задается опцией -e.
Для работы chage нужно установить пакет shadow-change
usermod -e 2017-05-01 techlist
Проверяем
chage -l techlist
Последний раз пароль был изменён : фев 07, 2017
Срок действия пароля истекает : никогда
Пароль будет деактивирован через : никогда
Срок действия учётной записи истекает : май 01, 2017
Минимальное количество дней между сменой пароля : 0
Максимальное количество дней между сменой пароля : 99999
Количество дней с предупреждением перед деактивацией пароля : 7
Просмотреть список пользователей
Всех
cat /etc/passwd
Только с домашней папкой в /home:
# cat /etc/passwd | grep /home
Смена имени пользователя
с тест1 на тест2
# usermod -l test2 test1
Удаление пользователя
userdel
# userdel test2
удалить залогиненого пользователя
# userdel -f test2
удалить домашний каталог и почтовый ящик
# userdel -r test2
deluser
# deluser test2
- --remove-home удалить домашний каталог пользователя
и почтовый ящик
- --remove-all-files удалить все файлы принадлежащие пользователю
- --backup сделать резервные копии файлов перед удалением.
- --backup-to <КАТ> каталог для резервных копий файлов.
По умолчанию используется текущий каталог.
- --system удалить только если учётная запись системная
Блокировка аккаунта пользователя
Для блокировки аккаунта пользователя достаточно выполнить команду с опцией -L.
# usermod -L techlist_admin
Проверяем
# grep -E 'techlist_admin' /etc/shadow
techlist_admin:!$6$Xq90Qiae$lNbChGeX89upuE1vuXJtTXaC63Fddy.Xn8ebmuao9Fuid7xuJ66bMHYlWtlx6QIRltKtX1T5TYMKhyW1ZZXtQ/:17204:0:99999:7:::
Если перед зашифрованным паролем отображается восклицательный знак это значит что пользователь заблокирован.
Разблокировка аккаунта пользователя
Для того чтобы разблокировать аккаунт пользователя, достаточно выполнить команду с опцией -U.
# usermod -U techlist_admin
Проверяем
# grep -E 'techlist_admin' /etc/shadow
techlist_admin:$6$Xq90Qiae$lNbChGeX89upuE1vuXJtTXaC63Fddy.Xn8ebmuao9Fuid7xuJ66bMHYlWtlx6QIRltKtX1T5TYMKhyW1ZZXtQ/:17204:0:99999:7:::
Восклицательного знака нет, значит пользователь разблокирован.
Изменение командной оболочки пользователя
Чтобы изменить командную оболочку пользователя, надо выполнить следующую команду с опцией -s. Изменим пользовательскую оболочку для techlist_admin с /bin/bash/ на /bin/sh/.
# usermod -s /bin/sh techlist_admin
Проверяем
# grep -E 'techlist_admin' /etc/passwd
techlist_admin:x:1001:1002:Имя Фамилия:/opt/techlist:/bin/sh
Изменение UID и GID пользователя
Для изменения UID пользователя используется опция -u.
# usermod -u 777 techlist_admin
Проверяем
# id techlist_admin
uid=777(techlist_admin) gid=1002(group_1) группы=1002(group_1),10(wheel),1003(group_2)
Для изменения GID пользователя используется опция -g.
# usermod -g 777 techlist_admin
Проверяем
# id techlist_admin
uid=777(techlist_admin) gid=777(newgroup) группы=777(newgroup),10(wheel),1003(group_2)
Таким образом можно управлять пользователями и изменять их по своему усмотрению.
Группы
Просмотреть список групп
# cat /etc/group
Группы текущего пользователя
$ groups
Группы конкретного пользователя
# groups user
Добавить пользователя в дополнительную группу
# usermod -G -a <имя_группы> <имя_пользователя>
Добавить пользователя в основную группу
# usermod -g test sergiy
Удалить из группы
# usermod -G <группа_1>,<группа_2>,<группа_3> <пользователь>
# usermod -r группа пользователь
Удаление группы
# groupdel user
Создание группы
# groupadd test