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

Материал из ALT Linux Wiki
Нет описания правки
Строка 6: Строка 6:
===Добавление нового пользователя===
===Добавление нового пользователя===
====useradd====
====useradd====
useradd test1
<syntaxhighlight lang="bash">
 
# useradd test1
</syntaxhighlight>
=====Параметры=====
=====Параметры=====
-M - не создавать домашний каталог
*-M - не создавать домашний каталог
*-N - не создавать группу с тем же именем что и у пользователя
*-p - пароль


-N - не создавать группу с тем же именем что и у пользователя
<syntaxhighlight lang="bash">
# useradd -p gfrgjhrkj petr
</syntaxhighlight>


-p - пароль
*-d - указание кастомного домашнего каталога


useradd -p gfrgjhrkj petr
<syntaxhighlight lang="bash">
# useradd -d /opt/users/user techlist
</syntaxhighlight>


-d - указание кастомного домашнего каталога
*-e - создание пользователя с истекающим сроком действия аккаунта


useradd -d /opt/users/user techlist
<syntaxhighlight lang="bash">
# useradd -e 2017-05-01 techlist
</syntaxhighlight>


-e - создание пользователя с истекающим сроком действия аккаунта
Проверяем командой chage - пакет shadow-change


useradd -e 2017-05-01 techlist
<syntaxhighlight lang="bash">
# chage -l techlist
</syntaxhighlight>


Проверяем командой chage - пакет shadow-change
Устанавливаем срок действия пароля в течении 20-и дней,
chage -l techlist


Устанавливаем срок действия пароля в течении 20-и дней,
<syntaxhighlight lang="bash">
chage -M 20 techlist
# chage -M 20 techlist
</syntaxhighlight>


Проверяем
Проверяем
chage -l techlist


-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.


    usermod -l techlist_admin techlist
<syntaxhighlight lang="bash">
    Проверяем
# usermod -l techlist_admin techlist
    id techlist
</syntaxhighlight>
    id: techlist: такого пользователя нет
 
    id techlist_admin (а такой пользователь есть)
Проверяем
    uid=1001(techlist_admin) gid=1002(group_1) группы=1002(group_1),10(wheel),1003(group_2)
 
<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>


====Добавление/Изменение отображаемого имени====
====Добавление/Изменение отображаемого имени====
usermod -c "Тестировщик" test1   Проверяем
<syntaxhighlight lang="bash">
grep -E 'test1' /etc/passwd
# 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>


====Изменение домашнего каталога пользователя====
====Изменение домашнего каталога пользователя====
    usermod -d /opt/techlist -m techlist
<syntaxhighlight lang="bash">
    Проверяем
# usermod -d /opt/techlist -m techlist
    grep -E 'techlist' /etc/passwd
</syntaxhighlight>
    techlist:x:1001:1001:Имя Фамилия:/opt/techlist:/bin/bash
Проверяем
 
<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>


  Для работы chage нужно установить пакет shadow-change
Проверяем
 
<syntaxhighlight lang="bash">
    usermod -e 2017-05-01 techlist
chage -l techlist
    Проверяем
Последний раз пароль был изменён : фев 07, 2017
    chage -l techlist
Срок действия пароля истекает : никогда
    Последний раз пароль был изменён : фев 07, 2017
Пароль будет деактивирован через : никогда
    Срок действия пароля истекает : никогда
Срок действия учётной записи истекает : май 01, 2017
    Пароль будет деактивирован через : никогда
Минимальное количество дней между сменой пароля         : 0
    Срок действия учётной записи истекает : май 01, 2017
Максимальное количество дней между сменой пароля : 99999
    Минимальное количество дней между сменой пароля         : 0
Количество дней с предупреждением перед деактивацией пароля : 7
    Максимальное количество дней между сменой пароля : 99999
</syntaxhighlight>
    Количество дней с предупреждением перед деактивацией пароля : 7


