Я запускаю пакет домашней автоматизации под названием HomeSeer на сервере Ubuntu 15.04. Я настроил его для запуска с учетной записью службы (называемой "_homeseer"), и я выбрал каталог приложения для _homeseer:_homeseer.
Чтобы установить обновления для этого пакета, я загружаю файл tar.gz, а затем запускаю предоставленный поставщиком скрипт «update.sh». Этот скрипт извлекает сжатый файл, который также перезаписывает сам себя (update.sh)... поэтому я думаю, что я не могу просто изменить этот скрипт, если я не скопирую его в отдельную папку где-нибудь.
В рамках update.sh есть строка с названием «sudo update_extra.sh». Поскольку я использую update.sh в качестве учетной записи службы, в этой строке sudo запрашивается пароль учетной записи службы ... который я не помню (и не думаю, что хочу).
Я не хочу предоставлять этой учетной записи полные права sudo без пароля, так как это будет представлять серьезную угрозу безопасности (т. Е. Приложение запускает веб-сервер). Я также немного опасаюсь предоставить ему полные права sudo для запуска этого файла update_extra.sh от имени root, поскольку этот файл может обновляться той же учетной записью службы.
Мой вопрос:
Можно ли настроить sudo (т. Е. Visudo), чтобы, если учетная запись _homeseer пыталась использовать sudo, вместо этого она запрашивала пароль моей личной учетной записи и запускалась с имеющимися у меня правами sudo? Я бы предпочел не устанавливать пароль пользователя root, если смогу его избежать ... но предварительный взгляд показывает, что у меня может не быть большого выбора, если я хочу пойти по этому пути.
Или мне нужно изменить этот скрипт update.sh, настроить разрешения для группы, чтобы я мог применять обновления как сам, а затем привязать их к учетной записи службы?