Como configurar um IPS para proteger de diferentes ataques

Como configurar um IPS para proteger de diferentes ataques

IPS ou sistema de prevenção de intrusões é uma tecnologia usada na segurança da rede para examinar o tráfego da rede e evitar diferentes ataques, detectando insumos maliciosos. Além de apenas detectar insumos maliciosos como o sistema de detecção de intrusões, também impede a rede de ataques maliciosos. Pode impedir que a rede seja bruta, DOS (negação de serviço), DDoS (negação de serviço distribuída), explorações, vermes, vírus e outros ataques comuns. Os IPs são colocados logo atrás do firewall e podem enviar alarmes, soltar pacotes maliciosos e bloquear endereços IP ofensivos. Neste tutorial, usaremos Fail2ban, que é um pacote de software de prevenção de intrusões, para adicionar uma camada de segurança contra diferentes ataques de força bruta.

Como Fail2ban funciona

Fail2ban lê os arquivos de log (e.g. /var/log/apache/error_log) e recebe os IPs ofensivos que estão tentando muitas senhas com falha ou buscando explorações. Basicamente, Fail2Ban Atualiza as regras do firewall para bloquear IPs diferentes no servidor. Fail2ban também fornece filtros usando o que podemos usar para um serviço específico (e.g., apache, ssh, etc.).

Instalando Fail2ban

Fail2ban não vem pré-instalado no Ubuntu, então antes de usá-lo, temos que instalá-lo.

ubuntu@ubuntu: ~ $ sudo apt -get update -y
ubuntu@ubuntu: ~ $ sudo apt-get Install frily2ban

Depois de instalar Fail2Ban, inicie e ative o serviço Fail2ban usando a linha de comando.

ubuntu@ubuntu: ~ $ sudo systemctl start fall2ban
ubuntu@ubuntu: ~ $ sudo systemctl atabille fail2ban


Agora verifique o status do serviço Fail2ban para confirmar se ele começou ou não.

ubuntu@ubuntu: ~ $ sudo Systemctl status Fail2ban

Configurando Fail2ban para SSH

Podemos configurar Fail2Ban modificando/etc/fail2ban/prisão.arquivo conf. Antes de modificá -lo, faça um backup deste arquivo.

ubuntu@ubuntu: ~ $ sudo cp/etc/fail2ban/prisão.conf/etc/fail2ban/prisão.local

Agora vamos configurar o Fail2Ban para impedir que o serviço SSHD de insumos maliciosos. Open/etc/fail2ban/prisão.arquivo local em seu editor favorito.

ubuntu@ubuntu: ~ $ sudo nano/etc/fail2ban/prisão.local

Vou ao [padrão] Seção e insira parâmetros de configuração em [padrão] seção.

[PADRÃO]
ignoreip = 127.0.0.1/8 192.168.18.10/32
Bantime = 300
maxretry = 2
FindTime = 600

ignoreip é a lista de máscara CIDR, endereço IP ou host DNS separado por um caractere espacial. Adicione seu IPS confiável a esta lista, e esses IPs estarão na lista de permissões e não serão bloqueados pelo Fail2Ban, mesmo que realizem um ataque de força bruta no servidor.

Bantime é o momento em que um IP será bloqueado após fazer uma quantidade específica de tentativas com falha no servidor.

Maxretry é o número de tentativas com falha máxima após as quais um IP é bloqueado pelo Fail2Ban por um período específico de tempo.

Encontre tempo é a quantidade de tempo durante o qual se um host faz Maxretry tentativas fracassadas, será bloqueado.

Depois de configurar os parâmetros acima, agora configuraremos o serviço no qual as regras acima serão aplicadas. Por padrão, Fail2Ban possui filtros predefinidos para diferentes serviços, por isso não precisamos inserir entradas específicas para serviços. Habilitamos ou desativamos apenas serviços diferentes no arquivo de configuração. Open/etc/fail2ban/prisão.arquivo local em seu editor favorito.

ubuntu@ubuntu: ~ $ sudo nano/etc/fail2ban/prisão.local

Encontre o [sshd] seção no arquivo e insira os seguintes parâmetros na seção.

[sshd]
Ativar = true
porta = ssh
filtro = sshd
logPath =/var/log/auth.registro
maxretry = 3

habilitado define se este serviço está sendo protegido por Fail2ban ou não. Se ativado for verdadeiro, o serviço está sendo protegido; Caso contrário, não está sendo protegido.

porta Define a porta de serviço.

filtro refere -se ao arquivo de configuração Fail2ban usará. Por padrão, ele usará/etc/fail2ban/filtro.d/sshd.arquivo conf para serviço ssh.

LogPath Define o caminho para os logs, Fail2Ban monitorá para proteger o serviço de diferentes ataques. Para o serviço SSH, os registros de autenticação podem ser encontrados em/var/log/auth.log, então Fail2Ban monitorará este arquivo de log e atualizará o firewall, detectando tentativas de login com falha.

Maxretry define o número de tentativas de login com falha antes de ser bloqueado pelo Fail2ban.

Depois de aplicar a configuração acima para Fail2Ban, reinicie o serviço para salvar as alterações.

ubuntu@ubuntu: ~ $ sudo systemctl rein com falha2ban.serviço
ubuntu@ubuntu: ~ $ sudo Systemctl status Fail2ban.serviço

Teste Fail2ban

Configuramos Fail2Ban para proteger nosso sistema contra ataques de força bruta ao serviço SSH. Agora faremos tentativas de login com falha em nosso sistema de outro sistema para verificar se Fail2ban está funcionando ou não. Depois de fazer algumas tentativas de login fracassadas agora, verificaremos Fail2ban logs.

ubuntu@ubuntu: ~ $ cat/var/log/falha2ban.registro

Podemos ver que, após as tentativas de login fracassadas, o IP foi bloqueado por Fail2ban.

Podemos obter uma lista de todos os serviços para os quais Fail2Ban é ativado usando o seguinte comando.

ubuntu@ubuntu: ~ status de falha de falha2ban2ban


A figura acima mostra que ativamos o Fail2Ban apenas para o serviço SSHD. Podemos obter mais informações sobre o serviço SSHD especificando o nome do serviço no comando acima.

ubuntu@ubuntu: ~ status sshd de falha de falha2ban2ban

Fail2ban Unban automaticamente o endereço IP proibido após a faixa, mas podemos desencadear qualquer IP a qualquer momento usando a linha de comando. Isso dará mais controle sobre Fail2ban. Use o seguinte comando para descompactar o endereço IP.

ubuntu@ubuntu: ~ $ sudo fail2ban-client Set sshd Unbanip 192.168.43.35

Se você tentar iludir um endereço IP que não está bloqueado pelo Fail2ban, ele apenas lhe dirá que o IP não está bloqueado.

ubuntu@ubuntu: ~ $ sudo fail2ban-client Set sshd Unbanip 192.168.43.35

Conclusão

Para um administrador de sistema ou um engenheiro de segurança, é um grande desafio manter a segurança dos servidores. Se o seu servidor estiver sendo protegido pela senha, não por um par público e privado, então seu servidor será mais vulnerável a atacantes de força bruta. Eles podem entrar no seu sistema aplicando diferentes combinações de senha. Fail2ban é uma ferramenta que pode restringir os atacantes de lançar diferentes tipos de ataques, incluindo ataques de força bruta e ataques de DDoS ao seu servidor. Neste tutorial, discutimos como poderíamos usar o Fail2Ban para proteger nosso servidor de ataques diferentes. Também podemos usar Fail2Ban para proteger outros serviços, como Apache, Nginx, etc.