Snort_INLINE: Proteção total
O Snort_Inline é uma versão vitaminada do famoso IDS (detector de intrusão) Snort. Ele trabalha em parceria com o Iptables, desta forma está apto a não só alertar quando intrusões são detectadas, mas também a BLOQUEAR imediatamente os pacotes que estão gerando estes alertas, ou seja, os possíveis atacantes. Vem com muitas regras pré-configuradas.
Parte 3: Parte divertida - a prática
Tudo ok. Agora vamos testar o funcionamento do Snort_inline.
Digite:
# iptables -I INPUT -p tcp --dport 80 -j QUEUE
Desta forma adicionamos um regra ao iptables que direciona todos pacotes que tem como destino a máquina local e a porta 80 para uma fila (queue). ATENÇÃO que fazendo isso você não irá conseguir navegar, pois não receberá resposta dos sites, pois o iptables recebe os pacotes e não os processa, apenas coloca-os em um fila, para que outro programa entre nesta fila e processe os pacotes.
No caso este programa é o Snort_inline. Agora rodamos o Snort_inline para processar os pacotes desta fila e decidir se tem acesso permitido ou são barrados.
# snort_inline -c /path_to/snort_inline.conf -Q -N -l /path_to_log/ -v
Desta forma rodamos o snort_inline consultando a QUEUE e logando os alerts. Se você ver uma mensagem parecida com:
__== Initialisation Complete ==__
O snort_inline está funcionando corretamente. E no nosso caso a navegação foi restabelecida, porém agora temos um proteção extra sobre os pacotes direcionados à porta 80. É possível generalizar a regra do iptables para que TODOS pacotes externos (tcp) passem pela vistoria do snort_inline, para tanto a regra seria:
# iptables -I INPUT -p tcp -j QUEUE
Agora basta personalizar as regras (rules) para adequar ao seu caso. As regras do Snort ficam no diretório do "snort", subdiretório "rules". Existem muitas regras que o Snort nos trás de brinde, cabe a você escolher quais usar e quais não usar. Os logs com os alerts e etc tem sua localização padrão em /var/log/snort_inline/snort_inline_fast (modo sucinto) e /var/log/snort_inline/snort_inline_full (modo completo).
Agora divirta-se a vontade com sua nova camada de segurança :)
Digite:
# iptables -I INPUT -p tcp --dport 80 -j QUEUE
Desta forma adicionamos um regra ao iptables que direciona todos pacotes que tem como destino a máquina local e a porta 80 para uma fila (queue). ATENÇÃO que fazendo isso você não irá conseguir navegar, pois não receberá resposta dos sites, pois o iptables recebe os pacotes e não os processa, apenas coloca-os em um fila, para que outro programa entre nesta fila e processe os pacotes.
No caso este programa é o Snort_inline. Agora rodamos o Snort_inline para processar os pacotes desta fila e decidir se tem acesso permitido ou são barrados.
# snort_inline -c /path_to/snort_inline.conf -Q -N -l /path_to_log/ -v
Desta forma rodamos o snort_inline consultando a QUEUE e logando os alerts. Se você ver uma mensagem parecida com:
__== Initialisation Complete ==__
O snort_inline está funcionando corretamente. E no nosso caso a navegação foi restabelecida, porém agora temos um proteção extra sobre os pacotes direcionados à porta 80. É possível generalizar a regra do iptables para que TODOS pacotes externos (tcp) passem pela vistoria do snort_inline, para tanto a regra seria:
# iptables -I INPUT -p tcp -j QUEUE
Agora basta personalizar as regras (rules) para adequar ao seu caso. As regras do Snort ficam no diretório do "snort", subdiretório "rules". Existem muitas regras que o Snort nos trás de brinde, cabe a você escolher quais usar e quais não usar. Os logs com os alerts e etc tem sua localização padrão em /var/log/snort_inline/snort_inline_fast (modo sucinto) e /var/log/snort_inline/snort_inline_full (modo completo).
Agora divirta-se a vontade com sua nova camada de segurança :)