Отключить аутентификацию суперпользователя при запуске программы

Я хочу, чтобы мой VPN запускался при запуске после входа в мою учетную запись. В настоящее время работает Ubuntu 15.10. Я добавил программу для запуска (/usr/bin/mullvad); тем не менее, он запрашивает аутентификацию перед открытием.

"Аутентификация необходима для запуска" usr / bin / mtunnel "от имени суперпользователя"

Я добавил эти записи в мой файл sudoers, но он, похоже, ничего не делает. Мне все еще нужно ввести пароль для запуска VPN.

john ALL=(ALL) NOPASSWD: /usr/bin/mtunnel
john ALL=(ALL) NOPASSWD: /usr/bin/mullvad

Любая идея?

Полный файл

#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults        env_reset
Defaults        mail_badpass
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:$

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification

 Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "#include" directives:

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d

john ALL=(ALL) NOPASSWD: /usr/bin/mtunnel, /usr/bin/mullvad

3 ответа

Решение

Почему вы так непреклонны при подключении к VPN при входе в систему? Вы можете запустить его при загрузке, а затем VPN-соединение может быть выполнено root как часть обычного запуска.

Вы можете сделать это разными способами: вы можете добавить строку в /etc/rc.local, вы можете построить сервис вокруг него (но детали зависят от того, под SysV или же systemd), или, еще проще, вы можете поставить следующую строку

 @reboot /usr/bin/mullvad

в crontab, Тогда паролей больше нет.

Вы все еще должны выполнить эти программы с sudo, С этими двумя линиями в /etc/sudoers, Пользователь john не будет запрашиваться пароль при выполнении sudo mtunnel а также sudo mullvad, Также вы можете объединить две строки в одну: john ALL=(ALL) NOPASSWD: /usr/bin/mtunnel, /usr/bin/mullvad,

У меня была эта проблема с аутентификацией, когда я разрабатывал программное обеспечение. Он появился после того, как я удалил программное обеспечение sudo apt remove затем попробуйте запустить его из исходного кода, каждый Popen действие отобразит запрос аутентификации.

Я решил это, установив программное обеспечение обратно (живое), затем смог запустить программное обеспечение dev без окна запроса на аутентификацию. В вашем случае переустановка программного обеспечения может помочь.

Другие вопросы по тегам