Como desabilito o login SSH remoto como root em um servidor?


54

Por questões de segurança, minha empresa quer que eu não permita que ninguém seja capaz de acessar nosso servidor Ubuntu como root remotamente através do SSH. Ainda queremos que a conta root exista, mas não queremos que ela possa ser acessada remotamente. Como eu faria isso?

Muito obrigado antecipadamente pelo seu tempo.

Respostas:


85

Suponho que você quis dizer fazer login através de SSH? Coloque a seguinte linha em /etc/ssh/sshd_config:

PermitRootLogin no

Se você deseja impedir que certos usuários façam login, coloque isso no arquivo de configuração:

DenyUsers root

Isso adota a abordagem da lista negra. A lista de permissões é geralmente preferível. Se a sua empresa precisa permitir que o robe adminos usuários fazem login no servidor, use a seguinte diretiva de configuração:

AllowUsers rob admin

Após fazer alterações no arquivo de configuração, reinicie o serviço ssh usando o comando:

sudo service ssh restart

Veja também a página do manual .


14
e sudo service ssh restartentrar em vigor
Maxim Yefremov

Não vejo o arquivo sshd_config, vejo este / etc / ssh / ssh_config.
Chinmaya B

@ChinmayaB Você provavelmente não instalou o servidor OpenSSH. Tentesudo apt-get install openssh-server
Lekensteyn

14

Edite o arquivo /etc/ssh/sshd_config, procure

PermitRootLogin

e defina-o no.


Se você fizer isso sem adicionar usuários, AllowUsers <username>isso não permitirá que ninguém faça o SSH?
JGlass

11
@JGlass Você pode estar confundindo esta resposta com a acima, que tem opções adicionais - essa linha específica apenas impede que a raiz faça login no SSH. Se houver outros usuários no sistema, todos os demais itens iguais, eles ainda poderão fazer login via SSH, a menos que você também faça DenyUsersesses logins.
Armadadrive

@armadadrive - ahh, obrigado pela correção e explicação!
JGlass

5

A configuração padrão é que a conta raiz seja bloqueada para que você não possa efetuar login como raiz remotamente. Você não precisa fazer mais nada, a menos que também queira ter certeza de que não pode efetuar login como root remotamente usando uma chave RSA. Obviamente, se você não quiser fazer isso, simplesmente não configure uma chave raiz.


11
Esse não era o padrão para minha máquina Linode Ubuntu 14.04. PermitRootLoginfoi definido para yese não há foi AllowUsersou DenyUserslinha de configuração. A menos que eu estou faltando alguma coisa, eu não acho que é seguro assumir que ele está bloqueado por padrão
andrewtweber

@andrewtweber, o login root não é proibido via ssh config, mas em todo o sistema, definindo a senha root como um valor inválido que você não pode inserir. Assim, como eu disse, você ainda pode fazer o ssh como root usando uma chave RSA, mas não com uma senha.
Psusi

ok obrigado, você pode adicionar essa explicação para sua resposta e então eu vou ser capaz de remover o meu downvote
andrewtweber

@andrewtweber, já está na minha resposta ..
psusi 16/01

sua explicação de como a conta raiz está bloqueada não está na sua resposta. De qualquer forma, não posso remover um voto negativo, a menos que sua resposta seja editada, então vá em frente e seja teimoso com isso, se quiser
andrewtweber
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.