É realmente uma prática ruim deixar "PermitRootLogin yes" em um servidor de produção? [fechadas]

3

Um dia (4 anos atrás), eu reiniciei meu servidor. Depois que a reinicialização foi concluída, tentei fazer o login como de costume com minha conta regular (não raiz). Naquela época, eu tinha PermitRootLogin no .

Eu recebi a resposta

The system is going down on Sun Aug 16 00:43:48 2009

e não conseguiu entrar. Mas não era verdade, o servidor não estava indo para o desligamento. Ele havia desligado, mas já estava funcionando. Na verdade, notei que, por algum motivo misterioso, o arquivo /etc/nologin , criado por shutdown não foi excluído.

Quando o arquivo /etc/nologin existe, o SSH não permite que nenhum usuário faça o login, exceto root .

Como PermitRootLogin foi definido como «no», não consegui fazer login e fui forçado a reinicializar meu servidor no modo de recuperação, montar o sistema de arquivos, excluir o arquivo /etc/nologin e reinicializar.

Então, o que você acha de deixar PermitRootLogin definido como "yes", mas desabilitar sua senha ( passwd -l root ), de modo que somente a conexão de chave SSH seja permitida para o root?

    
por Fox 20.07.2013 / 04:02

2 respostas

7

O sshd já suporta o cenário que você deseja:

PermitRootLogin without-password

Isso permite que o root use qualquer método de autenticação, exceto senha.

Para um cenário de sysadmin único, tudo bem. Embora, como foi discutido ad nauseam aqui e em outros lugares, se você tiver vários sysadmins, nenhum deles deve estar logado como root.

    
por 20.07.2013 / 04:36
4

Em um sistema onde você é o único administrador, tudo bem.

Mas organizações com muitos sistemas e muitos administradores precisam de auditoria funcional. Isso significa que as credenciais compartilhadas devem ser minimizadas, mesmo que sejam chaves ssh. Caso contrário, você nunca seria capaz de saber quem realizou a ação.

    
por 20.07.2013 / 04:14

Tags