Como vocês devem saber, tenho algumas VPS’s que uso para fins de trabalho e testes, apesar de serem VPS’s não gerenciadas (o fornecedor só te dá suporte em problemas de conexão e te fornece o sistema) nunca tive nenhum grande problema com as máquinas, seja na época que eu usava a godaddy, mochahost ou agora com a ramnode, porém, recentemente ao analisar os logs do report diário, identifiquei que as máquinas vem sendo alvo de tentativas de brute force.

tentativa_bf_1

tentativa_bf_2

tentativa_bf_3

Procurando uma solução para este problema, me deparei com o DenyHosts, que basicamente monitora os logs de acesso e bloqueia os ips que estão tentando um brute force, nesse post vou explicar como instalar e configurar essa belezinha.

primeiramente, caso esteja utilizando CentOS, RedHat ou Fedora, basta executar o seguinte comando no console.


yum --enablerepo=epel install denyhosts

depois de rodar esse comando super difícil o DenyHosts já estará instalado, o arquivo de configuração geralmente fica em /etc/denyhosts.conf, os ips permitidos ficam no arquivo /etc/hosts.allow já os ips bloqueados ficam no arquivo /etc/hosts.deny.

existem algumas opções importantes de alterar, caso queira receber o report por email basta incluir o email no arquivo de configuração e configurar o smtp para envio do email.

para adicionar o DenyHosts na inicialização do sistema, basta rodar o seguinte comando.


chkconfig denyhosts on

service denyhosts start

chkconfig --list

chkconfig é uma ferramenta capaz de gerenciar a inicialização/finalização de múltiplos serviços, neste último comando basta verificar se o denyhosts está na lista que vai aparecer, vale lembrar que por padrão o Denyhosts só bloqueia os acessos via SSH, para alterar para bloquear o acesso dos ips da blacklist em todos os serviços basta comentar a opção de bloqueia por SSHD e descomentar a opção SERVICE ALL.

Vou deixar para download esse pequeno script PHP que eu estava usando para executar um job diário do Cron, modifique conforme sua necessidade.

denyhosts.zip

VN:F [1.9.22_1171]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)