Fazer coisas de superusuário com usuário normal

1

EDITAR

Leia a resposta de janos abaixo.

É mais comum usar chaves SSH para acessar uma raiz diretamente.

Eu quero proteger o acesso SSH ao meu servidor. Uma coisa que eu li em todos os lugares é desativar o login do usuário root.

Para ainda ter acesso via SSH eu criei outro usuário via sudo adduser john

Como ainda posso fazer coisas com raiz nesta conta?

sudo command solicita uma senha do usuário, mas concede john not in sudoer file. Action will be reported . Quando eu uso su eu logar como root, o que eu vou desativar.

Como posso fazer root coisas com a conta normal john ?

    
por OrangeTux 15.06.2012 / 23:40

4 respostas

2

Você deve editar /etc/sudoers usando o comando visudo e adicionar uma linha para o usuário john .

Provavelmente, você desejará adicionar uma linha como john ALL=(ALL) ALL . Então você pode emitir comandos usando sudo (rodando como john ) e, se desejar, desabilitar o usuário root, ou pelo menos usar uma senha muito strong para isso - essa seria a minha escolha.

Além disso, a maioria das versões do SSH deve ter o login root desativado por padrão; isso significa você não pode logar como root sobre SSH , mas você pode usar o SSH como usuário e então tornar-se root com su . Em caso de dúvida, verifique a instrução PermitRootLogin no arquivo /etc/ssh/sshd_config . A partir do manpage:

   PermitRootLogin
          Specifies whether root can log in using  ssh(1).   The  argument  must  be
          ''yes'',  ''without-password'',  ''forced-commands-only'', or ''no''.  The
          default is ''yes''.
    
por 15.06.2012 / 23:46
1
  • Se você já estiver logado como root, usar sudo será inútil.

  • Para permitir que john ganhe privilégios de root, basta executar

    usermod john -G admin
    

    em uma instalação padrão do Ubuntu, já que ele adiciona john ao grupo admin (implica privilégios de root).

    Para outras distribuições, você pode consultar /etc/sudoers para um grupo com esse privilégio.

  • Desativar root é bom, mas um usuário com privilégios de root ainda pode fazer o que quiser.

    Não fazer login como root só tem vantagens se você fizer isso por qualquer um dos seguintes motivos:

    • Evitar alterações acidentais no seu sistema ( rm -rf / , malware, etc.).

      sudo su permite que você se torne root depois de efetuar login como usuário com privilégios de root.

    • Você usa outra coisa que não a senha do usuário para autenticar (por exemplo, chaves privadas).

      Neste caso, o comando sudo ainda requer a senha do usuário, por isso adiciona uma camada extra de segurança (laptop desacompanhado, etc.).

por 15.06.2012 / 23:57
1

Vale a pena notar que permitir login root com ssh é menos inseguro do que a prática de usar su root . Este post na lista de discussão do Debian por Simon Kirby explica muito bem:

link

Permitir login root apenas com chaves ssh pode ser mais seguro que a prática de sudo , mas não sou especialista. Por que vale a pena, a configuração para isso é:

PermitRootLogin without-password
    
por 17.06.2012 / 09:27
0

Desabilite o login root via ssh é inteligente. Mas não há razão para não su root quando você faz o login. Certifique-se de que ambas as contas tenham senhas strongs e instale o fail2ban para evitar incêndios florestais - desculpe, tentativas de crack.

    
por 15.06.2012 / 23:48

Tags