Por que o sudo -i não respeita o arquivo sudoers?

1

Para garantir que a variável de ambiente PATH adequada seja configurada, estou usando as opções sudo -i , mas estou descobrindo que o arquivo sudoers não está sendo respeitado.

Aqui está minha configuração:

/etc/sudoers :

Defaults    env_reset

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL) ALL
user    ALL=(ALL) ALL
user    ALL=NOPASSWD: /usr/local/bin/chef-solo

A execução de sudo chef-solo -v não solicita uma senha. A execução de sudo -i chef-solo -v solicitará uma senha.

    
por tjwallace 12.02.2013 / 21:06

2 respostas

4

sudo -i executa seu shell, não o comando. Ele passa o comando para o shell.

    
por 12.02.2013 / 21:25
0

Para o sudo -i funcionar sem uma senha, a regra que usa o alias ALL como o comando a ser executado precisa do sinalizador NOPASSWD.

No meu local de trabalho atual, a política proíbe que isso seja usado para qualquer comando que possa ser executado como raiz (incluindo su). Em vez disso, usamos o NOPASSWD em conjunto com o usuário run-as não raiz para alternar as contas sem usar su, como na regra a seguir:

% group ALL = (usuário) NOPASSWD: TODOS

Isso permite o uso de "sudo -iu user" e "sudo -u user command and args".

    
por 12.02.2013 / 23:27

Tags