Создайте пользовательскую команду sudo без пароля

Я хочу реализовать сценарий для выполнения любой команды с полномочиями пользователя root, но не имея необходимость помещать любой пароль. На терминале я хотел бы видеть его как это:

./newsudo "comand with root privileges" 

Я думаю, способ пойти состоял бы в том, чтобы использовать "команду с полномочиями пользователя root" как аргумент в сценарии с и должностном лице или подобный, для выполнения его.

Истина, я - очень новичок во всей этой области, и я не знаю, где запустить.

Спасибо!!

4
задан 12 October 2016 в 10:27

2 ответа

Создайте групповую команду для выполнения любого (под-) команда как sudo без пароля; действительно ли это возможно?

Теоретически, то, что Вы спрашиваете, возможно. Так как возможно установить приложение в sudoers файле для выполнения с аргументами, мы можем делать команду (сценарий) для вызова, который работает с sudo с рассматриваемой командой как аргумент.

мы должны сделать это?

НИКОГДА , так как это повредит принцип того, чтобы быть администратором. ЛЮБОЙ злонамеренный процесс мог выполнить код для уничтожения системы.

нижняя строка - то, что я даже не отправлю, как сделать это.

<час> [еще 117] do's и don'ts на под управлением программном обеспечении без пароля

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

  • не добавляют приложения на sudoers файл, который может использоваться, чтобы вредить Вашей системе или сделать вредные вещи в целом. Особенно, если приложение имеет обширные cli-опции.
  • не хранят сценарии для выполнения с sudo (без пароля) в месте, где они могут быть отредактированы без полномочий администратора. Простое редактирование любым (или любой процесс) может заставить его сделать что-либо.

14
ответ дан 23 November 2019 в 11:35

Просто заставьте sudo управлять предоставлением рассматриваемых команд требуемому пользователю / группа с NOPASSWD: перед командой. Вам не нужен новый сценарий, просто что-то вроде этого, чтобы предоставить способности выполнить что-либо как корень всем в администраторской группе без требуемого пароля:

%admins ALL = NOPASSWD: ALL

В целом, требование паролей на дополнительных опасных командах является хорошей идеей, но Ваша политика безопасности является Вашей. Были некоторые (теперь удалены) обсуждение того, как это небезопасно, и я соглашаюсь: это опасно. Это - почти всегда плохая идея сказать, что "этот пользователь может выполнить что-либо как корень, не подтверждая их идентификационные данные иногда".

существуют другие форумы, выделенные безопасности, все же. Если законная цель состоит в том, чтобы выполнить произвольные команды как корень без пароля, вышеупомянутое является примерно самым безопасным способом сделать так. Так как протест - это любой реализующий, это должно знать о рисках, включая "любого, кто может работать, команда с полномочиями этого пользователя является эффективно корневой". Это включает вещи как загруженные сценарии и возможно даже злонамеренные веб-страницы, если браузер имеет дыру в системе безопасности. Разделения между "непривилегированным пользователем" и "корнем" в значительной степени не стало с правилом как это на месте. Покупатель остерегается. :)

3
ответ дан 23 November 2019 в 11:35

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

Похожие вопросы: