Выдать права sudo пользователю linux

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

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

В этой статье мы покажем вам два способа предоставить пользователю права sudo. Первый — добавить пользователя в файл sudoers . Этот файл содержит информацию, которая контролирует, каким пользователям и группам предоставлены привилегии sudo, а также уровень этих привилегий.

Второй вариант — добавить пользователя в группу sudo, указанную в файле sudoers . По умолчанию в дистрибутивах на основе Debian, таких как Ubuntu и Linux Mint, членам группы «sudo» предоставляется доступ sudo.

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

В Ubuntu самый простой способ предоставить пользователю права sudo — это добавить пользователя в группу «sudo». Члены этой группы могут выполнять любую команду как root через sudo и sudo запрос на аутентификацию с помощью своего пароля при использовании sudo .

Мы предполагаем, что пользователь уже существует. Если вы хотите создать нового пользователя, ознакомьтесь с этим руководством.

Чтобы добавить пользователя в группу, выполните команду ниже от имени пользователя root или другого пользователя sudo. Убедитесь, что вы заменили «username» на имя пользователя, которому вы хотите предоставить разрешения.

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

Чтобы убедиться, что у пользователя есть привилегии sudo, выполните команду whoami :

Вам будет предложено ввести пароль. Если у пользователя есть доступ к sudo, команда выведет «root»:

Если вы получаете сообщение об ошибке «пользователя нет в файле sudoers», это означает, что у пользователя нет прав sudo.

Добавление пользователя в файл sudoers

/etc/sudoers доступа sudo пользователей и групп определены в /etc/sudoers . Добавление пользователя в этот файл позволяет вам предоставить индивидуальный доступ к командам и настроить собственные политики безопасности.

Вы можете настроить доступ пользователя sudo, изменив файл sudoers или создав новый файл конфигурации в каталоге /etc/sudoers.d . Файлы внутри этого каталога включены в файл sudoers.

Всегда используйте visudo для редактирования файла /etc/sudoers . Эта команда проверяет файл на наличие синтаксических ошибок при его сохранении. Если есть ошибки, файл не сохраняется. Если вы откроете файл в текстовом редакторе, синтаксическая ошибка может привести к потере доступа sudo.

Обычно visudo использует vim для открытия /etc/sudoers . Если у вас нет опыта работы с vim и вы хотите отредактировать файл с помощью nano , измените редактор по умолчанию, запустив:

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

Прокрутите вниз до конца файла и добавьте следующую строку:

Сохраните файл и выйдите из редактора . Не забудьте изменить «имя пользователя» на имя пользователя, которому вы хотите предоставить доступ.

Другой типичный пример — разрешить пользователю запускать только определенные команды через sudo . Например, чтобы разрешить только команды mkdir и rmdir , вы должны использовать:

Вместо редактирования файла sudoers вы можете сделать то же самое, создав новый файл с правилами авторизации в каталоге /etc/sudoers.d . Добавьте то же правило, что и в файл sudoers:

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

Выводы

Предоставление доступа sudo пользователю в Ubuntu — простая задача; все, что вам нужно сделать, это добавить пользователя в группу «sudo».

Если у вас есть вопросы, не стесняйтесь оставлять комментарии.

Читайте также:  Лента новостей для windows

Источник

Как добавить пользователя c привилегиями Sudo в Ubuntu

How to Add User to Sudoers in Ubuntu

Мы покажем вам два способа предоставления привилегий sudo пользователю. Первый — добавить пользователя в файл sudoers . Этот файл содержит информацию, которая контролирует, каким пользователям и группам предоставляются привилегии sudo, а также уровень привилегий.

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

Второй вариант — добавить пользователя в группу sudo, указанную в sudoers файле. По умолчанию в дистрибутивах на основе Debian, таких как Ubuntu и Linux Mint, членам группы «sudo» предоставляется доступ sudo.

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

В Ubuntu самый простой способ предоставить пользователю права sudo — это добавить пользователя в группу «sudo». Члены этой группы могут выполнять любую команду от имени пользователя root sudo и получать запрос на аутентификацию с использованием своего пароля при использовании sudo .

Мы предполагаем, что пользователь уже существует. Если вы хотите создать нового пользователя, проверьте это руководство.

Чтобы добавить пользователя в группу, выполните команду ниже как root или другой пользователь sudo. Убедитесь, что вы изменили «username» на имя пользователя, которому вы хотите предоставить разрешения.

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

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

Вам будет предложено ввести пароль. Если у пользователя есть доступ к sudo, команда выведет «root»:

Если вы получаете сообщение «пользователь отсутствует в файле sudoers», это означает, что у пользователя нет привилегий sudo.

Добавление пользователя в файл sudoers

