Snort: Guia Completo da Pré-Instalação à Configuração

JUNTE-SE A MAIS DE 110.000 PESSOAS QUE JÁ TEM UMA CÓPIA

Ubuntu: Iniciando com Linux de maneira prática e rápida

instalar snort no linux

Compartilhe este post

Share on facebook
Share on linkedin
Share on twitter
Share on email

Depois de aprender o que é Snort e descobrir as principais características desse poderoso sistema de detecção de intrusões, chegou o momento de instalar o Snort e configurá-lo em sua máquina.

Se você estiver lendo isto sem saber ao certo do que estou falando, primeiro veja esta apresentação que fiz do programa.

O que considerar antes do processo? Primeiramente, recomendo que crie uma máquina virtual rodando o Ubuntu Server — você pode utilizar programas como VirtualBox ou similares. Durante a configuração reserve pelo menos 4 GB de RAM e um espaço razoável de armazenamento.

Caso a sua pretensão seja de instalar no sistema operacional convencionalmente, certifique-se de criar um ponto de restauração. Mas como fazê-lo no Linux? Instalando o Timeshift. Nas distribuições Ubuntu, utilize os comandos:

sudo add-apt-repository ppa:noobslab/apps # na versão server

sudo add-apt-repository ppa:teejee2008/ppa # no desktop

sudo apt update

sudo apt install timeshift

instalar snort no linux

Depois disso, basta criar um snapshot do sistema a partir da interface gráfica do programa. Simples e fácil! Sem mais delongas, vamos aos procedimentos de instalação e configuração do Snort.

Snort Instalação: Ubuntu

snort como instalar

É muito importante deixar o sistema pronto para receber a instalação do programa e, com isso, evitar que falhas aconteçam.

Preparando o sistema

Além do tradicional sudo apt update e sudo apt upgrade, no caso do Snort é necessário instalar uma série de dependências. A boa notícia é que a maior parte do trabalho pode ser feita usando um só comando:

sudo apt install openssh-server ethtool build-essential libpcap-dev libpcre3-dev libdumbnet-dev bison flex zlib1g-dev liblzma-dev openssl libssl-dev libnghttp2-dev

Outra dependência é o DAQ (Data Aquisition), necessário para fazer requisições a bibliotecas de captura de pacotes. Baixe o arquivo tar da versão mais recente diretamente do site oficial. Se preferir, utilize o comando wget conforme as instruções, abaixo:

wget https://www.snort.org/downloads/snort/daq-2.0.6.tar.gz

tar -zxvf daq-2.0.6.tar.gz

cd daq-2.0.6

./configure && make && make install

Sistema preparado? Ainda não. Segundo o manual de usuário do Snort, publicado em 2017, a ferramenta, automaticamente, irá truncar pacotes cujo tamanho ultrapassa o padrão estabelecido de 1518 bytes.

Leia também:  Debian 10 Buster: Guia de Instalação Completo

Para evitar que isso aconteça, é necessário desativar duas funcionalidades da placa de rede: Large Receive Offload (lro) e Generic Receive Offload (gro). Como proceder? O administrador do sistema deve editar o arquivo /etc/network/interfaces. Ao abri-lo, localize as linhas conforme o exemplo:

sudo vi /etc/network/interfaces

post-up ethtool -K eth0 gro off

post-up ethtool -K eth0 lro off

Observação: localize as linhas correspondentes, também, a outras interfaces de redes que se comunicarão com o Snort. Exemplo: post-up ethtool -K interface gro / lro off.

Instalando o Snort

Utilize novamente o comando wget para fazer o download da versão mais recente do Snort (consultar a página oficial), como fizemos na instalação do DAQ.

wget https://www.snort.org/downloads/snort/snort-2.9.13.tar.gz

tar xvzf snort-2.9.13.tar.gz

cd snort-2.9.13

./configure --enable-sourcefire --enable-sourcefire

make

make install

sudo ldconfig

sudo ln s /usr/local/bin/snort /usr/sbin/snort

Finalizando, digite no terminal /usr/sbin/snort -V para validar a instalação.

Configurando o Snort

É bem provável que você se lembre de que o Snort funciona em diferentes modos: sniffer, registrador de pacotes, e IDS de rede (Network Intrusion Detection System – NIDS). Neste tópico vamos configurá-lo como NIDS.

Iniciaremos a configuração criando, manualmente, uma série de diretórios que servirão de base para o Snort. Siga a demonstração, abaixo:

mkdir /etc/snort

mkdir /etc/snort/preproc_rules

mkdir /etc/snort/rules

mkdir /var/log/snort

mkdir /usr/local/lib/snort_dynamicrules

touch /etc/snort/rules/white_list.rules

touch /etc/snort/rules/black_list.rules

touch /etc/snort/rules/local.rules

Para que se possa trabalhar adequadamente com os diretórios recém-criados, acrescente a permissão 5775 — confira este artigo sobre chmod e compreenda melhor o conceito de permissões no Linux — na seguinte relação:

