O sudo é controlado pelo arquivo /etc/sudoers
, que diz o que pode e não pode fazer. Eu não sei se você pode conseguir o que quer pela mesma razão que eu mencionei abaixo, no entanto, você pode criar um grupo de comandos assim:
Cmnd_Alias TESTAPPS = /opt/dev/myapp/myapp1, /opt/dev/myapp/myapp2
Você pode permitir que determinados grupos executem o sudo usando apenas esses comandos. Eu tenho esse conjunto no meu:
root ALL=(ALL) ALL
%wheel ALL=(ALL) ALL
Você também pode adicionar:
%development ALL=(TESTAPPS) ALL
Confusamente, o ALL no primeiro caso indica TODOS os hosts dos quais você está efetuando login, portanto você pode evitar que o sudo seja executado a partir de determinados hosts.
Apenas um aviso rápido - se você fizer isso e ativar o acesso de gravação a essa área, o usuário pode simplesmente copiar os comandos de / bin, / usr / bin ou qualquer outra coisa e executar o que eles gostam como root. Então eu poderia executar sudo /opt/apps/myapp/rm -rf /
e isso funcionaria. Você também precisa restringir onde esses comandos podem ser executados.