Привилегии sudo пользователей и групп определены в /etc/sudoers файле. Добавление пользователя в этот файл позволяет предоставить настраиваемый доступ к командам и настроить настраиваемые политики безопасности.

Вы можете настроить доступ пользователя sudo, изменив файл sudoers или создав новый файл конфигурации в /etc/sudoers.d каталоге. Файлы внутри этого каталога включены в файл sudoers.

Всегда используйте visudo для редактирования /etc/sudoers файла. Эта команда проверяет файл на наличие синтаксических ошибок при его сохранении. Если есть какие-либо ошибки, файл не сохраняется. Если вы откроете файл в текстовом редакторе, синтаксическая ошибка может привести к потере доступа к sudo.

Как правило, visudo использует vim для открытия /etc/sudoers . Если у вас нет опыта работы с vim, и вы хотите отредактировать файл с помощью nano, измените редактор по умолчанию, запустив:

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

Прокрутите вниз до конца файла и добавьте следующую строку:

Другой типичный пример — позволить пользователю выполнять только определенные команды через sudo . Например, чтобы разрешить только mkdir и rmdir команды , которые вы будете использовать:

Вместо редактирования файла sudoers вы можете сделать то же самое, создав новый файл с правилами авторизации в /etc/sudoers.d каталоге. Добавьте то же правило, что и в файл sudoers:

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

Вывод

Предоставление пользователю sudo доступа в Ubuntu — простая задача, все, что вам нужно сделать, это добавить пользователя в группу «sudo».

Источник

Как дать права root пользователю Linux Ubuntu

В операционной системе Ubuntu пользователи, которые состоят в группе «sudo», могут выполнять задачи администратора, используя одноименную группе команду — sudo. Сегодня мы рассмотрим, как дать пользователю данную привелегию или же ее отозвать.

Также у нас есть материал о том, как активировать ученую запись непосредственно пользователя root: Как ативировать root и добавить/изменить пароль root в Ubuntu

Как создать суперпользователя в Ubuntu

Создаем нового пользователя

Для того, чтобы создать нового пользователя воспользуемся командой adduser:

После ввода команды начнется процесс создания пользователя testuser и будет предложено задать для него пароль:

Создание нового пользователя ubuntu

Как мы помним — в консоли Linux пароли не отображаются при печати, даже в виде звездочек. Заполняем пароль и повторным его вводом подтверждаем корректность:

Подтверждаем правильность ввода пароля

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

Читайте также:  Windows печать нескольких файлов

Заполняем дополнительную информацию о пользователе

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

Теперь, когда пользователь создан присоеденим его к группе суперпользователя — sudo:

Присоединяем пользователя Ubuntu к групе sudo

Осталось только проверить, что все прошло успешно. Переключим пользователя на testuser и попробуем выполнить команду whoami от имени суперпользователя:

Смена пользователя и проверка root

Чтобы переключить текущего пользователя обратно на своего — используем команду su имя_пользователя.

Как дать существующему пользователю привелегии суперюзера

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

Как отзвать привелегии суперпользователя

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

Удаление пользователя из группы sudo

Теперь можно убедиться, что пользователь более не может выполнять команды от имени root:

Проверяем отсутствие прав суперпользователя

Как мы можем видеть — система не позволяет пользователю использовать команду sudo.

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

Источник

Урок 16. Права sudo пользователя — команды sudo, su

Как быть обычным пользователям, которым необходимо изменить некоторые настройки или установить программы, не имея при этом соответствующих прав?

Не обращаться же им каждый раз за помощью к администратору?

Нет. Для этого они могут стать временно другими пользователями с более высокими привилегиями либо выполнить необходимые действие от имени суперпользователя.

Чтобы временно стать другим пользователем выполним команду su [-] имя_пользователя

Система запросит пароль этого пользователя и можно продолжать работать. Одновременно изменится текущий каталог, то есть перейдет в домашний каталог данного пользователя. Например, так:

Причем сеанс работы, запущенный от изначального имени все еще будет активен. Для возврата к нему выполним Ctrl + D или наберем команду exit . В работе команды su есть пара нюансов. Если ввести просто su без аргументов и опций, то вход будет осуществлен от имени суперпользователя root. Причем текущий каталог не изменится:

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

А можно войти в систему от имени другого пользователя и остаться в своем домашнем каталоге?

Да, для этого введем команду su имя_пользователя :

Однако, если ввести su — , то система перейдет в домашний каталог суперпользователя:

При выполнении команды su необходимо знать пароль другого пользователя и в этом и заключается проблема. Так как обычно люди паролями не делятся, а если и поделятся, то это может привести к нежелательным последствиям. Поэтому существует другой способ временно получить права пользователя с расширенными привилегиями. Для этого достаточно выполнить sudo [опции] команда

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

