Как в debian добавить пользователя в sudo

Обновлено: 07.07.2024

В операционных системах семейства Linux реализован принцип разграничения пользовательских привилегий, то есть у разных учетных записей разный объем прав доступа к каталогам, файлам и программам. Максимальными правами наделена встроенная учетная запись root. Вновь создаваемые пользовательские аккаунты обычно существенно ограничены в доступе к системным конфигурационным файлам, управлении сервисами, установке и удалении программных пакетов. При этом работа в операционной системе под учетной записью root настоятельно не рекомендуется, прежде всего в целях безопасности. В этом случае на помощь приходит утилита командной строки sudo.

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

Установка и настройка

В ОС Ubuntu sudo включена по умолчанию, а в Debian, если в процессе установки не был выбран соответствующий пакет, скорее всего будет следующая картина:

Значит, требуется установить недостающий пакет. Обновляем информацию о репозиториях и устанавливаем sudo:

apt-get update
apt-get install sudo

Дожидаемся окончания процесса:

Процесс установки sudo

Скриншот №1. Процесс установки sudo

После успешной установки потребуется сконфигурировать sudo, определив, какие пользователи или группы смогут использовать повышение привилегий и в каком объеме. Все эти настройки хранятся в конфигурационном файле /etc/sudoers, однако вносить в него изменения напрямую настоятельно не рекомендуется. Для этих целей используется специальная команда:

которая запускает текстовый редактор с конфигурационным файлом:

Текстовый редактор

Скриншот №2. Текстовый редактор

За предоставление прав здесь отвечают две строки:

root ALL=(ALL:ALL) ALL
%sudo ALL=(ALL:ALL) ALL

Первая строка назначает права для учетной записи root, вторая устанавливает права для членов группы sudo, которая была создана при установке пакета (знак % перед названием означает, что имя относится к группе пользователей). Соответственно, у нас есть два основных способа предоставить пользовательской учетной записи право использовать sudo:

Добавить учетную запись пользователя (например, user) в группу sudo на сервере:

usermod –a –G sudo user

После изменения членства в группе, потребуется заново авторизоваться в этой учетной записи для применения новой конфигурации. Данный метод рекомендуется в тех случаях, когда пользователю необходимо предоставить полные права.

Создать в файле новую запись, например, для учетной записи user. Мы добавляем строку по аналогии с root:

user ALL=(ALL:ALL) ALL

Добавлять новую запись рекомендуется в тех случаях, когда список привилегий будет корректироваться (об этом чуть позднее). Если мы внесли изменения в файл, нужно их сохранить нажатием сочетания клавиш Ctrl-O и выйти из редактора — Ctrl-X.

Теперь можно проверить корректность работы:

$ sudo cat /etc/sudoers
[sudo] password for user:

Команда sudo запрашивает пароль текущего пользователя (в данном случае это user) — вводим его, и, если все сделано правильно, мы увидим содержание системного конфигурационного файла.

Тонкая настройка

Таким образом, обычный пользователь может запускать команды с правами учетной записи root не зная ее пароль. Это очень удобно, но может быть небезопасно — есть ли возможность ограничить круг команд, которые можно исполнять посредством sudo? Да, и поможет нам в этом тот же самый конфигурационный файл. Снова запускаем visudo и разбираемся дальше. Нас интересуют параметры, указанные после имени пользователя:

Настройки ограничения команд

Скриншот №3. Настройки ограничения команд

Разберем их подробнее:

  • ALL=(ALL:ALL) ALL — первый параметр определяет к какому хосту применяется конфигурация. При использовании выделенного сервера параметр можно оставить без изменений;
  • ALL=(ALL:ALL) ALL — параметры в скобках определяют с полномочиями какого пользователя (первый параметр) и/или группы (второй параметр) будет выполняться команда. По умолчанию sudo выполняет команду от имени root, однако при запуске с ключом –u можно указать другую учетную запись, а с ключом –g другую группу, чьи полномочия будут использованы при запуске;
  • ALL=(ALL:ALL) ALL — третий параметр определяет к каким файлам и командам относятся данные настройки.

