Ir para conteúdo

[Linux] Protegendo seu SSH


Posts Recomendados

Bom dia cidadãos do XTibia!

 

Venho por meio desse pequeno e simples tutorial ensinar a aumentar a proteção do seu servidor contra invasões via SSH.

Como sabemos, o SSH é o meio padrão de nos conectarmos ao servidor Linux remotamente, e caso alguém consiga acessar o seu servidor via SSH, tem total e pleno controle sobre o mesmo. Deste modo é importante deixá-lo o mais seguro possível!

+ Nesse tutorial não vou ensinar como utilizar SSH Keys, que é o meio mais seguro de se conectar ao SSH. Motivo: É bem mais complicado do que parece, logo, precisa de um conhecimento maior. Caso alguém queira, me avise que farei um tutorial separado. Mas fique tranquilo! Esse tutorial vai proteger seu SSH com eficiência!

Vamos lá?

Pré-requesitos:

#01: Nesse tutorial vamos utilizar o nano para editar os arquivos. Normalmente o nano vem instalado nos servidores linux, porém, caso seu servidor não tenha o mesmo instalado, instale-o com o comando abaixo ou utilize o vim.

-> Ubuntu/Debian

apt-get install nano 

-> CentOS

yum install nano

1. Altere a porta do seu SSH:

1.1. Utilize o nano para editar o arquivo de configuração do SSH.

nano /etc/ssh/sshd_config

1.2. Altere a linha abaixo (aproximadamente linha 14):

Procure por:

#Port 22

Retire o # da variável e altere a porta para uma porta que não esteja sendo utilizada pelo seu servidor:

Port 2020

Atenção! Não se esqueça de desbloquear a nova porta do SSH no seu firewall!

Atenção! Não utilize portas como 80 e 7171 para o SSH, pois não funcionará uma vez que essas já estarão sendo utilizadas.

+ Não se esqueça de prestar atenção nas observações acima, pois caso esqueça de alguma delas você poderá ficar sem acesso ao seu SSH e precisará contatar seu suporte.

1.3. Saia do nano utilizando CTRL + X. Para salvar digite Y (para caso o sistema operacional esteja em inglês) ou S (para sistema operacional em porgutuês) e aperte ENTER.

1.4. Reinicie o SSH com o comando:

service sshd restart

Pronto!

2. Bloqueie o login pelo usuário root

 

+ Mas calma.. se eu bloquear o login pelo usuário root, como vou logar no SSH? Simples! Você vai criar um outro usuário sem permissão para nada, e usar ele pra logar no SSH, e depois você simplesmente alterna de conta. Assim, para invadir seu SSH o invasor precisará não só de 1 senha, mas sim de 2 senhas e 1 usuário!

 

2.1. Primeiro vamos adicionar um usuário com o comando:

useradd usuario

2.2. Agora vamos definir a senha do usuário criado:

passwd usuario

+ Ao usar esse comando você precisará digitar uma senha, apertar ENTER, digitá-la novamente e apertar ENTER de novo.

+ Esse novo usuário poderá executar certos comandos, mas terá permissões limitadas.

2.3. Abra uma nova conexão SSH e teste se você consegue logar com esse novo usuário criado. Caso consiga, avance no tutorial.

2.4. Agora, vamos novamente editar o arquivo de configuração do SSH.

nano /etc/ssh/sshd_config

Procure por (aproximadamente linha 43):

#PermitRootLogin yes

Substitua por:

PermitRootLogin no

2.5. Reinicie o SSH com o comando:

service sshd restart

2.6. Agora, quando for logar, faça da seguinte maneira:

2.6.1. Logue com o usuário que você criou.

2.6.2. Após logar com esse usuário, altere para o root com o comando:

su -

2.6.3. Logado como root com sucesso!

Pronto!

3. Utilize senhas complicadas:

Essa dica parece simples, mas é extremamente eficaz! Um dos métodos mais comuns de invasão é o que tenta várias senhas por segundo (não vou falar o nome por motivos éticos, quero ajudar a proteger, não a atacar). Se sua senha for fácil e seu Firewall e/ou iptables estiver mal configurado, esse método vai funcionar.

3.1. Utilize o comando abaixo para alterar a senha do root.

passwd

3.2. Evite senhas com nome, número de telefone e afins, como joao999 ou 33334444. Use senhas como: 4}rYT_2}hzTsRR? (essa senha foi gerada agora de maneira aleatória, por favor, não copiem essa senha, gerem outra - vai que alguém resolve fazer isso né.. tongue.png ).

Por enquanto é isso! Façam bom proveito! smile.png

(Esse tutorial foi completamente escrito por mim. Qualquer cópia deve ser previamente autorizada e conter os devidos créditos.)

 

Link para o comentário
Compartilhar em outros sites

Ótimo tutorial, ^^. Aqui, só consigo logar no terminal do meu Cluster a partir do meu PC, ensina pra galera como fazer isso também. happy.png

Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...

Ótimo tutorial, ^^. Aqui, só consigo logar no terminal do meu Cluster a partir do meu PC, ensina pra galera como fazer isso também. happy.png

 

Obrigado!

 

Sobre logar no terminal, me explica melhor o que está tentando fazer pra eu poder explicar :)

Link para o comentário
Compartilhar em outros sites

 

Obrigado!

 

Sobre logar no terminal, me explica melhor o que está tentando fazer pra eu poder explicar :)

 

Terminal aceitando conexões SSH a partir de um IP pré-definido (o meu).

 

Ex: você pode ter meu usuário e senha, mas não vai conseguir se conectar porque a máquina só aceita conexões SSH a partir do meu IP.

Link para o comentário
Compartilhar em outros sites

 

Terminal aceitando conexões SSH a partir de um IP pré-definido (o meu).

 

Ex: você pode ter meu usuário e senha, mas não vai conseguir se conectar porque a máquina só aceita conexões SSH a partir do meu IP.

Ah sim, farei um tutorial sobre isso :) O two-factor é uma boa opção de segurança também.

Link para o comentário
Compartilhar em outros sites

Faço isso em todas as minhas máquinas...

 

Faz certo :) A parte de deixar conectar só por um IP específico só é recomendada se seu IP de casa for fixo, caso contrário pode ter problemas.. Por isso é pouco usado. Mas farei o tutorial :)

Link para o comentário
Compartilhar em outros sites

meu ip não é fixo, mas eu uso dns free, prefiro o no-ip que tem um software que fica fazendo update de ip, é show.

Conheço o no-ip :) Bom, de qualquer maneira farei o tutorial.

Link para o comentário
Compartilhar em outros sites

Conheço o no-ip :) Bom, de qualquer maneira farei o tutorial.

 

é bom ter alguém que entende infra aqui na área, assim não me sinto mais só '-' kk

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...