chmod -R 5775 /etc/snort/

chmod -R 5775 /var/log/snort/

chmod -R 5775 /usr/local/lib/snort

sudo chmod -R 5775 /var/log/snort/archived_logs

chmod -R 5775 /usr/local/lib/snort_dynamicrules/

Em seguida, use o comando chown para alterar a propriedade dos arquivos nas seguintes pastas:

sudo chown -R snort:snort /etc/snort

sudo chown -R snort:snort /var/log/snort

sudo chown -R snort:snort /usr/local/lib/snort_dynamicrules

Movendo arquivos essenciais do Snort

Tudo pronto? Então vamos agora mover alguns arquivos presentes na pasta do Snort que extraímos na instalação. São eles:

  • attribute table.dtd: permite ao Snort utilizar informações externas para determinar políticas e protocolos;
  • classification.config: descreve os tipos de classes de ataques compreendidos pelo Snort;
  • file_magic.conf: descreve regras para identificar o tipo de cada arquivo;
  • gen-msg.map: deixa o Snort ciente de qual pré-processador é acionado por cada regra;
  • reference.config: armazena URLs inseridas nas regras para fornecer informações sobre alertas;
  • snort.conf: é o próprio arquivo de configuração do Snort;
  • threshold.conf: permite ao usuário controlar o número de eventos necessários para gerar um alerta; e
  • unicode.map: fornece o mapeamento entre linguagens Unicode e o identificador.
Leia também:  Gerenciando pacotes (software) no Ubuntu com aptitude

Faça a seguinte sequência de comandos para mover os arquivos listados acima:

cd ~/snort_src/snort-2.9.13/etc/

sudo cp *.conf* /etc/snort

sudo cp *.map /etc/snort

sudo cp *.dtd /etc/snort

cd ~/snort_src/snort-2.9.13/src/dynamic-preprocessors/build/usr/local/lib/snort_dynamicpreprocessor/

sudo cp * /usr/local/lib/snort_dynamicpreprocessor/

Editando o snort.conf

O último passo da configuração é a edição de algumas linhas do arquivo snort.conf. Utilizando o Stream Editor (comando sed), vamos comentar todas as regras usando o seguinte comando:

sed -i "s/include \$RULE\_PATH/#include \$RULE\_PATH/" /etc/snort/snort.conf

Ao concluir, selecione um editor de texto para que possamos modificar as linhas. Na 45ª linha, configure a rede local com o endereço de IP que você deseja proteger (194.168.15.0/24, por exemplo).

ipvar HOME_NET 194.168.15.0/24

Em seguida, indicaremos ao Snort os diretórios que criamos no início da configuração e, concluindo a etapa, habilitaremos o arquivo /etc/snort/rules/local.rules, no qual você guardará as regras que criará. Digite os comandos:

var RULE_PATH /etc/snort/rules

var SO_RULE_PATH /etc/snort/so_rules

var PREPROC_RULE_PATH /etc/snort/preproc_rules

var WHITE_LIST_PATH /etc/snort/rules/iplists

var BLACK_LIST_PATH /etc/snort/rules/iplists

include $RULE_PATH/local.rules

Vamos conferir se as configurações estão funcionam?

Testando as configurações do Snort

Depois de tanto trabalho para cuidar de todos os detalhes para configurar o Snort, chegou a hora de validá-lo. Baseando-se no exemplo a seguir, digite o comando de teste — preste atenção ao inserir a interface de rede.

sudo snort -T -c /etc/snort/snort.conf -i eth0

Resumindo, a flag -T significa teste, enquanto a -c mostra ao Snort que o diretório leva ao snort.conf e o -i, indica que uma interface será especificada.

Ao longo deste conteúdo você teve acesso a um tutorial básico, porém rico, para instalar o Snort em sua máquina e deixá-lo rodando corretamente. Além disso, fizemos um pequeno teste para confirmar o funcionamento da ferramenta. O que achou das dicas? Deixe a resposta nos comentários!

No mais, um convite: se você está avançando em seus estudos sobre o Linux e deseja alcançar o nível profissional de maneira organizada e rápida, visite agora mesmo o site do projeto Profissionais Linux.

Leia também:  Aprender Linux: Guia Passo a Passo Para Um Iniciante Entrar no Mundo LINUX De Uma Vez Por Todas

Compartilhe este post

Share on facebook
Share on linkedin
Share on twitter
Share on email

Artigos Recentes

Aprenda a dominar o Linux de uma vez por todas

Vai ajudar a melhorar e mostrar rapidamente com encontrar e instalar o software no Ubuntu.

Assim como atualizar, manter e controlar a segurança do seu sistema.

Vamos mostra as maneiras mais eficientes de utilização de Ubuntu no trabalho, com algumas das ferramentas poderosas que estão ao seu alcance.