Fazendo sua conexão remota por SSH mais segura

Esse artigo é uma compilação de dicas para otimizar a segurança de uma conexão remota via SSH. Aqui veremos como fazer limitações por usuários, alteração da porta padrão, restrição de acesso ao root dentre outras.

[ Hits: 26.872 ]

Por: leo genilhu em 08/04/2004


Introdução



O ssh é uma evolução do telnet, ferramenta essa criada para administração remota que permite conexões seguras entre hosts. Essa segurança é garantida com chaves de criptografia 1024 bits.

Uma ferramenta muito segura, porém que necessita de alguns cuidados na sua instalação e configuração. Existem várias ferramentas na internet que forçam um entrada na porta 22 (porta padrão SSH), ferramentas estas que exploram bugs em versões antigas do SSH. Para evitar este problema, vamos utilizar a versão 1.59 do daemon SSH. Rodando em um RH 9.0 o arquivo de configuração fica em /etc/ssh/sshd_config. Edite este arquivo com seu editor favorito.

Vamos iniciar mudando a porta padrão do nosso serviço para uma porta alta. Isto já ira dificultar um pouco uma invasão. Por exemplo, vamos usar a porta 2222 ou 2223.

NOTA: Para não ter problemas, faça um levantamento antes dos serviços e portas utilizados em seu servidor (nmap -oO localhost).

Agora vamos limitar o uso do serviço a determinados usuários. No arquivo de configuração /etc/ssh/sshd_config, adicione a linha:

allowUsers leo ivan koji eduardo

Observe que aqui não coloco todos os meus usuários, mais sim os que realmente necessitam de acesso remoto a máquina.

Além disso você pode negar este serviço a determinados IPs, que são suspeitos ou que tiveram alguma tentativa de invasão:

denyhosts 210.143.110.XXX

Um outro parâmetro super importante é o acesso de SSH pelo root. Você pode barrá-lo usando o seguinte parâmetro:

PermitRootLogin no

Com isso você pode administrar seu servidor remotamente, transformando um dos usuários acima em root usando o comando "su -", forçando o conhecimento de uma segunda senha.

Claro, estas são algumas dicas para otimizar seu SSH. Se mesmo assim se sentir inseguro, você pode criar filtros de acesso pelo seu firewall ou mesmo criar VPNs, mais como nem sempre isto é possível, espero valer apenas as dicas acima.

Um abraço,
Leo Genilhu

   

Páginas do artigo
   1. Introdução
Outros artigos deste autor

PHP: Programando com segurança

Segurança: Autenticando o PHP com HTTP (Authentication Required)

Criando backup do MySQL com o mysqldump

Sistema de identificação em rede (NIS)

Leitura recomendada

PHLAK :: [P]rofessional [H]acker's [L]inux [A]ssault [K]it

Principais formas de anonimato ao navegar na Internet

Como recuperar a senha de root usando uma live distro

OpenVPN se comportando como PPTP

Resenha do livro: Praticando a Segurança da Informação

  
Comentários
[1] Comentário enviado por gustavo_marcon em 08/04/2004 - 19:52h

legal, teu artigo, dicas básicas e de conhecimento da maioria, mas que de vez em quando ficam esquecidas e é bom que alguem lembre....

Valeu,

Gustavo

[2] Comentário enviado por mrluk em 09/04/2004 - 13:08h

Faltou um toque bastante importante:

- O protocolo 1 do SSH vem habilitado por default na maioria das distros. Com esse protocolo habilitado e um sysadmin não muito experiente, o uso de um exploit libera facilmente acesso root ao servidor!

Ponto para o Debian que vem com o protocolo 1 desabilitado por default! ;o)

É isso!

[3] Comentário enviado por cvs em 09/04/2004 - 13:37h

é complicado isso... por isso é melhor nao discutir. (sobre o comentario acima).

[4] Comentário enviado por gustavo_marcon em 09/04/2004 - 14:15h

Como fazer pra desabilitar esse protocolo 1? O que é exatamente?

Acho importante comentar...

[5] Comentário enviado por spyhunt3r em 10/04/2004 - 21:20h

Mto bom :)

[6] Comentário enviado por mrluk em 10/04/2004 - 23:24h

gustavo_marcon,

estarei postando o meu sshd_config na sessão de confs aqui do viva o linux!

a edição de apenas uma linha já torna o nosso ssh server bem mais segura! ;o)

Caso vc tenha alguma dúvida depois de ver o .conf, me manda um e-mail!

Um grande abraço,

[7] Comentário enviado por andersonmo7 em 10/03/2005 - 20:16h

Posso aplicar um parametro antonimo a "denyhosts ", como por exemplo, "allowhosts 192.168.254.X" ?

[8] Comentário enviado por cleyton17 em 07/05/2005 - 04:26h

Ola! estou com a mesma duvida do andersonmo7! vc ainda ta vivo?

[9] Comentário enviado por enemy100 em 23/04/2010 - 09:19h

como q se faz??


Contribuir com comentário