Desativar Root - o que todos os problemas irão surgir?

0

Eu tenho um servidor linux (Ubuntu 14) que eu acesso usando root e SSH keys (ou seja, nenhuma senha root). Eu também criei um non-root-user (e um non-root-user's-password correspondente) com sudo privilégios.

Meu host recomenda desativar o root por motivos de segurança e, em seguida, usar sudo quando necessário.

Existem 2 questões que eu estou tentando entender:

  1. Se eu desativar o root, tenho certeza de que não será possível SSH no meu servidor com o usuário raiz ( root@ip-address ), por isso usarei o non-root-user e %código%. Mas isso não parece seguro porque alguém pode estar ouvindo na rede e roubar o nome de usuário e senha.

  2. Se eu desativar o root e, em seguida, usar o comando non-root-user's-password do sudo , como o servidor será autenticado para permitir o acesso root? Usará o non-root-user para fazer isso?

Atualização: Eu estive pensando errado o tempo todo. Alguém acabou de me lembrar que, quando se usa SSH keys , é solicitado um a sudo , não a non-root-user's-password senha. Então a resposta é óbvia então.

    
por thanks_in_advance 28.04.2015 / 02:25

2 respostas

4

O objetivo de desativar o login da raiz do SSH é exigir de você duas senhas para se tornar root remotamente - uma de um usuário padrão que tenha acesso SSH e, em seguida, dessa conta, à raiz. Isso evita que os invasores adivinhem as senhas de raiz remotamente - eles precisam adivinhar duas senhas para obter raiz remotamente.

But this doesn't seem secure because someone could be listening in on the network and steal the username and password.

O "S" no SSH significa secure - contanto que você esteja usando SSHv2 e cifras strongs (verifique seu sshd_config contra isso - link - se preocupado) não há uma possibilidade útil de que alguém possa farejar qualquer coisa a menos que suas chaves estejam comprometidas .

sshd verifica sua senha quando você faz login usando sshd - os comandos executados depois disso não são verificados por sshd - incluindo sudo , su , etc.

    
por 28.04.2015 / 02:33
1

SSH significa Secure Shell. Nenhuma senha é enviada de imediato. ele usa criptografia de chave pública para verificar sua identidade e proteger as comunicações. Funciona para root , funciona para todos.

Se você adicionar non-root-user à lista de acesso apropriada ( permitindo-lhe sudo ), então você pode gerenciar seu servidor com força total usando essa conta.

    
por 28.04.2015 / 02:30