Sudo Cmnd_Alias Argumentos opcionais

0

Eu gostaria de permitir que um comando seja executado sob o sudo com ou sem argumentos. Por exemplo, os dois devem funcionar:

 rm -f /etc/stuff
 rm /etc/stuff/item.txt

Para que isso funcione, preciso disso em sudoers:

 Cmnd_Alias ITEM_RM = /bin/rm * /etc/*, /bin/rm /etc/*

Que eu então atribuo a um grupo. Isso funciona. Mas isso me faz dobrar em todos os comandos. Eu gostaria de ter uma única entrada que faça as duas coisas:

 Cmnd_Alias ITEM_RM = /bin/rm {something goes here that does both} /etc/*

Eu sei que uma abordagem é envolver isso em um script. Eu não quero fazer isso. Tenho dezenas dessas entradas e preciso de todas elas para trabalhar com e sem conhecer os argumentos antecipadamente.

Também aceito que estou pedindo algo que seja um risco de segurança. Nenhum valor em me lembrar disso. Estou indo para segurança alguns , não tight . Eu preciso evitar que o peole cause muito dano ao servidor, mas temos um firewall matador e esse servidor não é acessível a partir dele, então a segurança rígida está no nível corporativo.

Pensamentos bem vindos!

    
por James Madison 16.05.2014 / 21:49

1 resposta

0

Minha experiência é que você não pode fazer isso com apenas uma declaração. Na verdade, o Cmnd_Alias é projetado exatamente para esse propósito.

Parece que você está tentando restringir os usuários de serem capazes apenas de remover entradas em / etc / stuff. E quanto às entradas em seus diretórios pessoais?

Por que vale a pena, lembre-se de que todos por padrão têm acesso ao comando "rm", então você não precisa conceder acesso explícito a eles. No entanto, eles só seriam capazes de agir em objetos para os quais a propriedade e as permissões se alinham. Você pode querer abordar seu problema a partir desse ângulo. (propriedade do grupo e associação, juntamente com configurações de umask).

    
por 25.07.2014 / 22:36