> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://ajuda.fabweb.com.br/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Como proteger seu servidor contra ataques SSH utilizando Fail2Ban

# Introdução
Servidores Linux conectados à internet podem receber tentativas automáticas de acesso não autorizado através do serviço SSH. Essas tentativas normalmente utilizam robôs que testam milhares de combinações de usuário e senha.
Uma forma eficiente de reduzir esse tipo de ataque é utilizando o F**ail2ban**, uma ferramenta que monitora tentativas de login e bloqueia automaticamente IPs que realizam várias tentativas de acesso inválidas.
Neste tutorial vamos mostrar como instalar e configurar o F**ail2ban** para proteger o acesso SSH da sua servidor.

---

# Requisitos
Antes de iniciar, você precisa ter:
* Acesso **SSH ao servidor**.
* Permissões administrativas (usuário root ou sudo).

---

# Como instalar e configurar o Fail2Ban

### 1º Passo: Acessar o servidor via SSH
Conecte-se ao seu servidor Linux utilizando SSH.

Exemplo de conexão:
```
ssh root@IP_DO_SERVIDOR
```

Substitua **IP_DO_SERVIDOR** pelo endereço IP do seu servidor.

---

### 2º Passo: Instalar o Fail2Ban
Em servidores baseados em **Ubuntu ou Debian**, execute os comandos:
```
apt update
apt install fail2ban
```

Após a instalação, o serviço estará disponível no sistema.

---

### 3º Passo: Ativação do serviço
Para ativar o Fail2ban e deixá-lo funcionando, execute o seguinte comando:
```
systemctl enable --now fail2ban
```

Após a ativação, verifique se o serviço está funcionando corretamente com:
```
systemctl status fail2ban
```

Se o serviço estiver ativo, você verá o status **active (running)**.

---

### 4º Passo: Criar o arquivo de configuração
O Fail2Ban utiliza arquivos de configuração para definir quais serviços serão protegidos. Para iniciar a configuração crie o arquivo de configuração executando:
```
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
```

O novo arquivo (jail.local) será utilizado para personalizar as configurações de segurança de cada serviço.

---

### 5º Passo: Editar a configuração do SSH
Agora, abra e edite o arquivo criado:
```
nano /etc/fail2ban/jail.local
```

Localize a seção referente ao SSH. Normalmente ela deve estar assim na configuração padrão:
```
[sshd]
enabled = true
port = ssh
logpath = %(sshd_log)s
maxretry = 5
```

Isso significa que o Fail2Ban irá bloquear IPs após **5 tentativas de login incorretas**. Se estiver de acordo com o que você espera que aconteça na proteção do seu ambiente, feche e salve o arquivo (CTRL+X para sinalizar que irá fechar, Y para confirmar que deve salvar e enter para concluir).

---

### 6º Passo: Reiniciar o serviço
Após salvar as alterações, reinicie o Fail2ban para aplicar as configurações:
```
systemctl restart fail2ban
```

---

### 7º Passo: Verificar se o SSH está protegido
Para verificar se o SSH está sendo monitorado pelo Fail2Ban, execute:
```
fail2ban-client status
```

Você verá uma lista de serviços monitorados.

Para verificar especificamente o SSH:
```
fail2ban-client status sshd
```

O sistema mostrará os IPs que estão bloqueados atualmente.

---

# Informações importantes
* O Fail2ban bloqueia automaticamente IPs após múltiplas tentativas de login inválidas;
* Os bloqueios são temporários e ajudam a reduzir ataques automatizados;
* Essa proteção é MUITO importante em servidores que estão expostos à internet.

---

# Recomendação de segurança
Para aumentar ainda mais a segurança do seu servidor, recomendamos também:
* Altere sua senha root e utilize senhas fortes.
* Altere a porta padrão do SSH.
* Mantenha o sistema sempre atualizado.
* Se possível configure o acesso via troca de par de chaves.

---

Ficou com alguma dúvida? Nossa equipe está à disposição nos canais de atendimento para lhe auxiliar.