Из соображений безопасности работа от пользователя root в системе Linux не рекомендуется, так как при ошибке в команде могут произойти необратимые повреждения файлов и системы.
Создание пользователя с привилегиями sudo
- Создайте нового пользователя (в примере - username) командой ниже:
По умолчанию создаваемый пользователь будет добавлен в группу с таким же именем, а также для него будет создан домашний каталог.
- В Ubuntu / Debianдалее будет запрошен пароль пользователя. Его будет необходимо ввести дважды. Помните, что символы пароля не отображаются в консоли Linux при вводе.
В CentOS для установки пароля выполните команду:
После введите пароль и повторите его.
- Далее в Ubuntu / Debianбудет запрошен ввод дополнительной информации о пользователе (имя, номер телефона и пр.). Вы можете указать данные или нажимать Enter, чтобы оставить значения по умолчанию (т.е. пустые). После нажмите Y для подтверждения.
В CentOS, если вы хотите указать дополнительную информацию, выполните команду:
На этом этапе создание обычного пользователя (без привилегий sudo) завершено.
- Теперь для того, чтобы предоставить пользователю sudo-привилегии, его нужно добавить в группу sudo. Это делается командой:
# В Ubuntu / Debian:
usermod -aG sudo username
# В CentOS:
usermod -aG wheel username |
- Проверьте работу пользователя. Для этого переключитесь на сеанс работы от его имени:
Система запросит пароль пользователя (при первом запуске sudo). Введите его, после чего попробуйте выполнить любую команду с привилегиями sudo. Например, можно просмотреть содержимое каталога /root, которое недоступно пользователю с обычными правами:
Если содержимое каталога отобразится, значит, созданный пользователь работает корректно.
- Этот шаг не является обязательным, но для повышения безопасности можно отключить дистанционный доступ для суперпользователя root. В этом случае пользователям всегда будет необходимо подключаться под собственными учетными записями, что позволит отслеживать действия на сервере, видеть, кем были внесены те или иные изменения и т.д.
Для отключения доступа root откройте файл /etc/ssh/sshd_config:
sudo nano /etc/ssh/sshd_config |
Найдите строку PermitRootLogin и замените ее текущее значение на:
Выйдите из редактора с сохранением изменений (комбинация Ctrl X -> Y -> Enter).
После выполненных действий перезапустите службу SSH:
# Ubuntu / Debian:
sudo service ssh restart
# CentOS:
sudo service sshd restart |
Другие команды для управления пользователями
Если вам необходимо добавить пользователя в другую группу, она должна быть предварительно создана:
После чего можно создать пользователя следующим образом:
useradd -g имя_группы username |
Если пользователь уже существует, вы можете добавить его в нужную группу командой usermod:
usermod -G имя_группы username |
Для того, чтобы изменить первичную группу пользователя, используется ключ -g:
usermod -g имя_группы username |
Для смены домашнего каталога пользователя используется команда:
usermod -d путь/к/новому/каталогу username |
Получить информацию о пользователе можно командой:
Вывод будет содержать примерно следующие сведения:
uid=1000(username) gid=1000(username) groups=1000(username),27(sudo) |
Сменить пароль можно командой:
Просмотреть список всех созданных пользователей можно командой:
Чтобы получить только список имен, без дополнительной информации, можно использовать:
sed 's/:.*//' /etc/passwd |
Вывести список пользователей, которые сейчас в системе, можно простой командой
w.
Удалить пользователя можно командой:
Для удаления группы используется команда: