Então eu fiz uma combinação de:
- Configuração do IPTables
- DenyHosts
- Configuração de SSH
Recebo muita tentativa de conexão SSH de um IP diferente no meu servidor (com um nome de usuário diferente). 1 a 5 por segundo. Parece um ataque de força bruta. O que posso fazer para evitar isso? Bloquear o IP? mudar a porta SSH? Algo mais?
Obrigado!
Então eu fiz uma combinação de:
O pacote DenyHosts é um que está disponível gratuitamente e bloqueará que "bots" tentem ataques repetidos em sua porta ssh.
Ótimo software para bloqueá-los.
Observação: ele também é incluído em muitas distribuições por padrão.
Mudar a porta ssh resolve muito bem. Nunca tive nenhum problema (é muito caro para os forçadores brutos varrerem o alcance uma vez que existem tantas máquinas com a porta defaut).
Não altere a porta (permanentemente) sem sentido contra ataques sofisticados e apenas crie obstruções. Boa segurança está em boa política, não obscuridade. Se você pode considerar limitar o acesso a um conjunto de IPs conhecidos, se você não puder considerar denyhosts , como mencionado acima. Você também deve falar com seu ISP sobre isso, talvez haja um ataque em um segmento de sua rede e eles não estão cientes.
Você pode encontrar o link útil para isso - você pode fazer algo assim: -
iptables -A INPUT -m recent --rcheck
--seconds 60 -j DROP iptables -A INPUT -i eth0 -d 192.2.0.1 -m recent --set -j DROP
Se você estiver configurando muitas falhas de diferentes endereços IP, seu servidor estará sendo alvo de um ataque distribuído de força bruta. alguns pontos-chave:
Então, etapas para proteger seu servidor SSH:
A exigência de autenticação baseada em chave não protege realmente o servidor ssh, protegendo a autenticação. Se você confiar apenas na autenticação baseada em chave para proteger o servidor, você se abre para qualquer potencial exploit contra o openssh. Se um exploit de 0day foi lançado contra o openssh e você estiver executando o ssh na porta 22 e contando com as chaves para "proteger" seu servidor, ele será hackeado dentro de algumas horas.
Uma prática muito melhor é não permitir que as pessoas se conectem ao servidor ssh em primeiro lugar.
+1 para alterar a porta.
Se você sempre tiver um IP estático, bloqueie todo o acesso de tudo, exceto desse IP.
É difícil bloquear IPs se você tiver um IP dinâmico ou se seu ataque de força bruta estiver vindo de vários IPs.
Se os IPs forem comuns, ou seja, é sempre um intervalo de 10 endereços IP que realizam o ataque, descubra qual provedor é o proprietário deles e envie um relatório de abuso com entradas de registro.
outro +1 para mudar de porta - no mínimo. Caso contrário, configure uma VPN e um firewall, exceto a conexão VPN. É o melhor dos dois mundos na minha opinião.
Se for um único (ou apenas alguns) IPs remotos tentando efetuar login, você pode instalar uma rota de host para o (s) IP (s), com um gateway de 127.0.0.1 (a interface de loopback). Dessa forma, eles não podem estabelecer uma sessão TCP, mas você corre o risco de ficar sem recursos do kernel (em 1-5 tentativas por segundo, mas deve estar tudo bem).
Isso já foi respondido, mas apenas para adicionar algo que não vejo mencionado ...
Você pode desativar o login root.
Se você fizesse isso no Centos, você mudaria o seguinte em / etc / ssh / sshd_config:
PermitRootLogin no
A maioria dos ataques de força bruta é contra o usuário root.
Certifique-se de que outros usuários do sistema não tenham nomes genéricos, por exemplo, 'admin' ou 'public' ou seu nome, por exemplo, 'dave'. O invasor teria que forçar o nome do usuário e a senha juntos, isso não acontecerá.
Tags ssh linux apache-2.2