Configurando o IDS - Snort / Honeypot (parte 1)

Esse meu artigo é sobre IDS (Intrusion Detection System) ou Sistemas de Detecção de Intrusos, inicialmente vou falar sobre o Snort que é considerado o melhor dentre os softwares livres utilizados para este serviço.

[ Hits: 151.098 ]

Por: Jefferson Estanislau da Silva em 18/09/2003


Instalação



O Snort vem com a maioria dos distros Linux no mercado, mas se você quiser, pode baixar a versão mais atual dele no site www.snort.org.

Presumindo que você fez o download para o diretório /usr/src, vamos descompactá-lo. Lembre-se que você deve estar como root.

# tar xvzf snort.x.x.tar.gz

Agora vamos configurá-lo.

# ./configure -prefix=/usr/local/snort
# make
# make install


Observe acima que ele foi instalado no diretório /usr/local/snort.

Agora, crie em /etc um diretório para o Snort:

# mkdir /etc/snort

Vamos mover o arquivo snort.conf de seu diretório atual para o que criamos:

# mv /usr/local/snort/snort.conf /etc/snort

Iremos alterar agora algumas linhas do arquivo snort.conf:

# mcedit /etc/snort/snort.conf

OBS: eu gosto de utilizar o mcedit, mas você poderá utilizar o de sua preferência.

Localize as seguintes linhas no final do arquivo:

# Path to your rules files (this can be a relative path)
var RULE_PATH ../rules


Edite-a desta forma:

# Path to your rules files (this can be a relative path)
#var RULE_PATH ../rules


A seguir, modifique as entradas de:

include $RULE_PATH/bad-traffic.rules

Para este formato:

include bad-traffic.rules

Salve o arquivo e feche o editor.

Agora devemos copiar as rules que estão em seu diretório atual para o que criamos.

# cp /usr/local/snort/rules/*.* /etc/snort

Estas rules são as regras que o Snort utilize para identificar e interpretar os ataques realizados em sua máquina pelos invasores.

Para finalizar, devemos agora criar um diretório para armazenar os logs dos ataques.

# mkdir /var/log/snort

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Instalação
   3. Executando o Snort
   4. Conclusão
Outros artigos deste autor

Software Livre - GNU x LPG e o Governo x Economia (parte 2)

30 motivos para usar o Linux

GNU/Linux: Depois dele o mundo não é mais o mesmo!

Gerenciando banco de dados com MySQL (parte 2)

Banda Larga: Será que você tem mesmo?

Leitura recomendada

Como assinar digitalmente um documento criado no Br/OpenOffice

Criptografia assimétrica com o RSA

Analizando os logs do IPTables

Instalação do Fail2Ban no CentOS 7

John The Ripper - Teste de Quebra de Senhas

  
Comentários
[1] Comentário enviado por fabio em 18/09/2003 - 18:55h

Beleza de artigo Jeca, meus parabéns!

[2] Comentário enviado por hyperblade em 18/09/2003 - 21:59h

Salve!

r0x belo de artigo mesmo ;-)

chegando em casa irei rodar, sendo que na empresa fiz um teste rodou 100 %

Abraços
hyperblade
lucas.martinez@linuxdicas.com.br

[3] Comentário enviado por VeNtUrInI em 03/10/2003 - 08:40h

Cara Esse Artigo Me Ajudou Mtooo Valewsss Pela Dica !!!!

[4] Comentário enviado por JuNiOx em 09/03/2004 - 00:56h

tive os seguintes erros ao executar o "make"...
---
/usr/include/time.h:158: redefinition of `struct itimerspec'
make[3]: *** [spo_alert_fast.o] Error 1
make[3]: Leaving directory `/home/juniox/snort-2.1.1/src/output-plugins'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/juniox/snort-2.1.1/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/juniox/snort-2.1.1'
make: *** [all] Error 2
---

sabe a solução?

juniox@vivaolinux.com.br

valew!!

[5] Comentário enviado por hyperblade em 05/08/2004 - 00:38h

Salve Jefferson ,

Quando eu dou o comando para executar ele me apresenta o seguinte erro:

root@hyperblade:/usr/local/snort/bin# ./snort -c /etc/snort/snort.conf -i eth0 &
[1] 7611
root@hyperblade:/usr/local/snort/bin# Running in IDS mode
Log directory = /var/log/snort

Initializing Network Interface eth0

--== Initializing Snort ==--
Initializing Output Plugins!
Decoding Ethernet on interface eth0
Initializing Preprocessors!
Initializing Plug-ins!
Parsing Rules file /etc/snort/snort.conf

+++++++++++++++++++++++++++++++++++++++++++++++++++
Initializing rule chains...
ERROR: Undefined variable name: (/etc/snort/snort.conf:107): RULE_PATH
Fatal Error, Quitting..

[1]+ Exit 1 ./snort -c /etc/snort/snort.conf -i eth0

