Управление пользователями и группами в Linux👩💻Понимать команды для управления пользователями и группами важно, поскольку вы будете использовать эту информацию для повышения привилегий в будущем.
Пользователи с низким уровнем привилегий должны добавлять к командам
sudo для выполнения системных команд(и пользователь с низким уровнем привелегий должен входить в группу
sudo для выполнения
sudo). Вам будет предложено ввести пароль вашей учётной записи, если вы захотите использовать команду
sudo.
Например, если хотите запустить системный инструмент
fdisk, чтобы показать устройства, подключённые к системе, то введите:
$ sudo fdisk -l
Без
sudo, вы не сможете запустить инструмент.
Давайте создадим нового пользователя и добавим его в группу
sudo (эти команды будут работать только от
root или от пользователя уже состоящему в группе
sudo):
# useradd -m username -G sudo -s /bin/bash
Ну и конечно зададим ему пароль:
# passwd username
Для того чтобы понять, с какими вы правами сейчас авторизованы, посмотрите на свой никнейм в терминале, вы увидите похожее на это:
delifer@kali ~$
Где, delifer - никнейм, @ - разделяющий символ, kali - имя хоста, ~ - расположение, $ - обычный пользователь с малыми правами.
Если бы мы были авторизованы как
root или дали себе
sudo с помощью
su. То
$ изменилась бы на
#.
$ sudo su
Чтобы узнать права текущего пользователя в контексте команды sudo, можно ввести sudo -l.
А чтобы просмотреть информацию о текущем пользователе, используйте команду id.
Также можно посмотреть список пользователей, которые в настоящее время вошли в систему, используйте
w или
who(менее подробно).
Мы создали пользователя, давайте его теперь удалим. Пользователя можно удалить следующей командой:
$ sudo userdel username
Можно также посмотреть последних авторизованных пользователей с помощью команды
last.
Вся информация о пользователях в системе Linux храниться в файле конфигурации
/etc/passwd. Используя команду
cat, мы можем посмотреть содержимое.
$ cat /etc/passwd
Таким способом мы получаем не только пользователей, но и программ. С помощью
grep можно отфильтровать вывод:
$ cat /etc/passwd | grep "/bin/bash"
Давайте создадим теперь группу, для этого можно использовать команду
groupadd$ sudo groupadd codeby
Чтобы добавить пользователя в группу
Codeby, выполним команду
usermod$ sudo usermod -aG codeby user
Чтобы вывести список всех групп созданных в системе, прочитайте файл
/etc/group.
Чтобы перечислить все учётные данные пользоваьтеля в Linux, вы можете прочитать файл
/etc/shadow. Используйте команду
grep, чтобы получить учётные данные пользователя для пользователя
user.
Получим такой результат:
user:$6$YTJ7JKnfsB4esnbS$5XvmYk2.GXVWhDo2TYGN2hCitD/wU9Kov.uZD8xsnleuf1r0ARX3qodIKiDsdoQA444b8IMPMOnUWDmVJVkeg1:19446:0:99999:7:::
: - это символ разделения,
$6$ - означает, что пароль хешируется с помощью SHA-512. Пароль начинается с $6$ и заканчивается прямо перед следующим разделителем.
Кстати, если вы ввели команду и забыли добавить sudo, то можно ввести просто sudo !!, чтобы не вводить пред. команду снова.