Suricata, Docker e rede host: sem tráfego não-docker

1

Eu criei um contêiner docker com Suricata e Evebox. No meu host eu começo com:

ifconfig enp2s0:1 192.168.0.111 netmask 255.255.255.0 up

Isso configura uma nova interface da minha existente. Em seguida, executo o contêiner do docker da seguinte forma:

docker run --privileged --network host --cap-add NET_ADMIN --cap-add NET_RAW --rm suricata-evebox

Em seguida, inicio o suricata / evebox com:

mkdir -p /data/evebox
suricata -i enp2s0:1 -D
evebox -v -D /data/evebox --datastore sqlite --input /var/log/suricata/eve.json

Aqui estão os cenários ao executar curl http://testmyids.com das máquinas:

  • Dentro de um contêiner docker: DETECTS ALERT
  • No host do docker: DETECTS ALERT
  • Em uma máquina na rede local: NÃO VEJA

Existe uma maneira de fazer com que o Suricata veja todo o tráfego viajando pela rede, não apenas o host e os contêineres?

    
por Fmstrat 15.06.2018 / 00:59

1 resposta

1

Primeiro, aqui está uma solução possível que pode ser configurada no próprio roteador ou em qualquer máquina que você queira monitorar: link

Se isso não for possível para o seu caso de uso, existe outra opção na forma de um comutador que pode ser configurado entre seu roteador e todos os clientes, o comutador deve suportar o espelhamento de portas. Em seguida, você adicionaria outra NIC ao seu host ids / docker que receberia todo o tráfego da porta "WAN" do switch espelhado, que pode ser passado para o seu contêiner suricata.

    
por 02.07.2018 / 09:01