Quando eu vejo a linha 107 fiz da forma que esta no artigo:
Linha 106 ==> # Path to your rules files (this can be a relative path)
Linha 107 ==> include $RULE_PATH/bad-traffic.rules

O que eu fiz ? coloquei assim na linha 107 # include $RULE_PATH/bad-traffic.rules depois disso ele foi bem para frente mais deu erro na linha 287 onde eu parei =/

[1] 7636
root@hyperblade:/usr/local/snort/bin# Running in IDS mode
Log directory = /var/log/snort

Initializing Network Interface eth0

--== Initializing Snort ==--
Initializing Output Plugins!
Decoding Ethernet on interface eth0
Initializing Preprocessors!
Initializing Plug-ins!
Parsing Rules file /etc/snort/snort.conf

+++++++++++++++++++++++++++++++++++++++++++++++++++
Initializing rule chains...
,-----------[Flow Config]----------------------
| Stats Interval: 0
| Hash Method: 2
| Memcap: 10485760
| Rows : 4099
| Overhead Bytes: 16400(%0.16)
`----------------------------------------------
No arguments to frag2 directive, setting defaults to:
Fragment timeout: 60 seconds
Fragment memory cap: 4194304 bytes
Fragment min_ttl: 0
Fragment ttl_limit: 5
Fragment Problems: 0
Self preservation threshold: 500
Self preservation period: 90
Suspend threshold: 1000
Suspend period: 30
Stream4 config:
Stateful inspection: ACTIVE
Session statistics: INACTIVE
Session timeout: 30 seconds
Session memory cap: 8388608 bytes
State alerts: INACTIVE
Evasion alerts: INACTIVE
Scan alerts: INACTIVE
Log Flushed Streams: INACTIVE
MinTTL: 1
TTL Limit: 5
Async Link: 0
State Protection: 0
Self preservation threshold: 50
Self preservation period: 90
Suspend threshold: 200
Suspend period: 30
Stream4_reassemble config:
Server reassembly: INACTIVE
Client reassembly: ACTIVE
Reassembler alerts: ACTIVE
Zero out flushed packets: INACTIVE
flush_data_diff_size: 500
Ports: 21 23 25 53 80 110 111 143 513 1433
Emergency Ports: 21 23 25 53 80 110 111 143 513 1433
ERROR: /etc/snort/snort.conf(287) => Unknown rule type: path
Fatal Error, Quitting..

[6] Comentário enviado por hyperblade em 05/08/2004 - 01:09h

O problema esta mesmo na linha 107 onde esta pegando eu voltei tudo

Initializing rule chains...
ERROR: Undefined variable name: (/etc/snort/snort.conf:107): RULE_PATH
Fatal Error, Quitting..

Alguma dica ?

[7] Comentário enviado por jeffestanislau em 05/08/2004 - 10:10h

Lucas,

Nas instalações que eu fiz, sempre passei na boa sem erros...
mesmo assim vou tentar verificar e te retorno se encontrar a resposta pra isso!!!
blz!!!
[]´s

[8] Comentário enviado por tomcarlos em 10/04/2006 - 15:07h

Ola Jefferson,

eu utilizo o snort em meu roteador e gostaria de usar um frontend para o mesmo.
vc conhece algum interessante?
tentei usar o snortcenter mas pelo q parece ele soh funciona com um BD (Mysql ou postgree

flw

[9] Comentário enviado por calves em 11/07/2006 - 17:17h

Po cara realizei a instalação porém ele não criou o arquivo de configuração o snort.conf, ele criou somente os diretorios bin / lib / man.
Vc sabe o por que?

[10] Comentário enviado por Thiago Madella em 10/07/2008 - 16:56h

Boa garoto...muito bom mesmo, adorei o artigo.

[11] Comentário enviado por cesarpazebao em 14/01/2010 - 21:30h

Olah JeffStanislau boa noite otimo artigo a respeito do snort.

Porem tenho uma grande duvida nao sei se vc pode esclarecer-me.

Estou montando um router com iptables + squid para controlar uma rede local e wireless... Estou com duvida ainda se teria algum problema o snort ser instalado nesse mesmo router para monitorar as interfaces de rede. Que vc acha da idéia ? Tem alguma opiniao a respeito ?

Caso os colegas aqui do forum quiserem opinar por favor sera bem vindo


Obrigado


[12] Comentário enviado por eduardo_cardoso em 13/10/2017 - 15:35h

estou com este erro na inicialização
root@ubuntu:/etc/snort# /usr/local/bin/snort -A console -q -u snort -g snort -c /etc/snort/snort.conf -i eth0
ERROR: /etc/snort/snort.conf(326) => Invalid keyword '}' for server configuration.
Fatal Error, Quitting..
comentei a linha 326 mas o erro vai para linha 329 e parei por aqui
estou começando agora com linux

Alguem sabe como resolver


Contribuir com comentário