Resposta revisada dos comentários: se você colocar diretivas abaixo de #includedir
, elas serão ignoradas. Mova a linha ao lado das definições do grupo sudo
ou admin
ou coloque-o em um arquivo separado em /etc/sudoers.d/
.
Eu tenho dois usuários no meu sistema: itsadok
, meu usuário principal, e elasticsearch
, um usuário com um ulimit diferente para executar o ElasticSearch.
Eu gostaria de poder executar coisas como o usuário secundário sem ser solicitada a senha toda vez.
Adicionei a seguinte linha a /etc/sudoers
:
itsadok ALL=(elasticsearch:elasticsearch) NOPASSWD: ALL
A maneira que eu entendo, isso deve permitir que o usuário, em qualquer host, execute qualquer comando como (usuário ou grupo) elasticsearch sem uma senha. No entanto, tentar algo como
itsadok@dev001$ sudo -u elasticsearch ls
me pede uma senha. Reiniciar a máquina não ajudou.
O que estou fazendo de errado?
UPDATE :
Acontece que a ordem das linhas em sudoers
é significativa. Coloquei a linha em "Especificação de privilégio de usuário", que parecia o lugar certo, mas a linha do grupo %admin
que veio depois estava substituindo a configuração.
Colocar a mesma linha no final do arquivo sudoers corrigiu o problema.
Resposta revisada dos comentários: se você colocar diretivas abaixo de #includedir
, elas serão ignoradas. Mova a linha ao lado das definições do grupo sudo
ou admin
ou coloque-o em um arquivo separado em /etc/sudoers.d/
.
Siga estas etapas:
sudo visudo -f /etc/sudoers
usernameusedforlogin ALL=(ALL) NOPASSWD:ALL
esc :wq!
Tags sudo