Como (e por quê) desativar o login da raiz através do SSH no Linux

Fazer login como usuário root do Linux é uma prática ruim. Fazer login como root por meio de uma conexão SSH é ainda pior. Nós dizemos-lhe porquê e mostramos-lhe como evitá-lo.

índice

  1. A espada de dois gumes
  2. O usuário root e o acesso SSH
  3. Desabilitar acesso SSH para root
  4. Uma maneira mais segura de permitir acesso SSH root
  5. Entrada proibida

A espada de dois gumes

Você precisa de alguém com autoridade para possuir e gerenciar as partes do seu sistema operacional que são muito importantes ou muito sensíveis para os usuários comuns lidarem. É aí que entra a raiz. root é o superusuário todo-poderoso dos sistemas operacionais Unix e Linux.

A conta de usuário root, como todas as contas, é protegida por uma senha. Sem a senha do usuário root, ninguém mais pode acessar essa conta. Isso significa que ninguém mais pode usar privilégios e poderes de root. O outro lado é que a única defesa entre um usuário mal-intencionado e os poderes do root é essa senha. As senhas, é claro, podem ser adivinhadas, adivinhadas, vistas escritas em algum lugar ou forçadas.

Se um invasor mal-intencionado descobrir a senha do root, ele poderá fazer login e fazer o que quiser em todo o sistema. Com privilégios de root elevados, não há restrições sobre o que eles podem fazer. Seria como se o usuário root tivesse saído de um terminal sem fazer logout, permitindo acesso oportunista à sua conta.

Devido a esses riscos, muitas distribuições Linux modernas não permitem que o root faça login no computador localmente, muito menos por meio de SSH. O usuário root existe, mas não tem uma senha definida para ele. E, no entanto, alguém tem que ser capaz de gerenciar o sistema. A solução para esse enigma é o domínio sudo .

sudo permite que usuários designados usem temporariamente privilégios de nível raiz de sua própria conta de usuário. Você precisa se autenticar para usar sudo , o que você faz digitando sua própria senha. Isso lhe dá acesso temporário aos recursos de root.

Seus poderes de root morrem quando você fecha a janela do terminal em que foram usados. Se você deixar a janela do terminal aberta, ela expirará e retornará automaticamente ao estado normal do usuário. Isso fornece outro tipo de proteção. Ele protege você de si mesmo.

Se você costuma fazer login como root em vez de uma conta normal, qualquer erro cometido na linha de comando pode ser catastrófico. ter que usar o sudo para executar a administração significa que é mais provável que você se concentre e tenha cuidado com o que digita.

Permitir o login root via SSH aumenta o risco porque os invasores não precisam ser locais; eles podem tentar forçar seu sistema remotamente.

O usuário root e o acesso SSH

É mais provável que você encontre esse problema quando estiver administrando sistemas para outras pessoas. Alguém pode ter decidido definir uma senha de root para fazer login. Outras configurações devem ser alteradas para permitir que o root faça login via SSH.

Isso não acontecerá por acaso. Mas isso pode ser feito por pessoas que não entendem os riscos associados. Se você assumir o gerenciamento de um computador nesse estado, precisará informar aos proprietários por que é uma má ideia e, em seguida, reverter o sistema para uma operação segura. Se foi algo configurado pelo antigo administrador do sistema, os proprietários podem não saber disso.

Aqui está um usuário em um computador executando o Fedora, fazendo uma conexão SSH com um computador Ubuntu como o usuário root do computador Ubuntu.

 ssh [e-mail protegido]

O computador Ubuntu permite que o usuário root faça login através do SSH. No computador Ubuntu, podemos ver que uma conexão ao vivo está sendo feita a partir do usuário root.

 quien

O que não podemos ver é quem está usando essa sessão. Não sabemos se a pessoa do outro lado da conexão SSH é o usuário root ou alguém que conseguiu obter a senha do root.

Desabilitar acesso SSH para root

Para desabilitar o acesso SSH para o usuário root, precisamos fazer alterações no arquivo de configuração SSH. Ele está localizado em "/etc/ssh/sshd_config". Teremos que usar o sudo para escrever as alterações nele.

 sudo gedit /etc/ssh/sshd_config

Percorra o arquivo ou procure a string "PermitRootLogin".

Defina isso como "não" ou comente a linha colocando um hash " # "como o primeiro caractere na linha. Salve suas alterações.

Precisamos reiniciar o daemon SSH para que nossas alterações tenham efeito.

 sudo systemctl reiniciar ssh

Se você também deseja impedir logins locais, desative a senha de root. Estamos adotando uma abordagem de cinto e suspensórios e usando as opções -l (bloqueio) e -d (remover senha).

 sudo passwd root -ld

Isso bloqueia a conta e remove a senha da conta no negócio. Mesmo que o usuário root esteja fisicamente sentado em seu computador, ele não poderá fazer login.

Uma maneira mais segura de permitir acesso SSH root

Às vezes, você encontrará resistência gerencial para remover o acesso root via SSH. Se eles realmente não ouvirem você, você pode se encontrar em uma posição em que precisa redefini-lo. Se este for o caso, você deve ser capaz de comprometer de uma forma que reduza o risco e ainda permita logins remotos do usuário root.

Usar chaves SSH para estabelecer uma conexão por meio de SSH é muito mais seguro do que usar senhas. Como não há senhas envolvidas, elas não podem ser forçadas, adivinhadas ou descobertas de outra forma.

Antes de bloquear a conta root local, configure as chaves SSH no computador remoto para que o usuário root possa se conectar ao seu computador local. Então vá em frente e remova sua senha e bloqueie sua conta local.

Também precisaremos editar o arquivo "sshd_config" mais uma vez.

 sudo gedit /etc/ssh/sshd_config

Altere a linha "PermitRootLogin" para usar a opção "proibir senha".

Salve suas alterações e reinicie o daemon SSH.

 sudo systemctl reiniciar ssh

Agora, mesmo que alguém redefina a senha do usuário root, você não poderá fazer login via SSH com uma senha.

Quando o usuário root remoto faz uma conexão SSH com seu computador local, as chaves são trocadas e examinadas. Se a autenticação for aprovada, o usuário root se conectará ao computador local sem a necessidade de uma senha.

 ssh [e-mail protegido]

Entrada proibida

Recusar conexões remotas do usuário root é a melhor opção. Permitir que o root se conecte usando chaves SSH é a segunda melhor opção, mas ainda é muito melhor do que usar senhas.

  • O novo PC para jogos Aurora R15 da Alienware é super personalizável
  • Nossos telefones OnePlus favoritos de 2021 custam US $ 100

descubra mais conteúdo

O que é um amplificador integrado?

Google Pixel Watch também tem detecção de queda, mas não até o próximo ano

As melhores xícaras de café aquecidas de 2022

Como automatizar seu iPhone com base na hora, atividade ou localização

"Isso deve ter sido antes do meu tempo"

Por que a NASA enviou Snoopy para a Lua? – Revisão Geek

  • €€ Cafetaria
  • Cafés, sucos, sanduíches e saladas em um café moderno e iluminado com obras de arte nas paredes.
  • Opções de serviço : Comer lá · Take away · Não entrega ao domicílio
  • Endereço : C. del Parlament, 20, 08015 Barcelona
Ir arriba