===Просмотреть список пользователей===
===Просмотреть список пользователей===
Всех
Всех
<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>


===Смена имени пользователя===
===Смена имени пользователя===
с тестй на тест2
с тест1 на тест2
usermod -l test2 test1
<syntaxhighlight lang="bash">
# usermod -l test2 test1
</syntaxhighlight>


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


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====


userdel -r test2 - удалить домашни каталог и почтовый ящик
<syntaxhighlight lang="bash">
# deluser test2
</syntaxhighlight>


deluser test2
--remove-home            удалить домашний каталог пользователя
  --remove-home            удалить домашний каталог пользователя
                             и почтовый ящик
                             и почтовый ящик
  --remove-all-files        удалить все файлы принадлежащие пользователю
--remove-all-files        удалить все файлы принадлежащие пользователю
  --backup                  сделать резервные копии файлов перед удалением.
--backup                  сделать резервные копии файлов перед удалением.
  --backup-to <КАТ>        каталог для резервных копий файлов.
--backup-to <КАТ>        каталог для резервных копий файлов.
                             По умолчанию используется текущий каталог.
                             По умолчанию используется текущий каталог.
  --system                  удалить только если учётная запись системная
--system                  удалить только если учётная запись системная


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


Для блокировки аккаунта пользователя достаточно выполнить команду с опцией -L.
Для блокировки аккаунта пользователя достаточно выполнить команду с опцией -L.
<syntaxhighlight lang="bash">
# usermod -L techlist_admin
</syntaxhighlight>


    usermod -L techlist_admin
     Проверяем
     Проверяем
    grep -E 'techlist_admin' /etc/shadow
<syntaxhighlight lang="bash">
    techlist_admin:!$6$Xq90Qiae$lNbChGeX89upuE1vuXJtTXaC63Fddy.Xn8ebmuao9Fuid7xuJ66bMHYlWtlx6QIRltKtX1T5TYMKhyW1ZZXtQ/:17204:0:99999:7:::
# 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>


Для того чтобы разблокировать аккаунт пользователя, достаточно выполнить команду с опцией -U.
Проверяем
<syntaxhighlight lang="bash">
# grep -E 'techlist_admin' /etc/shadow
techlist_admin:$6$Xq90Qiae$lNbChGeX89upuE1vuXJtTXaC63Fddy.Xn8ebmuao9Fuid7xuJ66bMHYlWtlx6QIRltKtX1T5TYMKhyW1ZZXtQ/:17204:0:99999:7:::
</syntaxhighlight>


    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/.
Чтобы изменить командную оболочку пользователя, надо выполнить следующую команду с опцией -s. Изменим пользовательскую оболочку для techlist_admin с /bin/bash/ на /bin/sh/.


    usermod -s /bin/sh techlist_admin
<syntaxhighlight lang="bash">
    Проверяем
# usermod -s /bin/sh techlist_admin
    grep -E 'techlist_admin' /etc/passwd
</syntaxhighlight>
    techlist_admin:x:1001:1002:Имя Фамилия:/opt/techlist:/bin/sh
 
Проверяем
<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.


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


    usermod -u 777 techlist_admin
Проверяем
    Проверяем
<syntaxhighlight lang="bash">
    id techlist_admin
# id techlist_admin
    uid=777(techlist_admin) gid=1002(group_1) группы=1002(group_1),10(wheel),1003(group_2)
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>


    usermod -g 777 techlist_admin
Проверяем
    Проверяем
<syntaxhighlight lang="bash">
    id techlist_admin
# id techlist_admin
    uid=777(techlist_admin) gid=777(newgroup) группы=777(newgroup),10(wheel),1003(group_2)
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>


===Удалить из группы===
===Удалить из группы===
sudo usermod -G <группа_1>,<группа_2>,<группа_3> <пользователь>
<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>

Версия от 07:41, 28 мая 2023

Внимание! Страница в разработке и не готова!!!
Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.


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

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

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