Почему NOEXEC не предотвращает запуск указанной программы?

Я пробовал NOEXEC в моем CentOS6.4. Я редактировал файл /etc/sudo.conf как /etc/sudo.conf ниже:

 Path noexec /usr/libexec/sudo_noexec.so 

и /etc/sudoers :

 ssh ALL=(root) ALL,NOEXEC:/usr/bin/passwd 

Я уверен, что lib for noexec существует на правильном пути, но поскольку пользователь ssh все еще может сменить пароль. NOEXEC не оказал никакого влияния, может ли кто-нибудь дать какие-то предложения по этому поводу?

NOEXEC не предотвращает NOEXEC программ, но предотвращает программы из других программ. От человека:

aaron shanty = NOEXEC: / usr / bin / more, / usr / bin / vi

 This allows user aaron to run /usr/bin/more and /usr/bin/vi with noexec enabled. This will prevent those two commands from executing other commands (such as a shell). If you are unsure whether or not your system is capable of supporting noexec you can always just try it out and check whether shell escapes work when noexec is enabled. 

Если вы хотите, чтобы пользователи не выполняли определенную команду, посмотрите ! , например:

 ssh ALL=(root) ALL, !/usr/bin/passwd 

Обратите внимание, что эта строка не очень помогает, так как можно было бы создать копию /usr/bin/passwd под другим именем, скопировать ее на хост и установить соответствующие разрешения и т. Д.