Исходя из вышесказанного, при необходимости определить перечень разрешенных команд заменяем последний параметр ALL тем, что нам требуется, перечисляя команды через запятую. Например, строка:

user ALL=(ALL:ALL) /sbin/shutdown –r, /bin/cat

дает право пользователю user с помощью sudo осуществлять перезагрузку сервера командой sudo /sbin/shutdown –r и просматривать файлы с помощью sudo /bin/cat. Другие команды через sudo выполняться не будут. Например, при попытке выключить сервер командой sudo /sbin/shutdown –h, получим ответ:

Sorry, user user is not allowed to execute '/sbin/shutdown -h' as root on debian10.

Полезное

Увидеть список привилегий можно, запустив sudo –l (будет отображен список для текущего пользователя), либо sudo –l –U user (будет отображен список привилегий пользователя user):

Список привилегий пользователя

Скриншот №4. Список привилегий пользователя

В состав sudo входит команда sudoedit, которая запускает текстовый редактор с указанным файлом сразу с повышенными привилегиями, то есть вместо команды:

sudo nano /etc/network/interfaces

Если требуется длительная работа в режиме повышенных привилегий и вводить sudo для каждой команды неудобно, можно запустить через sudo экземпляр командного интерпретатора:

и продолжить работу в нем — все команды будут запускаться с повышенными правами. По завершении работы выходим из интерпретатора командой exit.

В этом руководстве мы покажем вам, как создать нового пользователя в системе Debian и предоставить ему доступ sudo.

Вы можете использовать эту учетную запись для выполнения административных команд без необходимости входа на сервер Debian в качестве пользователя root.

Создайте пользователя sudo

Выполните следующие действия, чтобы создать новую учетную запись пользователя и предоставить ей доступ sudo. Если вы хотите настроить sudo для существующего пользователя, перейдите к шагу 3.

1. Войдите на свой сервер.

Сначала войдите в свою систему как пользователь root:

2. Создайте новую учетную запись пользователя.

Создайте новую учетную запись пользователя с adduser команды adduser . Не забудьте заменить username желаемым именем пользователя:

Команда предложит вам установить и подтвердить новый пароль пользователя. Убедитесь, что пароль для новой учетной записи как можно более надежный (комбинация букв, цифр и специальных символов).

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

3. Добавьте пользователя в группу sudo

По умолчанию в системах Debian членам группы sudo предоставляется доступ sudo. Чтобы добавить пользователя в группу sudo, используйте команду usermod :

Протестируйте доступ к sudo

Переключитесь на вновь созданного пользователя:

Используйте команду sudo, чтобы запустить команду whoami :

Если у пользователя есть доступ к sudo, то вывод команды whoami будет root :

Как использовать sudo

Чтобы использовать sudo, просто добавьте к команде префикс sudo и пробел:

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

Выводы

Вы узнали, как создать пользователя с привилегиями sudo. Теперь вы можете войти на свой сервер Debian с этой учетной записью и использовать sudo для выполнения административных команд.

В Linux для контроля доступа к файловой системе используются пользователи и группы. Каждый файл имеет пользователя владельца и группу, пользователи из которой могут получить к нему доступ. Это очень простая, но в то же время гибкая система привилегий.

Поэтому пользователи используются не только для людей, работающих за компьютером, но и для запущенных процессов, позволяя таким образом ограничить их сферу влияния. В этой небольшой статье мы рассмотрим как добавить пользователя в Debian.

Как добавить пользователя в Debian

1. Графический интерфейс

Проще всего добавить пользователя в графическом интерфейсе. Для этого откройте утилиту Параметры системы, перейдите в раздел Подробности, затем откройте пункт Пользователи:


Здесь, первым делом необходимо нажать кнопку Разблокировать чтобы получить доступ к созданию и редактированию пользователей. После этого система запросит ваш пароль. Только после его ввода появится кнопка Добавить пользователя в верху окна, нажмите на неё:


В окне создания нового пользователя надо ввести его имя и логин, а также пароль два раза:

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

2. Терминал

Добавление пользователей debian через терминал даже проще, чем в графическом интерфейсе. Чтобы создать пользователя в терминале следует использовать команду adduser. Она интерактивная и во время создания пользователя надо будет ответить на несколько вопросов. Например, для создания пользователя losst выполните:

