Configure o sudo para que um usuário em comum possa editar o / etc / fstab

1

Como posso configurar sudo para que um usuário comum específico possa editar /etc/fstab ? Eu pensei em editar /etc/sudoers.d file para fazer isso, mas como editamos /etc/fstab neste arquivo?

    
por pa4080 27.02.2018 / 17:01

2 respostas

1

Adicionar uma linha no sudoers.d com o software de edição favorito em um alias do cmd deve funcionar:

Cmnd_Alias EDITFSTAB = /etc/bin/vim /etc/fstab
username    ALL = (user) EDITFSTAB

Tenha cuidado, há um risco enorme de privilégios de escape, talvez você deva escrever um script de shell básico para restringir / controlar modificações do fstab SEM usar o editor (ou seja, "para essa modificação, pressione 1" e ecoa em fstab) .

    
por Simon Van Machin 27.02.2018 / 17:24
1

Crie um script simples, chamado editfstab e localizado em /usr/local/bin (para ser acessível como comando shell), e torne-o executável:

echo -e '#!/bin/sh\nnano /etc/fstab' | sudo tee /usr/local/bin/editfstab && sudo chmod +x /usr/local/bin/editfstab

Execute o comando sudo visudo -f /etc/sudoers.d/editfstab e adicione a seguinte regra como conteúdo do arquivo recém-criado:

ALL ALL=NOPASSWD: /usr/local/bin/editfstab

Neste ponto, cada usuário do sistema poderá editar /etc/fstab , sem senha, pelo comando:

sudo editfstab

Você pode estender a funcionalidade de /usr/local/bin/editfstab adicionando um recurso para fazer cópia de backup antes de editar:

#!/bin/sh
cp /etc/fstab /etc/fstab.bak
nano /etc/fstab
    
por pa4080 27.02.2018 / 17:15