Как запустить команду Sudo без пароля

How to Run Sudo Command Without Password

25 Апреля 2020 | Терминал

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

Как запустить команду Sudo без пароля

Обычно, чтобы предоставить sudo доступ пользователю, необходимо добавить пользователя в группу sudo, определенную в sudoers файле . В Debian, Ubuntu и их производных членам группы sudo предоставляются привилегии sudo, а в дистрибутивах на основе RedHat, таких как CentOS и Fedora, имя группы sudo wheel .

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

Однако в некоторых ситуациях, например при запуске автоматизированных сценариев, может потребоваться настроить файл sudoers и позволить определенным пользователям запускать sudo команды без запроса пароля.

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

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

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

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

sudo cp /etc/sudoers{,.backup_$(date +%Y%m%d)} 
дата добавит текущую дату к имени файла резервной копии.

Откройте /etc/sudoers файл с помощью visudo команды:

sudo visudo 

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

В большинстве систем visudo команда открывает /etc/sudoers файл в текстовом редакторе vim. Если у вас нет опыта работы с vim, вы можете использовать другой текстовый редактор. Например, чтобы изменить редактор на GNU nano, вы должны запустить:

sudo EDITOR=nano visudo 

Прокрутите вниз до конца файла и добавьте следующую строку, которая позволит пользователю «linuxize» выполнить любую команду sudo без запроса пароля:

/ и т.д. / sudoers
linuxize  ALL=(ALL) NOPASSWD:ALL
 

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

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

Например, чтобы разрешить только mkdir и mv команды , которые вы будете использовать:

/ и т.д. / sudoers
linuxize ALL=(ALL) NOPASSWD:/bin/mkdir,/bin/mv
 
После этого сохраните файл и выйдите из редактора  

С помощью /etc/sudoers.d 

Вместо редактирования файла sudoers вы можете создать новый файл с правилами авторизации в /etc/sudoers.d каталоге. Такой подход делает управление привилегиями sudo более понятным.

Откройте ваш текстовый редактор и создайте файл:

sudo nano /etc/sudoers.d/linuxize 

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

/etc/sudoers.d/linuxize

Добавьте то же правило, что и в файл sudoers:

linuxize  ALL=(ALL) NOPASSWD:ALL
 
Наконец, сохраните файл и закройте редактор.

Вывод 

Мы показали вам, как редактировать, /etc/sudoers чтобы вы могли запуститьsudo команды без ввода пароля. Это полезно, когда у вас есть сценарии, в которых пользователю без полномочий root нужно выполнять административные задачи.


    Комментарии

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

Загрузка комментариев...