CrowdSec
é um Intrusion Prevention System (IPS) colaborativo, gratuito e open-source que analisa
comportamentos e responde ataques baseado em dados compartilhados por
sua grande comunidade de utilizadores. Para conhecer mais sobre este projeto clique aqui.
Como parceira oficial CrowdSec, a Cloudfence incluiu em seus repositórios o plugin para facilitar o processo de instalação. Com isto a instalação do plugin CrowdSec será feito 100% através da interface Web do OPNsense.
Atualização
Os pacotes do CrowdSec já estão disponíveis no repositório oficial OPNsense.
Pré-requisitos
Para instalar o plugin, é necessário que o repositório Cloudfence esteja instalado no OPNsense (versão 22.1). Caso, ainda não tenha o repositório Cloudfence ativo, basta seguir estes passos:
Introdução ao CrowdSec
Através da análise dos logs monitorizados, o CrowdSec detecta e faz o bloqueio de possíveis comportamentos malíciosos identificados.
A figura abaixo, retirada da documentação oficial do projeto, ilustra o funcionamento da pilha CrowdSec:
Fig. 1 - ref.: https://doc.crowdsec.net/docs/intro
Alguns conceitos importantes, da arquitetura da solução:
- Scenarios: o "scenarios" são arquivos em formato YAML que permitem a detecção de comportamentos específicos (ataque por ex.) nos logs analisados para posteriormente produzir um alerta.
- Decision: uma "decision" é a definição da ação a ser tomada contra um possível ofensor.
- CrowdSec Agent - O agente faz a interação entre a API local, CLI local, os bouncers e com a API central da CrowdSec, compartilhando e consumindo dados com a central.
- Bouncers - O "bouncer" é que toma uma ação que é disparada por um alerta consultando as "decisions" na API local do agente.
Instalação do CrowdSec no OPNsense
Com o repositório Cloudfence ativo e instalado, na console Web do OPNsense, vá até a página System / Firmware e clique na aba Plugins:
Fig. 2 - System: Firmware
- Para facilitar a localização do plugin, na caixa de pesquisa, digite: "crowd".
- Clique no botão '+' do plugin os-crowdsec para adicionar o plugin ao OPNsense - o plugin será instalado já com os pacotes de dependência (crowdsec e crowdsec-firewall-bouncer)
Será exibido um aviso que este plugin é fornecido por um terceiro (fora do repositório oficial OPNsense):
Fig. 3 - Confirmação de instalação
Caso concorde em continuar, será necessário clicar no botão Install
Configuração
Após instalado, a página de configuração do plugin deve ser acessada através do caminho - Service / CrowdSec / Settings aba Settings:
Fig. 4 - Services: CrowdSec: Settings
Ao habilitarmos o CrowdSec agent e o Firewall Bouncer iremos proteger o OPNsense contra milhares de endereços IPs de atacantes conhecidos (base de dados compartilhada da CrowdSec). O plugin no OPNsense por padrão tem a capacidade de analisar os logs dos acessos SSH e da WebGUI para detectar se há algum possível ataque de brute-force.
Para ativar o serviço marque as opções:
Fig. 5 - Services: CrowdSec: Settings
Marque as opções:
- Enable CrowdSec Agent
- Enable CrowdSec Firewall Bouncer
- Clique no botão Save
Serão criados dois novos Aliases de firewall: crowdsec_blacklists e crowdsec6_blacklists. O conteúdo destes aliases pode ser verificado em Firewall / Diagnostics / Aliases:
Fig. 6 - Firewall: Diagnostics: Aliases
Para bloquear a comunicação com os IPs destes Aliases, basta criar uma regra de firewall.
Exemplo de regras de bloqueio:
Fig. 7 - Firewall: Rules: Floating
Conclusão
Feito isto, seu OPNsense já conta com a proteção da CrowdSec!