Я хочу реализовать сценарий для выполнения любой команды с полномочиями пользователя root, но не имея необходимость помещать любой пароль. На терминале я хотел бы видеть его как это:
./newsudo "comand with root privileges"
Я думаю, способ пойти состоял бы в том, чтобы использовать "команду с полномочиями пользователя root" как аргумент в сценарии с и должностном лице или подобный, для выполнения его.
Истина, я - очень новичок во всей этой области, и я не знаю, где запустить.
Спасибо!!
Теоретически, то, что Вы спрашиваете, возможно. Так как возможно установить приложение в sudoers файле для выполнения с аргументами, мы можем делать команду (сценарий) для вызова, который работает с sudo с рассматриваемой командой как аргумент.
НИКОГДА , так как это повредит принцип того, чтобы быть администратором. ЛЮБОЙ злонамеренный процесс мог выполнить код для уничтожения системы.
нижняя строка - то, что я даже не отправлю, как сделать это.
<час> [еще 117] do's и don'ts на под управлением программном обеспечении без пароля, Как упомянуто @Groundzero, можно добавить конкретный приложения или сценарии в sudoers файл, для выполнения без пароля, как описано сюда . Однако имейте в виду:
sudo
(без пароля) в месте, где они могут быть отредактированы без полномочий администратора. Простое редактирование любым (или любой процесс) может заставить его сделать что-либо. Просто заставьте sudo управлять предоставлением рассматриваемых команд требуемому пользователю / группа с NOPASSWD: перед командой. Вам не нужен новый сценарий, просто что-то вроде этого, чтобы предоставить способности выполнить что-либо как корень всем в администраторской группе без требуемого пароля:
%admins ALL = NOPASSWD: ALL
В целом, требование паролей на дополнительных опасных командах является хорошей идеей, но Ваша политика безопасности является Вашей. Были некоторые (теперь удалены) обсуждение того, как это небезопасно, и я соглашаюсь: это опасно. Это - почти всегда плохая идея сказать, что "этот пользователь может выполнить что-либо как корень, не подтверждая их идентификационные данные иногда".
существуют другие форумы, выделенные безопасности, все же. Если законная цель состоит в том, чтобы выполнить произвольные команды как корень без пароля, вышеупомянутое является примерно самым безопасным способом сделать так. Так как протест - это любой реализующий, это должно знать о рисках, включая "любого, кто может работать, команда с полномочиями этого пользователя является эффективно корневой". Это включает вещи как загруженные сценарии и возможно даже злонамеренные веб-страницы, если браузер имеет дыру в системе безопасности. Разделения между "непривилегированным пользователем" и "корнем" в значительной степени не стало с правилом как это на месте. Покупатель остерегается. :)