[FUGSPBR] STABLE x IPFW2 x MAC address

Antonio Torres antonio.torres em newspace.net.br
Qui Ago 22 19:24:25 BRT 2002


funciona !!

súmula do resumo do possível projeto de 'how-to' para usuários do 4.6

Passos necessários :

1 - atualizar os sources (via cvsup)
2 - alterar o /etc/make.conf (ou /etc/default/make.conf) acrescentando a seguinte linha:
IPFW2=TRUE

3 - seguir as instruções do "buildworld" (documentado no /usr/src/Makefile)
   cd /usr/src
   make buildworld
   make buildkernel KERNELCONF=SEUKERNEL
   make installkernel
   reboot  * em 'single' (boot -s) *
   mount -a  (este comando não está documentado no Makefile, mas é necessário )
   mergemaster -p
   ....... 'acertar' os seus arquivos de passwd, configs, etc..
   make installworld
   mergemaster
   ....... 'acertar' o que 'sobrou'
   reboot
  (a partir daqui, o sistema é 4.6-STABLE com o ipfw 'versão 2')

4 - dar o comando: 
 sysctl net.link.ether.ipfw=1

 ( lembre-se de alterar o loader.conf ou o /etc/sysctl.conf )

5 - pronto !!


exemplo de utilização :

#ipfw add 20 deny icmp from any to any mac 00:01:03:04:05:06 any

#ipfw show
00020  XX   yyyy  deny icmp MAC any 00:01:02:03:05:06 any
... (demais regras)

à partir daqui, a maquina com o mac address da regra não consegue 'pingar' ninguem atravez do 'firewall'; todos os pacotes icmp com o mac-src-addr da regra é bloqueado !!



A 'regra' de MAC deve ser utilizada da mesma maneira que utilizamos os tcpflags, etc
vejam a analogia: 
 bloquear icmp type 3: ipfw add XX deny icmp from any to any icmptype 3 

Como o proprio man diz, a sintaxe não é intuitiva; é até um pouco confusa (linha de comando de um jeito e lista de outro)

Tem muito mais "funções" do que o ipfw1; mac address é só a 'ponta do iceberg'

Teremos muito o que testar...



Bom divertimento a todos

[]s


-- 
Antonio Torres
antonio.torres em newspace.net.br
________________________________________________
Para sair da lista visite o URL abaixo:
http://www2.fugspbr.org/mailman/listinfo/fugspbr



Mais detalhes sobre a lista de discussão freebsd