[FUGSPBR] BRIDGE+FIREWALL - PASSO 3 - OK ???
FreeBSD User
chatcraker em yahoo.com
Seg Maio 6 15:34:03 BRT 2002
Bem, entao so para ter certeza quanto ao acesso da rede interna
vou adicionar no diagrama...
-------------- -----------------------
internet | BRIDGE | HUB/interno |MAQUINA COM IP REAL |
<-----------|fxp0 xl0|---------------------|rl0=200.254.12.666 |
| SEM IP | |fxp1=192.168.5.1/24 |--------> REDE INTERNA
-------------- -----------------------
Na MAQUINA COM IP REAL, acontece um nat para uma rede interna ligada na
fxp1.
A minha duvida é se o BRIDGE nao vai atrapalhar esse acesso, pois a
maquina com ip real vai ter que acessar qualquer endereco/porta externo,
em funcao dos acessos dos clientes à internet.
Entao eu quero que esse acesso funcione, mas se alguem tentar acessar alguma
porta na maquina com IP REAL, so consiga a 25 e a 80, que sao os servicos
de email(receber) e WWW.
O script para o ipfw ficaria como o que segue ? falta alguma coisa ?
add check-state
# Throw away RFC 1918 networks
add drop all from 10.0.0.0/8 to any in via fxp0
add drop all from 172.16.0.0/12 to any in via fxp0
add drop all from 192.68.0.0/16 to any in via fxp0
# Allow the inside hosts to say anything they want
add pass tcp from any to any in via xl0 setup keep-state
add pass udp from any to any in via xl0 keep-state
add pass ip from any to any in via xl0
# TCP section
add drop tcp from any to any 22 in via fxp0 setup keep-state
add pass tcp from any to any 80 in via fxp0 setup keep-state
add pass tcp from any to relay 25 in via fxp0 setup keep-state
add pass tcp from any to any 49152-65535 in via fxp0 setup keep-state
add pass udp from any to any 49152-65535 in via fxp0 keep-state
# Pass 'ping'
add pass icmp from any to any icmptypes 8 keep-state
# Pass error messages generated by 'traceroute'
add pass icmp from any to any icmptypes 3
add pass icmp from any to any icmptypes 11
# Everything else is suspect
add drop log all from any to any
----------------------------------------------------------------
Bem, entao preciso de mais alguma regra ?
O trafego de acesso a internet da rede interna vai passar tranquilo ??
Ou preciso de mais alguma regra para isso, algo como:
add pass tcp from 200.254.12.666 to any in via xl0 setup keep-state
add pass tcp from 200.254.12.666 to any out via fxp0 setup keep-state
ou,
add pass tcp from 200.254.12.666 to any out via xl0 setup keep-state
Se eu preciso de mais alguma regra, seria algo como umas das acima ?
Só devo especificar nas regras as interfaces presentes no BRIDGE né ?
Sera que é isto ?
--- Eduardo Augusto Alvarenga <eduardo em thrx.dyndns.org> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On Mon, 6 May 2002, FreeBSD User wrote:
>
> > Ja to quase sacando tudo.
> > As placas do bridge nao tem ip, ate ai tudo bem, com as opcoes setadas
> > corretamente o sistema faz o forward sem problema.
> > Agora, pelas regras do ipfw que tem nesse artigo eu queria ver como
> > garantir que trafego de saída ocorra livre e o de entrada so possa ser
> > permitido para a porta 80 e 25.
> >
> > Ficaria algo como isso : ( ? )
> >
> > -------------- -----------------------
> > internet | BRIDGE | HUB/interno |MAQUINA COM IP REAL |
> > <-----------|fxp0 xl0|---------------------|fxp0=200.254.12.xxx |
> > | | | |
> > -------------- -----------------------
> >
> > Nao vou definir IP para as placas do BRIDGE, mas eu poderia definir a fxp0 do
> > BRIDGE com o mesmo IP REAL da maquina que esta atraz so mesmo ???
>
> Não será necessário.
>
> >
> > O ipfw ficaria assim : ( ? )
> >
>
> Irei eliminar as entradas não relevantes e somente mostrar o que irá
> bloquear as portas 25 e 80:
>
> > # deny all SSH (drop ou deny para usar ?)
>
> add drop tcp from any to ip.do.seu.fbsd 22 in via fxp0 setup keep-state
>
> É melhor usar a chave ``drop'' pois a mesma responde com ``Connection
> Refused'', deixando a porta "invisível"
>
> Ou melhor ainda, para liberar somente o tráfego baseado nas chaves ``add
> pass'' faça o seguinte:
>
> add drop tcp from any to ip.do.seu.fbsd in via fxp0 setup keep-state
>
> E depois só libere o tráfego desejado, conforme as regras abaixo:
>
> > # Allow WWW
> add pass tcp from any to ip.do.seu.fbsd 80 in via fxp0 setup keep-state
>
> > # Allow SMTP only towards the mail server
> add pass tcp from any to ip.do.seu.fbsd 25 in via fxp0 setup keep-state
>
> Com essas chaves todo o tráfego de qualquer para seu fbsd nas portas 80
> e 25 será permitido.
>
> > # Allow DNS only towards the name server
> > add pass udp from any to ns 53 in via fxp0 keep-state
> > (-------!!!!! o "ns" é um ip ? ou o que quer dizer esse ns ? !!!-----)
> > essa regra ta permitindo acesso ao dns na maquina real ?
>
> É um IP. O Howto usou o nome ``ns'' para especificar o seu servidor DNS.
>
> > # Pass the "quarantine" range ( pra que isso ??? )
> > add pass udp from any to any 49152-65535 in via fxp0 keep-state
>
> Para permitir traceroute ICMP.
>
> [snip]
> > Com esse script a maquina com ip real so aceitaria as
> > conexoes entrantes nas portas 25 e 80 correto ?
>
> Correto.
>
> > Todas as outras maquinas que estao com nat atras da maquina
> > com ip real continuam acessando a rede normalmente ?
>
> Qual rede ? A interna ? Sim.
> Para redes externas, de acordo com a regra:
>
> # Everything else is suspect
> add drop log all from any to any
>
> Todo o tráfego que fosse para o roteador seria barrado.
> Portanto certifique-se de adicionar regras que permitem o tráfego externo
> da sua rede ``interna'' para a externa. Um exemplo seria:
>
> rede="sua.rede.inter.na/ma.s.ca.ra"
>
> # Permite tráfego da internet para sua rede porta 25 e 80
> add pass tcp from any to $rede 25 in via fxp0 setup keep-state
> add pass tcp from any to $rede 80 in via fxp0 setup keep-state
>
> # Permite tráfego da sua rede para a internet porta 25 e 80
> add pass tcp from $rede to any 25 in via xl0 setup keep-state
> add pass tcp from $rede to any 80 in via xl0 setup keep-state
> add pass tcp from $rede to any 25 out via fxp0 setup keep-state
> add pass tcp from $rede to any 80 out via fxp0 setup keep-state
>
> > E a maquina com ip real pode fazer qualquer acesso externo correto ?
>
> De acordo com o exemplo acima: Sim.
>
> > Ta certo isso ai ou tem mais algum detalhe ?
>
> Aparentemente está correto. Consulte o manual do ipfw para maiores
> detalhes.
>
>
> Atenciosamente,
>
> - --
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
> Eduardo A. Alvarenga - Analista de Suporte #179653
> Secretaria de Segurança Pública do Estado do Pará
> Belém - Pará - (91) 223-4996 / 272-1611
> eduardo em thrx.dyndns.org / eduardo em segup.pa.gov.br
> - -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
>
>
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.0.6 (GNU/Linux)
> Comment: For info see http://www.gnupg.org
>
> iD8DBQE81rQ7pKK2uJoGDlMRAoeCAJ9IdWX8XQmI3+S9dT634a8X4Ffl+wCfWpgi
> T5UsaiVQA6J2kqj+t/Psgok=
> =4shz
> -----END PGP SIGNATURE-----
>
>
> ----
> Para sair da lista envie um e-mail para majordomo em fugspbr.org
> com as palavras "unsubscribe fugspbr" no corpo da mensagem.
__________________________________________________
Do You Yahoo!?
Yahoo! Health - your guide to health and wellness
http://health.yahoo.com
----
Para sair da lista envie um e-mail para majordomo em fugspbr.org
com as palavras "unsubscribe fugspbr" no corpo da mensagem.
Mais detalhes sobre a lista de discussão freebsd