Запуск команд с привилегиями sudo без необходимости ввода пароля может быть полезен в различных ситуациях, особенно для системных администраторов и разработчиков. Например:
- автоматизация задач по обслуживанию ОС, таких как обновление или резервное копирование, которые часто требуют прав sudo;
- ускорение процессов тестирования и настройки ОС за счет отключения функции ввода пароля;
- использование конвейеров непрерывной интеграции и развертывания (CI / CD) и другие подобные задачи.
В этой статье мы расскажем, как разрешить пользователям выполнять команды с привилегиями sudo без ввода пароля в Linux.
Содержание:
- Редактирование файла sudoers
- Настройка правила запуска команд sudo без запроса пароля для конкретного пользователя
- Написание правила запуска команд sudo без запроса пароля для группы пользователей
- Выводы
Редактирование файла sudoers
Системный файл sudoers
предназначен для контроля и управления правами доступа пользователей и групп на выполнение команд с привилегиями суперпользователя (root
). Чтобы открыть этот файл, выполните в терминале следующую команду:
Настройка прав доступа пользователей осуществляется путем написания правил. Их синтаксис выглядит следующим образом:
Читайте также: Управление пользователями и группами, разрешениями, атрибутами файлов и включение доступа sudo к учетным записям — LFCS часть 8.
Где:
username
— имя пользователя, к которому применяется правило;host
— имя хоста, к которому применяется правило (обычно этоALL
для назначения правила на всех хостах);runas_user
— пользователь, от имени которого будет выполняться команда (обычно этоALL
, чтобы разрешить запуск от имени любого пользователя, илиroot
для привилегий суперпользователя);[tag:]
— необязательные теги, которые расширяют функционал правила;command
— конкретная команда или команды, к которым применяется правило.
Настройка правила запуска команд sudo без запроса пароля для конкретного пользователя
Чтобы позволить определенному пользователю выполнять все команды с привилегиями sudo без ввода пароля, добавьте в файл sudoers
следующую строку:
Здесь тег NOPASSWD
означает, что операционная система не будет требовать пароля для запуска команд с привилегиями sudo.
Допустим, Вам нужно разрешить конкретному пользователю использовать утилиту apt
с правами sudo без требования ввода пароля. Для этого добавьте в файл следующее правило:
Где /usr/bin/apt
— абсолютный путь к бинарному файлу инструмента apt
.
Также Вы можете позволить пользователю выполнять несколько команд с использованием sudo без запроса пароля. Для этого просто перечислите пути к соответствующим исполняемым файлам через запятую. Например:
Приведенное выше правило разрешает указанному пользователю выполнять команды apt update
и apt upgrade
без ввода пароля для sudo.
Читайте также: Как изменить время сессии sudo в Linux.
Написание правила запуска команд sudo без запроса пароля для группы пользователей
Чтобы установить правило в файле sudoers
для всех пользователей определенной группы, используйте символ %
и название группы. К примеру, напишем правило, которое предоставляет членам группы admin
возможность выполнять любые команды с привилегиями sudo без ввода пароля:
Также можно настроить правила для группы пользователей, разрешающие выполнение одной или нескольких команд с использованием sudo без требования ввода пароля. Например:
Читайте также: Как создать новую учетную запись sudo в Ubuntu Linux.
Выводы
Теперь Вы знаете, как разрешать пользователям ОС Linux запускать утилиты с привилегиями sudo без запроса пароля. Надеемся, что эта статья была полезной для Вас!
Спасибо за время, уделенное прочтению статьи!
Если возникли вопросы — задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco, курсы по кибербезопасности, полный курс по кибербезопасности, курсы DevNet / DevOps (программируемые системы) от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).
Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!
- Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
- Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
- Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
- Проведем вечерние онлайн-лекции на нашей платформе.
- Согласуем с вами удобное время для практик.
- Если хотите индивидуальный график — обсудим и реализуем.
- Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
- Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
- отредактировать или создать с нуля резюме;
- подготовиться к техническим интервью;
- подготовиться к конкурсу на понравившуюся вакансию;
- устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.