sudo adduser losst

Введите два раза пароль для нового пользователя:


Дальше можно заполнить полное имя пользователя, информацию о его рабочем месте, телефон и другую нужную вам информацию:


Если вы хотите создать sudo пользователя в Debian, то надо добавить только что созданного пользователя в группу sudo. Например:

usermod -aG sudo losst

Обратите внимание, что опция a здесь обязательна, иначе команда заменит все группы пользователя на sudo и тогда он может потерять доступ к некоторым системным ресурсам. Вы можете проверить добавлен ли пользователь в эту группу выполнив:

getent group sudo


Выводы

Как видите, создание пользователя Debian не такая уже сложная задача, которая может быть выполнена как через терминал, так и через графический интерфейс. Если у вас остались вопросы, спрашивайте в комментариях!

Нет похожих записей


Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.

При настройке новой системы Debian создается учетная запись root по умолчанию. Пользователь root имеет полный доступ к системе. И может в делать в системе все, что не может обычный пользователь. Некоторые задачи выполняются только пользователем root. Например выполнить установку, обновление и удаление пакетов программного обеспечения, изменение файлов конфигурации, запуск и остановку системных служб, а также завершение работы и перезагрузку сервера. Пользователь root является мощным, но чрезвычайно опасным, поскольку выполняемые действия невозможно отменить. Некоторые команды могут сделать систему непригодной для использования.

Чтобы снизить этот риск новый пользователь не имеет прав sudo. Только после создания пользователя можно назначить ему права суперпользователя для выполнения повседневных административных функций. Это возможно путем выдачи пользователю прав sudo. Это действие повысит привилегии пользователя.

В этой статье мы расскажем, как создать нового пользователя, а затем добавить пользователя в группу sudoers в Debian. (Как добавить пользователя в sudo Debian)

Шаг 1: Войдите на свой сервер Debian

Для начала войдите на свой сервер Debian как пользователь root через SSH. Как включить SSH на Debian мы писали здесь.

Шаг 2. Создание новой учетной записи пользователя в Debian

Чтобы создать нового пользователя в системе Linux, мы собираемся использовать команду adduser , за которой следует имя пользователя.

Синтаксис команды показан ниже:

В нашем случае мы добавим нового пользователя по имени Джек.

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

Пример ответа терминала

Создание новой учетной записи пользователя в Debian

Создание новой учетной записи пользователя в Debian

Если вы хотите пропустить всю эту информацию, просто нажмите ENTER , чтобы принять значения по умолчанию.

Создание пользователя с помощью adduser

Создание пользователя с помощью adduser

Информация о новом пользователе хранится в файле /etc/password . Для просмотра информации о пользователе запустите

Шаг 3: Добавление пользователя в группу sudoers

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

В нашем случае, чтобы добавить пользователя Jack в группу sudoers, мы запустим следующую команду

Чтобы проверить был ли пользователь добавлен в группу sudo, выполнив команду id.

Вы также можете использовать команду gpasswd для добавления пользователя в группу sudo.

Установить Sudo очень просто, выполните команду написанную ниже:

Шаг 4: Тестирование пользователя sudo

Последним шагом является подтверждение наличия у нового пользователя прав sudo.

Переключитесь на нового пользователя, как показано на рисунке

Теперь вызовите команду sudo, за которой следует любая команда. в этом случае мы запустим команду whoami.

За этим последует список из нескольких пунктов, которые вы должны знать, работая пользователем root.

Затем вам будет предложено ввести пароль пользователя, и после этого команда будет выполнена.

Пример ответа терминала

Тестирование пользователя sudo

Тестирование пользователя sudo

Если вы хотите снова переключиться на пользователя root, вы можете выполнить команду sudo -i , но вам необходимо указать пароль root:

Заключение

Из этой статьи вы узнали, как добавить пользователя в группу sudoers. Мы рекомендуем использовать обычного пользователя в серверной системе. Это позволит избежать вероятности ошибки в качестве пользователя root и нанести необратимый ущерб серверу.

Читайте также: