Добавление и удаление пользователей – одни из основных задач, которые необходимо уметь выполнять на новом сервере Linux. По умолчанию при создании нового сервера есть только одна учетная запись пользователя по имени root.
Эта учетная запись очень гибкая и имеет расширенные привилегии; тем не менее, она достаточно опасна и может разрушить систему. Как правило, для постоянной работы лучше создать непривилегированного пользователя. Кроме того, нужно создать дополнительные учетные записи для других пользователей, которые могут понадобиться системе. Каждый пользователь должен иметь отдельную учетную запись.
При необходимости права администратора предоставляет инструмент под названием sudo. В этом руководстве речь пойдет о создании и удалении учетных записей пользователей, а также о sudo-привилегиях.
Добавление пользователей
Войдите в систему как пользователь root, а затем введите следующее для создания нового пользователя:
adduser newuser
Войдя в систему как пользователь с привилегиями sudo (не root), наберите:
sudo adduser newuser
В любом случае система задаст ряд вопросов.
- Нужно установить и подтвердить пароль нового пользователя.
- Затем нужно предоставить дополнительную информацию о новом пользователе. Это совершенно не обязательно, при желании все поля можно оставить незаполненными, нажав Enter.
- В завершение нужно подтвердить подлинность введенной только что информации. Для этого введите Y.
Новый пользователь готов к работе! Теперь можно открыть учетную запись нового пользователя, используя установленный ранее пароль.
Как повысить привилегии пользователя в sudo
Чтобы новый пользователь имел возможность выполнять команды с привилегиями администратора (root-привилегиями), нужно дать ему доступ к sudo.
Для этого нужно выполнить команду visudo, которая открывает в текстовом редакторе соответствующий конфигурационный файл. Это самый безопасный способ внести нужные изменения. Если текущим пользователем является root, выполните команду:
visudo
Если текущим пользователем является пользователь с привилегиями sudo, наберите:
sudo visudo
Найдите строку, которая выглядит так:
root ALL=(ALL:ALL) ALL
Скопируйте эту строку и вставьте ее ниже, заменив root именем нового пользователя, привилегии которого нужно расширить:
root ALL=(ALL:ALL) ALL
new_user ALL=(ALL:ALL) ALL
Внесите такую строку для каждого пользователя, чьи привилегии нужно расширить. Завершив, сохраните и закройте файл, нажав CTRL-X, Y и Enter для подтверждения. Теперь новый пользователь может выполнять команды с привилегиями администратора.
Теперь, войдя в сеть как новый пользователь, можно выполнять команды без привилегий, набирая их в формате:
some_command
а также выполнять те же команды с привилегиями root, внеся sudo в начало команды:
sudo some_command
При этом нужно будет ввести пароль текущего пользователя.
Удаление пользователей
В случае если пользователь больше не нужен, его аккаунт лучше удалить.
Можно удалить самого пользователя, не удаляя его файлов, набрав как root следующее:
deluser new_user
Если текущим является пользователь с привилегиями sudo, наберите:
sudo deluser new_user
Чтобы удалить домашний каталог пользователя, когда пользователь удален, выполните как root следующую команду:
deluser --remove-home new_user
Соответственно, если текущим является пользователь с привилегиями sudo, наберите:
sudo deluser --remove-home new_user
Если пользователь, которого нужно удалить, имеет привилегии sudo, нужно удалить соответствующую строку из конфигурационного файла, чтобы отнять привилегии:
для пользователя root
visudo
для пользователя с привилегиями sudo
sudo visudo
root ALL=(ALL:ALL) ALL
new_user ALL=(ALL:ALL) ALL # Удалите эту строку
Таким образом, если в дальнейшем в системе появится пользователь с таким же именем, он не сможет пользоваться случайно доставшимися привилегиями sudo.
Итоги
Теперь вы имеете навыки работы с учетными записями пользователей в системе Ubuntu 14.04. Эффективное управление пользователями позволит разделить пользователей с учетом их задач и дать им только привилегии, необходимые для выполнения этих задач.