Но тогда какое отличие sudo от su ? В обоих случая можно выполнять любые действия.

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

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

То есть, если добавить обычного пользователя в группу sudo , то с помощью команды sudo он сможет выполнять абсолютно любые команды, как и суперпользователь?

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

И как это сделать?

Существует специальный файл настроек команды sudo , который находится в /etc/sudoers . Когда запускается sudo она проверяет файл sudoers , и если там имеется необходимая запись, то выполняется запрошенная пользователем команда. В противном случае выдается сообщение об отсутствии прав доступа. Вот как выглядит файл sudoers:

Читайте также:  Windows не может создать второй раздел

Теперь попробуем разобраться по порядку, что в нем указано.

User_Alias — синоним пользователей. С помощью синонима (Alias) определяют группу пользователей. Например, на рисунке уже указаны некоторые синонимы:

где синоним ADMINS обозначает перечисленных пользователей vasya, petya, admin .

Что нам это дает?

Когда определенным пользователям нужно ограничить/расширить доступ, то всегда легче это сделать, объединив их всех в одну группу, особенно когда этих пользователей очень много. Так будет проще администрировать и в этом мы убедимся позже.

Runas_Alias — синоним пользователей, от имени которых будут запускаться определенные команды. Смысл их такой же, как User_Alias :

Host_Alias — синоним компьютеров (хостов). Каждый компьютер имеет свое имя. Пользователи могут подключаться к удаленной системе (серверу) через свои или чужие компьютеру. Чтобы ограничить доступ к серверу с определенных компьютеров создается список этих компьютеров, которые объединяются в одну группу:

Cmnd_Alias — синоним команд. Объединяет в группу список команд, которые можно или нельзя выполнять:

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

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

Пользователь Компьютер = (Целевой пользователь) Команда

Что же означает эта запись. Для примера рассмотрим такую запись: vasya pc = (admin) /sbin/shutdown

Она означает следующее: пользователь vasya с компьютера pc от имени пользователя admin может выполнять только команду /sbin/shutdown , то есть выключать систему. Иными словами пользователь vasya работает на компьютере pc . Чтобы выключить систему он набирает команду sudo -u admin shutdown.

А можно просто набрать sudo shutdown?

Нет. так как в данном случае выполнение идет от имени root , что является запрещенным действием для данного пользователя. Здесь мы указали только одного пользователя. Однако, когда у нас их больше, то здесь пригодятся синонимы (alias), рассмотренные выше.

Например, ADMINS SECURITY = (root) ALL означает, что пользователи, входящие в синоним ADMINS ( petya, vasya ) с компьютеров, входящих в синоним SECURITY ( server1, server2, server3 ) могут выполнять от имени пользователя root абсолютно любые ( ALL ) команды.

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

Немного поменяем запись в sudoers : ADMINS SECURITY = (root) NOPASSWD: ALL

С этой записью данным пользователям вообще не нужно вводить пароль.

Рассмотрим еще пару примеров, чтобы лучше понять принцип работы.

ALL ALL = (ALL) ALL — все пользователи на любых компьютерах от имени любых пользователей могут выполнять любые команды.

ALL localhost = /sbin/shutdown -h now — все пользователям разрешается на локальном компьютере выполнять команду shutdown , то есть выключать компьютер локально.

%student ALL = !/sbin/ — пользователям, входящие в группу student (перед группой всегда стоит знак % ), запрещено выполнять все команды из каталога /sbin . Знак ! здесь означает обратное действие (отрицание не).

Чтобы подробнее ознакомиться со всеми параметрами рекомендую ознакомится с описанием man sudoers .

А как можно редактировать файл sudoers ?

Для редактирования нужно обладать правами root , само редактирование выполняется командой visudo . Она позволяет безопасно отредактировать файл и сообщит об ошибках. Поэтому крайне не рекомендуется использовать обычные редакторы вроде nano, vim, emacs и так далее.

А как узнать может ли пользователь выполнять sudo или нет?

Для этого введем команду sudo -ll . Иногда может потребоваться ввести пароль и система отобразит можно ли запускать sudo или нет:

Список команд, которые мы изучили:

su — имя_пользователя — вход в систему от имени пользователя

su — — вход в систему от имени суперпользователя

sudo команда — выполнение команды от имени суперпользователя

sudo -u имя_пользователя команда — выполнение команды от имени пользователя

visudo — запуск редактора файла sudoers

sudo -l — список разрешенных команд для sudo у текущего пользователя

sudo -ll — подробный список разрешенных команд для sudo у текущего пользователя

Источник

Оцените статью