Como posso permitir que um usuário su para outro sem permitir acesso root?

49

Eu gostaria de permitir que determinados usuários suem para outra conta de usuário sem precisar saber a senha dessa conta, mas não permitir o acesso a qualquer outra conta de usuário (por exemplo, root).
Por exemplo, gostaria de permitir que o Tom DBA su para o usuário do oracle, mas não para o usuário do tomcat ou root.

Eu imagino que isso poderia ser feito com o arquivo / etc / sudoers - é possível? Se sim, como?

    
por gharper 02.06.2009 / 17:13

3 respostas

39

Sim, isso é possível.

Em / etc / sudoers , o item imediatamente após os iguais é o usuário que o comando poderá executar como.

tom  ALL=(oracle) /bin/chown tom *

O usuário (tom) pode digitar sudo -u oracle / bin / chown tom / home / oracle / oraclefile

    
por 02.06.2009 / 17:18
37

Adicione ao seu / etc / sudoers algo como

tom ALL=(oracle) ALL

Em seguida, o usuário tom deve ser capaz de usar o sudo para executar as coisas como usuário oracle com a opção -u, sem deixar tom

Ou seja. obtendo um shell como user oracle (bem, dado que seu sudo é novo o suficiente para ter a opção -i).

sudo -u oracle -i
    
por 02.06.2009 / 17:26
7

Para APENAS fornecer os recursos da pergunta, adicione o seguinte ao / etc / sudoers:

tom            ALL=(oracle)    /bin/bash

Então o tom pode:

sudo -u oracle bash -i
    
por 11.12.2014 / 23:44