Разрешить обычному пользователю перезапустить службу с помощью /etc/sudoers

Разрешить обычному пользователю перезапустить службу с помощью /etc/sudoers

У меня есть служба ( kado-demo.service), которую обычный пользователь ( kado) должен иметь возможность перезапустить без ввода пароля.

Я создал /etc/sudoers.d/user_restartи добавил

kado ALL=NOPASSWD: /bin/systemctl restart kado-demo.service

Разрешения:

-r--r-----   1 root root   585 Mar  5 10:47 user_restart

Как пользователь k, я теперь должен иметь возможность выполнить данную команду, но происходит следующее:

/bin/systemctl restart kado-demo.service
 ==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-units ===
 Authentication is required to restart 'kado-demo.service'. 
 Multiple identities can be used for authentication:
  (...)

Результат тот же, что и до добавления файла.

Содержит/etc/sudoers

#includedir /etc/sudoers.d

И я получаю тот же результат, когда добавляю содержимое файла user_restartнапрямую в /etc/sudoers.

У меня заканчиваются идеи...

решение1

Чтобы sudoersэто подействовало, вам действительно придется использовать sudo. :) Сделайте:

sudo systemctl restart kado-demo.service

И пароль не будет запрашиваться.

Если вы не используете sudo, systemctlвозвращается к использованиюПолкитдля авторизации.

решение2

разрешить любому обычному пользователю startили restartуслуге:

sudo visudo 

userB ALL=NOPASSWD: /bin/systemctl restart serviceA.service, /bin/systemctl stop serviceA.service, /bin/systemctl start serviceA.service, /bin/systemctl status serviceA.service

Связанный контент