Por que precisamos usar o visudo em vez de modificar diretamente o arquivo sudoers?

76

Entendo que, se você quiser modificar quem pode usar sudo e o que eles podem fazer com isso, use visudo . Eu sei que não devo modificar diretamente o arquivo / etc / sudoers.

O que é que visudo modifica diretamente o arquivo? O que pode dar errado?

    
por Dason 24.12.2011 / 21:04

2 respostas

100

visudo verifica a sintaxe do arquivo antes sobrescrevendo o arquivo sudoers .

Se você usar um editor simples, atrapalhe a sintaxe e salve ... sudo (provavelmente) parará de funcionar e, como /etc/sudoers é apenas modificável por root , você está preso (a menos que você tem outra maneira de ganhar raiz).

Além disso, garante que as edições sejam uma operação atômica. Esse bloqueio é importante se você precisar garantir que ninguém mais possa atrapalhar suas alterações de configuração cuidadosamente consideradas. Para editar outros arquivos como root além de /etc/sudoers , há o comando sudoedit que também protege contra tais conflitos de edição.

    
por 24.12.2011 / 21:41
22

Na página do manual do visudo:

visudo locks the sudoers file against multiple simultaneous edits, provides basic sanity checks, and checks for parse errors. If the sudoers file is currently being edited you will receive a message to try again later.

Verifique também esta resposta do serverfault .

    
por 25.12.2011 / 03:05

Tags