sudo para comando com opções específicas

0

É possível configurar sudo para obter privilégios de root para um usuário para executar um programa com alguns switches especiais? por exemplo, como posso configurá-lo para o usuário admin para executar o comando netstat como a raiz apenas com as opções -r e -i ?

    
por Shahram Pezeshki 22.05.2015 / 16:42

4 respostas

1

Edite o arquivo sudores com visudo e adicione uma linha (ou quantas forem necessárias) como no meu exemplo

admin ALL=/bin/netstat -r
admin ALL=/bin/netstat -i

ALL= pode ser um nome de host, IP ou localhost

O arquivo sudoers é muito bem comentado, pelo menos no meu CentOS

    
por 22.05.2015 / 22:12
1

Basta adicionar as opções ao comando:

admin       ALL     = NOPASSWD: /usr/bin/netstat -i
admin       ALL     = NOPASSWD: /usr/bin/netstat -r

Então admin poderá executar sudo netstat -i , mas não sudo netstat etc.

    
por 22.05.2015 / 22:17
0

Crie um script

#!/bin/sh
netstat -i

chame supernetstat.sh (não esqueça a permissão 755, melhor 700) então você pode criar um comando alias no sudo e dar permissão ao usuário

    
por 22.05.2015 / 20:15
-1

Esta linha no arquivo sudoers funciona para eu permitir que um usuário execute useradd

someuser     ALL=/usr/sbin/useradd * -m

O * é um curinga, existem outros símbolos curinga, leia man sudoers

    
por 22.05.2015 / 23:05