Como restringir alguns comandos para admin no Linux (CentOS)

1

como restringir alguns comandos para administração no Linux (CentOS)

Eu tentei usar visudo na raiz e escrever

ABC ALL=ALL,!/bin/rm,!/bin/sudo

para restringir o usuário "ABC" a não remover alguns arquivos importantes.

Funcionou muito bem no usuário ABC, o Linux negou meus comandos quando eu digitei sudo rm -rf /etc/ ou remover arquivos importantes que precisam de superusuário.

Mas há um problema no script. Se eu escrever um script sobre sudo rm -rf /etc/ , esse script funcionou e excluiu meu /etc/ usando sudo para executar.

Portanto, visudo aparentemente não funciona no script. Como devo fazer?

Eu preciso que meu usuário administrador possa usar todos os comandos, mas não possa excluir meus arquivos de sistema.

    
por x652001 15.09.2017 / 17:57

1 resposta

3

I need my admin user can use all commands but can't delete my system files.

Isso não é possível (em particular, se você quiser proteger de algum especialista em Linux malicioso), porque a raiz uid 0 tem ou pode obter todos os privilégios. No entanto, leia também as capacidades (7) (específicas do Linux).

Se você quiser simplesmente evitar erros, você pode usar chattr (para a bandeira imutável). Mas um administrador determinado ainda pode remover esses arquivos "imutáveis" (primeiro removendo o sinalizador imutável).

(Eu acho que você está preocupado principalmente com os administradores júnior cometerem erros triviais, não por hackers maliciosos)

Sugiro, em vez disso, fazer backup regularmente de seu /etc/ (talvez em alguma máquina remota), o que é sempre uma boa coisa a fazer. E você também pode ter seu próprio rm (como um alias, uma função, outro executável ...) e decidir controlar a versão /etc/ (por exemplo, com git , veja etckeeper )

Leia também sobre os executáveis setuid e setreuid (2) (e, claro, execve (2) ....) chamada de sistema (este mecanismo é o bloco básico de proteção no Unix, e é usado por sudo & su & login ).

BTW, a confiança é principalmente uma questão social, e querer soluções puramente técnicas para questões sociais é insensato e ingênuo.

    
por 15.09.2017 / 18:29