Como instalar o Fail2Ban para proteger o servidor SSH no Arch Linux

O Fail2ban é um serviço de firewall poderoso, gratuito e de código aberto, usado para bloquear tentativas de login por força bruta em sistemas remotos. É simples e leve, oferecendo diversos filtros para monitorar o Apache, SSH e outros programas em busca de atividades suspeitas. Ele roda em segundo plano, monitorando os logs de diferentes serviços e bloqueando clientes que falham repetidamente nas verificações de autenticação. O Fail2ban protege seu servidor Linux contra diversas ameaças de segurança, como ataques de dicionário, DoS, DDoS e de força bruta.

Neste post, mostraremos como instalar o firewall Fail2Ban no Arch Linux.

Etapa 1 – Configurar o repositório

Por padrão, o repositório padrão está desatualizado no Arch Linux, então você precisará modificar a lista de espelhos padrão. Você pode fazer isso editando o arquivo de configuração da lista de espelhos:

nano /etc/pacman.d/mirrorlist

Remova todas as linhas e adicione as seguintes linhas:

Pontuação: 0,7, Estados Unidos
Servidor = http://mirror.us.leaseweb.net/archlinux/$repo/os/$arch
Pontuação: 0,8, Estados Unidos
Servidor = http://lug.mtu.edu/archlinux/$repo/os/$arch
Servidor = http://mirror.nl.leaseweb.net/archlinux/$repo/os/$arch
Pontuação: 0,9, Reino Unido
Servidor = http://mirror.bytemark.co.uk/archlinux/$repo/os/$arch
Pontuação: 1,5, Reino Unido
Servidor = http://mirrors.manchester.m247.com/arch-linux/$repo/os/$arch
Servidor = http://archlinux.dcc.fc.up.pt/$repo/os/$arch
Pontuação: 6,6, Estados Unidos
Servidor = http://mirror.cs.pitt.edu/archlinux/$repo/os/$arch
Pontuação: 6,7, Estados Unidos
Servidor = http://mirrors.acm.wpi.edu/archlinux/$repo/os/$arch
Pontuação: 6,8, Estados Unidos
Servidor = http://ftp.osuosl.org/pub/archlinux/$repo/os/$arch
Pontuação: 7,1, Índia
Servidor = http://mirror.cse.iitk.ac.in/archlinux/$repo/os/$arch
Pontuação: 10,1, Estados Unidos
Servidor = http://mirrors.xmission.com/archlinux/$repo/os/$arch

Salve e feche o arquivo e, em seguida, atualize todos os índices de pacotes com o seguinte comando:

Pacman - Syu

Passo 2 – Instale o firewall Fail2Ban

Por padrão, o pacote Fail2Ban está disponível no repositório padrão do Arch Linux. Você pode instalá-lo usando o seguinte comando.

pacman -S falha2ban

Após instalar o pacote Fail2Ban, inicie o serviço Fail2Ban e habilite-o para iniciar na reinicialização do sistema.

systemctl iniciar fail2ban
systemctl enable fail2ban

Etapa 3 – Proteja o SSH com o Fail2Ban

O SSH é um dos protocolos mais populares para gerenciar servidores remotos via linha de comando, sendo, portanto, vulnerável a ataques de força bruta. Nesta seção, mostraremos como proteger o SSH com o Fail2Ban. O arquivo de configuração padrão do Fail2Ban está localizado em /etc/fail2ban/jail.conf. É sempre recomendável criar um novo arquivo de configuração do Fail2Ban.

nano /etc/fail2ban/jail.local

Adicione as seguintes linhas:

[sshd]
ativado = verdadeiro
porta = ssh
filtro = sshd
caminho_log = %(sshd_log)s
backend = %(sshd_backend)s
maxretry = 3
tempo de banimento = 300
ignoreip = 127.0.0.1

Salve e feche o arquivo e, em seguida, reinicie o serviço SSH para aplicar as alterações.

systemctl restart fail2ban

Etapa 4 – Verificar Fail2Ban

Neste ponto, o Fail2Ban está instalado e configurado para proteger o servidor SSH contra ataques de força bruta. Agora você pode monitorar o seu Fail2Ban usando a ferramenta fail2ban-client.

Para verificar o status da jail SSH, execute o seguinte comando.

status fail2ban-client sshd

Você deverá ver a lista de todos os IPs bloqueados pelo Fail2Ban na seguinte saída:

Status da prisão: sshd
|- Filtrar
| |- Falhas atuais: 1
| |- Total de falhas: 8
| `- Correspondências do diário: _SYSTEMD_UNIT=sshd.service + _COMM=sshd
`- Ações
   - Atualmente banido: 1
   Total de banidos: 1
   - Lista de IPs bloqueados: 49.34.165.39

Para verificar o status de todas as prisões, execute o seguinte comando.

status do cliente fail2ban

Você obterá a seguinte saída.

Status
|- Número de presos: 1
`- Lista de jails: sshd

Você também pode consultar o registro do Fail2Ban para obter mais informações:

tail -f /var/log/fail2ban.log

Você deverá ver a seguinte saída.

2023-01-31 05:03:53,142 fail2ban.filter [54073]: INFO [sshd] Encontrado 49.34.165.39 - 2023-01-31 05:03:52
2023-01-31 05:04:03,144 fail2ban.filter [54073]: INFO [sshd] Encontrado 49.34.165.39 - 2023-01-31 05:04:02
2023-01-31 05:04:03,339 fail2ban.actions [54073]: AVISO [sshd] 49.34.165.39 já banido
2023-01-31 05:04:07,686 fail2ban.filter [54073]: INFO [sshd] Encontrado 49.34.165.39 - 2023-01-31 05:04:07
2023-01-31 05:04:11,435 fail2ban.filter [54073]: INFO [sshd] Encontrado 49.34.165.39 - 2023-01-31 05:04:11

Etapa 5 – Trabalhando com a linha de comando do Fail2Ban

O Fail2Ban também permite bloquear e desbloquear IPs remotos manualmente através da linha de comando.

Para desbloquear um endereço IP bloqueado, execute o seguinte comando:

fail2ban-client set sshd unbanip remote-ip

Se você deseja bloquear um endereço IP não confiável, execute o seguinte comando:

fail2ban-client set sshd banip remote-ip

Conclusão

Parabéns! Você instalou e configurou com sucesso o firewall Fail2Ban no Arch Linux. Seu servidor agora está protegido contra tentativas de ataque de força bruta. 

0 0 votos
Classificação do artigo
Inscrever-se
Notificar de
guest
0 Comentários
mais antigos
mais recentes Mais votado
Rolar para cima
0
Adoraria saber sua opinião, comente.x