Как настроить, sudoers
чтобы предотвратить появление Sorry, user ****** is not allowed to execute
сообщения об ошибке.
Фон
Для проверки работы скрипта Python под учетной записью демона с меньшими привилегиями необходимо запустить:
$ sudo -u _denyhosts -g _denyhosts python /usr/local/bin/denyhosts.py
-c /usr/share/denyhosts/denyhosts.cfg -n --purge --sync --verbose
Результат:
Sorry, user ****** is not allowed to execute
'/usr/bin/python /usr/local/bin/denyhosts.py -c /usr/share/denyhosts/denyhosts.cfg
-n --purge --sync --verbose' as _denyhosts:_denyhosts on ***.***.***.
Предполагается, что эта команда не выполняется из-за необходимости дополнительной настройки в sudoers
.
$ sudo -l
Matching Defaults entries for *** on this host:
editor=/usr/bin/nano, env_reset, env_keep+=BLOCKSIZE, env_keep+="COLORFGBG
COLORTERM", env_keep+=__CF_USER_TEXT_ENCODING, env_keep+="CHARSET LANG
LANGUAGE LC_ALL LC_COLLATE LC_CTYPE", env_keep+="LC_MESSAGES LC_MONETARY
LC_NUMERIC LC_TIME", env_keep+="LINES COLUMNS", env_keep+=LSCOLORS,
env_keep+=SSH_AUTH_SOCK, env_keep+=TZ, env_keep+="DISPLAY XAUTHORIZATION
XAUTHORITY", env_keep+="EDITOR VISUAL", env_keep+="HOME MAIL"
User *** may run the following commands on this host:
(ALL) ALL
_denyhosts
Уже пробовал добавить группу, sudoers
выполнив sudo visudo
и вставив строку:
%_denyhosts ALL=(ALL) ALL
Сохранение и повторная попытка не улучшают ситуацию.
решение1
Строка %_denyhosts ALL=(ALL) ALL
означает, что пользователи в _denyhosts
группе могут запускать любые команды от имени любого пользователя. Это не то, что вы пытаетесь сделать: вам нужно разрешить пользователю ******
запускать команды от имени пользователя _denyhosts
и группы _denyhosts
. Что-то вроде:
****** ALL = (_denyhosts : _denyhosts) ALL
решение2
Вам необходимо убедиться, что, несмотря на то, что пользователи из _denyhosts были добавлены в файл sudoers, пользователи, которым вы хотите разрешить выполнять эту команду, добавлены в группу _denyhosts в /etc/group.
$ sudo vi /etc/group
*snip*
_denyhosts:x:###:username1,username2,username3
Сохраните файл «группы» и повторите попытку.