Page tree

Из соображений безопасности работа от пользователя root в системе Linux не рекомендуется, так как при ошибке в команде могут произойти необратимые повреждения файлов и системы.

Оптимальным решением является создание дополнительного пользователя VDS с привилегиями sudo. Механизм sudo позволит пользователю при необходимости выполнять операции с правами администратора (root).

По этой же инструкции создаются и обычные пользователи системы (без привилегий sudo) — достаточно выполнить первые три шага.

Создание пользователя с привилегиями sudo

  1. Создайте нового пользователя (в примере - username) командой ниже:

    adduser username

    По умолчанию создаваемый пользователь будет добавлен в группу с таким же именем, а также для него будет создан домашний каталог. 

  2. В Ubuntu / Debian далее будет запрошен пароль пользователя. Его будет необходимо ввести дважды. Помните, что символы пароля не отображаются в консоли Linux при вводе.

    В CentOS для установки пароля выполните команду:

    passwd username

    После введите пароль и повторите его.

  3. Далее в Ubuntu / Debian будет запрошен ввод дополнительной информации о пользователе (имя, номер телефона и пр.). Вы можете указать данные или нажимать Enter, чтобы оставить значения по умолчанию (т.е. пустые). После нажмите Y для подтверждения.

    В CentOS, если вы хотите указать дополнительную информацию, выполните команду:

    chfn username

    На этом этапе создание обычного пользователя (без привилегий sudo) завершено.

  4. Теперь для того, чтобы предоставить пользователю sudo-привилегии, его нужно добавить в группу sudo. Это делается командой: 

    # В Ubuntu / Debian:
     
    usermod -aG sudo username
    
    # В CentOS:
     
    usermod -aG wheel username
  5. Проверьте работу пользователя. Для этого переключитесь на сеанс работы от его имени:

    su - username

    Система запросит пароль пользователя (при первом запуске sudo). Введите его, после чего попробуйте выполнить любую команду с привилегиями sudo. Например, можно просмотреть содержимое каталога /root, которое недоступно пользователю с обычными правами:

    sudo ls -la /root

    Если содержимое каталога отобразится, значит, созданный пользователь работает корректно. 

  6. Этот шаг не является обязательным, но для повышения безопасности можно отключить дистанционный доступ для суперпользователя root. В этом случае пользователям всегда будет необходимо подключаться под собственными учетными записями, что позволит отслеживать действия на сервере, видеть, кем были внесены те или иные изменения и т.д.

    Для отключения доступа root откройте файл /etc/ssh/sshd_config:

    sudo nano /etc/ssh/sshd_config

    Найдите строку PermitRootLogin и замените ее текущее значение на:

    PermitRootLogin no

    Выйдите из редактора с сохранением изменений (комбинация Ctrl X -> Y -> Enter).

После выполненных действий перезапустите службу SSH:

# Ubuntu / Debian:

sudo service ssh restart

# CentOS:

sudo service sshd restart

Наверх

Другие команды для управления пользователями

Если вам необходимо добавить пользователя в другую группу, она должна быть предварительно создана:

addgroup имя_группы

После чего можно создать пользователя следующим образом:

useradd -g имя_группы username

Если пользователь уже существует, вы можете добавить его в нужную группу командой usermod:

usermod -G имя_группы username

Для того, чтобы изменить первичную группу пользователя, используется ключ -g:

usermod -g имя_группы username

Для смены домашнего каталога пользователя используется команда:

usermod -d путь/к/новому/каталогу username

Получить информацию о пользователе можно командой:

id username

Вывод будет содержать примерно следующие сведения:

uid=1000(username) gid=1000(username) groups=1000(username),27(sudo)

Сменить пароль можно командой:

passwd username

Просмотреть список всех созданных пользователей можно командой:

cat /etc/passwd

Чтобы получить только список имен, без дополнительной информации, можно использовать:

sed 's/:.*//' /etc/passwd

Вывести список пользователей, которые сейчас в системе, можно простой командой w.

Удалить пользователя можно командой:

deluser username

Для удаления группы используется команда:

delgroup имя_группы

Наверх

  • No labels