Firewall ipfw no FreeBSD

1

Eu tenho uma dúvida sobre a funcionalidade do firewall IPFW no FreeBSD. Meu cenário é o seguinte:

TodasestasmáquinasestãoexecutandooFreeBSD,etodaselassãomáquinasvirtuais.Oproblemaéquenãoentendoumacoisa.SeeuadicionarumaregranoIPFWnamáquinafirewallparabloquearpingsdamáquina2paraamáquina1,nãoseiporqueesseblocoébidirecional.Querodizer,eucoloqueiestaregra:

ipfwadd02000denyicmpfrom10.0.2.2to10.0.1.2

ComistoeuentendoqueofirewallirábloquearqualquerpacoteICMPvindode10.0.2.2(máquinaàdireitanaimagem)para10.0.1.2(máquinaàesquerdanafigura),masoquerealmenteaconteceéqueok,amáquina2nãopodefazerpingparaamáquina1,masamáquina1tambémnãopodefazerpingnamáquina2!Porqueéque?AsregrasdoIPFWsãoasseguintes:

Imagensdospings:

    
por victor26567 27.04.2018 / 16:23

2 respostas

0

Você pode confirmar se a máquina 2 está recebendo ou respondendo a pacotes ICMP usando tcpdump , por exemplo:

sudo tcpdump -i eth0 icmp

No caso que você descreveu, ping não seria bem-sucedido porque o pacote de retorno da máquina 2 seria bloqueado pelo firewall na máquina 1.

    
por 02.05.2018 / 17:29
0

Se você estiver pingando 10.0.2.2 a partir de 10.0.2.1, então a resposta de ping (para 10.0.2.1 FROM 10.0.2.2), TAMBÉM é um pacote icmp, de modo que corresponda à regra e seja bloqueada.

Para obter o comportamento desejado, altere a regra para:

ipfw add 02000 deny icmp from 10.0.2.2 to 10.0.1.2 icmptypes 8

Em que o tipo 8 é 'echo-request' e o tipo 0 é 'echo-reply'.

Ou adicione uma regra antes de 2000 para permitir apenas respostas e continue a bloquear todos os outros pacotes ICMP: ipfw add 01999 allow icmp from 10.0.2.2 to 10.0.1.2 icmptypes 0 ipfw add 02000 deny icmp from 10.0.2.2 to 10.0.1.2

    
por 06.09.2018 / 02:20