1. Home
  2. Cloud Server PRO
  3. Como melhorar a segurança dos servidores – Cloud
  1. Home
  2. VPS Locaweb
  3. Como melhorar a segurança dos servidores – Cloud

Como melhorar a segurança dos servidores – Cloud

Abaixo listamos algumas boas práticas para aumentar a segurança de seu servidor, evitando ataques, invasões e/ou perdas de dados. Vale ressaltar que as práticas sugeridas são apenas dicas e que, sozinhas, podem não garantir 100% de segurança em seu ambiente.

Dicas
Não permitir acesso root

Evite realizar o acesso ao seu servidor Linux via usuário root, prefira sempre logar no ambiente com um usuário comum e assumir, então, o acesso root com o comando sudo su ou sudo -i. Lembrando que:

  • Ao utilizar o comando su, é necessário informar a senha do root;
  • Com o comando sudo, basta apenas a senha do usuário comum;

Antes de bloquear o acesso root, lembre-se de já ter criado um usuário comum. Veja abaixo o exemplo de comando em Linux para criar um usuário:

root@cpro36320:~# adduser wsilva
  • Para bloquar o root, você deverá editar o arquivo /etc/ssh/sshd_config:
root@cpro36320:~# vim /etc/ssh/sshd_config
  • A linha com o conteúdo PermitRootLogin yes deve ser alterada para PermitRootLogin. Depois, não se esqueça de gravar e sair do arquivo de configuração e, em seguida, reiniciar o serviço de SSH:
root@cpro36320:~# sudo service ssh restart ssh stop/waiting ssh
start/running, process 30751

root@cpro36320:~#

Mudar a porta do SSH

Apesar de o bypass ser uma mudança muito fácil de ser realizada, o simples fato de alterar a porta padrão em que o serviço roda dificulta a ação de robôs mais simples. Consequentemente, cada passo que você adicionar para dificultar um acesso não autorizado, ajuda.

Para mudar a porta padrão do serviço de SSH, basta alterar a diretiva Port no arquivo /etc/ssh/sshd_config, citado na dica anterior. Para o serviço de SSH responder, por exemplo, na porta 2222, basta fazer a alteração no arquivo e reiniciar o serviço:

root@cpro36320:~# vim /etc/ssh/sshd_config

# What ports, IPs and protocols we listen for Port 2222

# Port 22 root@cpro36320:~# service ssh restart ssh stop/waiting
ssh start/running, process 28867

root@cpro36320:~#

Mensagem que iniba o acesso

Essa é uma técnica usada para assustar a atacante mais inexperiente.

  • No arquivo /etc/ssh/sshd_config, descomente a opção banner:
root@cpro36320:~# vim /etc/ssh/sshd_config Banner /etc/issue.net
  • No arquivo /etc/issue.net, colocamos o texto e ascii art, se tivermos:
root@cpro36320:~# cat /etc/issue.net
##############################################################
# All connections are monitored here. #
# Disconnect IMMEDIATELY if you are not an authorized user. #
# LAWS will be applied in case of RULES VIOLATION. #
##############################################################

Em seguida, basta reiniciar o serviço SSH e acessar novamente para ver a mensagem inserida.

Bloquear ataques de bruteforce

Para bloquear ataques de bruteforce, existe algumas ferramentas como denyhosts e fail2ban, que bloqueiam, temporariamente, o endereço IP do atacante para qualquer tentativa de acesso via SSH. O fail2ban pode ser configurado para bloquear acesso a outros serviços como Apache, Asterisk e MySQL-auth, entre outros.

Você também pode personalizar as ações a serem tomadas, mais do que apenas bloquear o atacante no iptables, como enviar e-mails de notificações de alerta.

Fail2ban

Utilize o gerenciador de pacotes em nossa Distribuição Linux:

  • Para CentOS, RedHat, Fedora e similares:
root@cpro36320:~# yum install fail2ban
  • Para Debian, Ubuntu, Mint e similares:
root@cpro36320:~# apt-get install fail2ban

O arquivo de configuração do fail2ban fica em /etc/fail2ban/jail.conf. Você deve se ater aos seguintes parâmetros:

  • ignoreip: define que redes serão ignoradas do monitoramento. Deve ser declarado no formato de CIDR, ex.: 192.168.1.0/255.255.255.0 ou 192.168.1.0/24;
  • bantime: tempo em segundos que o atacante será banido;
  • maxretry: define o máximo de tentativas permitidas;
  • banaction: define qual será a ação que o fail2ban vai tomar, o padrão é bloquear o acesso a todas as portas via iptables.

Essas configurações são para qualquer serviço e ficam dentro de [DEFAULT]. As diretivas específicas para acesso SSH estão agrupadas pela marcação [ssh] e, dentre elas, destacam-se as seguintes:

  • enable: habilita o serviço;
  • port: define a porta a ser monitorada para o serviço;
  • filter: define o filtro que será usado pelo ao analisar os arquivos de logs;
  • logpath: define o caminho para o arquivo de log que será usado durante o monitoramento;
  • maxretry: usado para sobreescrever o valor padrão de tentativas global.

O mais interessante é que você pode ver os endereços IPs sendo bloqueados e desbloqueados no log:

root@cpro36320:~# tail -f /var/log/fail2ban.log

Permitir acesso por chave ao invés de senha

Esta técnica consiste em gerar um par de chaves (uma chave pública e uma chave privada) e enviar a chave pública para o servidor. Ao acessar o servidor, não será mais necessário digitar a sua senha.

Para criar a chave, veja nosso procedimento.

Redes privadas

Uma técnica muito eficaz é colocar os servidores em uma rede privada inacessível. Nessa mesma rede, deixe um servidor exclusivo para acesso, chamado bastion. O acesso a qualquer servidor é feito via bastion.

Servidores windows

Algumas dicas se baseiam em técnicas que podem ser aplicadas também em servidores Windows, porém, devemos ter atenção com outras brechas de segurança.

Mantenha seus servidores sempre atualizados: sempre instale as atualizações de segurança disponibilizadas pela Microsoft, pelo menos uma vez por mês, elas normalmente corrigem falhas que podem ser exploradas por atacantes mal intencionados.

  • Basta ir em Control Panel > System and Security > Windows Update para verificar se existe alguma atualização disponível. Você pode aproveitar para checar o que será alterado com a atualização. Isso o ajuda a se prevenir e instalar as atualizações disponíveis.

Bloqueie o acesso remoto para administradores: usuários administradores têm muitos privilégios. Não é seguro acessar o servidor diretamente com esse tipo de usuário. Assim como no Linux é recomendado bloquear o acesso, se necessário, faça login com um usuário comum e execute os programas que precisa como administrador. Lembre-se de que é possível o acesso por meio do painel de administração da Locaweb.

  • No Windows, para remover esse privilégio de acesso remoto, devemos acessar Computer Configuration > Windows Settings > Security Settings > Local Policies > User Rights Assignment.

Utilize firewalls: execute as tarefas do servidor com o firewall habilitado. Somente libere as portas que são necessárias para que a aplicação relacionada ao servidor seja acessada. Você pode acessar o Firewall do Windows 2012 Server pelo Server Manager > Tools > Windows Firewall with Advanced Security.

DMZ

Assim como no Linux, mostramos a técnica de acesso via Bastion no Windows. É recomendado que seu servidor esteja em uma rede DMZ, protegendo sua rede interna ou privada.

Atualizado em 7 de maio de 2019

Este artigo foi útil ?

Artigos relacionados