Re: [FUG-BR] Dois links de internet, um inacessível de fora (DI NOVU)

2008-10-02 Por tôpico Wildes Miranda de Oliveira
A minha configuracao funcionou. Tanto UDP quanto TCP. 
Estava tendo dificuldades porque esta redirecionado os pacotes para uma rede 
DMZ. 
Entao tambem tive que fazer uma regra reply-to na interface de acesso a DMZ. 
ficou td +- assim : 

route0=( $ext_if0 $router0 ) 
route1=( $ext_if1 $router1 ) 

rdr on $ext_if0 proto tcp from any to $ext_ip0 port {http,https} tag ROUTE0 - 
$web_server 
rdr on $ext_if1 proto tcp from any to $ext_ip1 port {http,https} tag ROUTE1 - 
$web_server 

pass in quick on $ext_if0 reply-to $route0 proto {tcp,udp} from any to $ext_ip0 
keep state 
pass in quick on $ext_if1 reply-to $route1 proto {tcp,udp} from any to $ext_ip1 
keep state 


#The reply-to option is similar to route-to, but routes packets that 
#pass in the ***opposite*** direction (replies) to the specified inter- 
#face.
pass out quick on $dmz_if reply-to $route0 from any to any tagged ROUTE0 keep 
state 
pass out quick on $dmz_if reply-to $route1 from any to any tagged ROUTE1 keep 
state 

pass out on $ext_if0 route-to $ext_if1 from $ext_if1 to any 
pass out on $ext_if1 route-to $ext_if0 from $ext_if0 to any 

basicamento o segredo estava na direcao da regra da interface dmz. na 
configuracao anterior
anterior eu estava coloando pass in.

valeu ...!

- Mensagem original - 
De: Alexandre Biancalana [EMAIL PROTECTED] 
Para: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR) 
freebsd@fug.com.br 
Enviadas: Quarta-feira, 1 de Outubro de 2008 17:23:15 GMT -03:00 Argentina 
Assunto: Re: [FUG-BR] Dois links de internet, um inacessível de fora (DI NOVU) 

On 10/1/08, Welkson Renny de Medeiros [EMAIL PROTECTED] wrote: 
 Alexandre, se não for abusar muito, ou se preferir no PVT, me envia um 
 exemplo com udp, porque aqui não funciona nem a pau... =) 
 
 Coloca xxx nos ips em produção. 
 
 Eu acho difícil ser regra, obser que a única coisa que mudo é de tcp para 
 udp, e de 65517 para 1194 
 
 # tcp que funciona 
 
 pass in log quick on $ext_if2 reply-to ($ext_if2 189.3.15.1) proto tcp to 
 
 any port 65517 keep state 
 
 # udp que NAO funciona 
 pass in log quick on $ext_if2 reply-to ($ext_if2 189.3.15.1) proto udp to 
 any port 1194 keep state 
 

Manda seu pf.conf completo. 

O que pode estar acontecendo é que o pf cria o estado pela ultima 
regra que fizer o match ou seja, se você tem a regra com reply-to e 
depois tem uma com o pass normal ele cria o estado pela ultima regra e 
não funciona mesmo. 
- 
Histórico: http://www.fug.com.br/historico/html/freebsd/ 
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd 


-- 
Wildes Miranda 

-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Dois links de internet, um inacessível de fora (DI NOVU)

2008-10-01 Por tôpico Wildes Miranda de Oliveira
veridico : 

http://www.openbsd.org/faq/pf/filter.html#udpstate 

PF simply keeps track of how long it has been since a matching packet has gone 
through. If the timeout is reached, the state is cleared. The timeout values 
can be set in the options section of the pf.conf file.  

 set timeout option value 
Set various timeouts (in seconds). interval - seconds between purges of expired 
states and packet fragments. The default is 10 . frag - seconds before an 
unassembled fragment is expired. The default is 30 . src.track - seconds to 
keep a source tracking entry in memory after the last state expires. The 
default is 0 (zero).  Acredito que opcao utilizada seja src.track ... 

- Mensagem original - 
De: Alexandre Biancalana [EMAIL PROTECTED] 
Para: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR) 
freebsd@fug.com.br 
Enviadas: Quarta-feira, 1 de Outubro de 2008 15:21:06 GMT -03:00 Brasília 
Assunto: Re: [FUG-BR] Dois links de internet, um inacessível de fora (DI NOVU) 

On 10/1/08, Welkson Renny de Medeiros [EMAIL PROTECTED] wrote: 
 Fala Wildes, blz? 
 
 Estou usando a 7.0 RELEASE 
 
 Vendo agora o man fiquei desanimado... veja: 
 
 reply-to is useful only in rules that create state. 
 Pelo que sei UDP não tem estados... acho que reply-to é só para TCP. Me 
 corrijam se eu estiver errado. 

Por natureza o UDP não estabelece conexão com o destino, mas mesmo 
assim o pf cria um estado para este tipo de comunicação. 
- 
Histórico: http://www.fug.com.br/historico/html/freebsd/ 
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd 


-- 
Wildes Miranda 

-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Dois links de internet, um inacessível de fora (DI NOVU)

2008-10-01 Por tôpico Wildes Miranda de Oliveira

- Mensagem original - 
De: Alexandre Biancalana [EMAIL PROTECTED] 
Para: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR) 
freebsd@fug.com.br 
Enviadas: Quarta-feira, 1 de Outubro de 2008 15:16:31 GMT -03:00 Brasília 
Assunto: Re: [FUG-BR] Dois links de internet, um inacessível de fora (DI NOVU) 

On 10/1/08, Wildes Miranda de Oliveira [EMAIL PROTECTED] wrote: 
 saudacoes ! 
 
 Qual o versao do FreeBSD voce esta usando ? 
 tentei esta configuracao no 7.0-RELEASE,7.1-PRERELEASE e nao funcionada nem 
 com vela preta  
 no 7.1-PRERELEASE que compilei nao funcionou nem tcpdump na interface pflog0 
 :S ... 

Funciona sim... utilizo desde o Free 6, a sua conf que deve ter algo errado 

 a alguma incompatibilidade em usar o reply-to em interfaces virtuais ? tipo 
 tunN utilizadas por links PPP ?? 

Não vejo por que não funcionar 

Tambem nao. A regra e bem simples, mas, de qualquer forma, vou rever a 
configuracao, e postar os resultados para que os srs possam compartilhar ou me 
auxiliarem numa solucao.

grato.

- 
Histórico: http://www.fug.com.br/historico/html/freebsd/ 
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Dois links de internet, um inacessível de fora

2008-08-21 Por tôpico Giancarlo Rubio
2008/8/20 Aline de Freitas [EMAIL PROTECTED]:
 Citando Gule # [EMAIL PROTECTED]:

 2008/8/20 Aline de Freitas [EMAIL PROTECTED]

 Boa tarde!

 Estou com dois links de internet:

 (bge1) Virtua = 12 megas, IP Dinâmico
 (bge2) Ajato = 2 megas, IP fixo

 (bge0) Rede interna

 A prioridade para uso interno é a bge2, por conta da banda alta.
 Apenas para alguns
 acessos que exigem autenticação por IP criei rotas via bge1. Pela rede
 interna tenho os
 dois gateways das duas interfaces acessíveis, mas o gateway default é
 o via bge2. O
 problema é que externamente, apenas o IP da bge2 (dinâmico) é
 acessível. O IP da bge1
 (fixo) nem pinga. Quando eu seto a bge2 como default, então ela passa
 a ser acessível
 externamente. Alguém conhece alguma forma de fazer com que ambas as
 interfaces sejam
 acessíveis externamente?

 Aline
 -
 Histórico: http://www.fug.com.br/historico/html/freebsd/
 Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


 Firewall ? PF ?
 Caso seja, basta liberar a porta que quer que seja acessivel na interface
 desejada.
 -
 Histórico: http://www.fug.com.br/historico/html/freebsd/
 Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


 Não me parece ser uma questão de portas, uma vez que de fora o IP nem pinga.

 Minhas regras no pf.conf:

 # Interfaces
 EXT_IF1 = bge1
 EXT_IF2 = bge2
 INT_IF = bge0
 VPN_IF = tun0

 # Redes
 LAN_NETWORK = 192.168.0.0/24
 VPN_NETWORK = 10.8.0.0/24

 # Portas publicas (abertas para Internet)
 # 4222 = SSH
 # 4280 = Apache (HTTP)
 # 42443 = Apache (HTTPS)
 # 8180 = Tomcat (HTTP)
 # 8443 = Tomcat (HTTPS)
 # 41194 = OpenVPN
 PUB_PORTS = { 4222, 4280, 42443, 8180, 8443, 41194 }

 # Logar eventos em interface externa
 set loginterface $EXT_IF1
 set loginterface $EXT_IF2

 # Politica padrao de envio de rst em block
 set block-policy return

 # Ignorando loopback
 set skip on lo

 # Normalizacao
 scrub in all

 # NAT de VPN
 nat on $EXT_IF1 from $VPN_NETWORK to any - ($EXT_IF1)

 # NAT de LAN
 nat on $EXT_IF1 from $LAN_NETWORK to any - ($EXT_IF1)
 nat on $EXT_IF2 from $LAN_NETWORK to any - ($EXT_IF2)

 # Bloqueando toda entrada por padrao
 block in

 # Saida livre
 pass out keep state

 # Comunicacao livre com VPN
 pass quick on $VPN_IF keep state

 # Comunicacao livre com LAN
 pass quick on $INT_IF keep state

 # Permitiondo acesso a portas publicas
pass in on $EXT_IF1 proto tcp
 from any to
 ($EXT_IF1)
 port $PUB_PORTS flags S/SA keep state
 pass in on $EXT_IF2 proto tcp from any to ($EXT_IF2)
 port $PUB_PORTS flags S/SA keep state

 # Permitindo Ping
 pass in inet proto icmp all icmp-type echoreq keep state

 # Faz balanceamento de carga no trafego da rede interna
 pass in on $INT_IF route-to { $EXT_IF1, $EXT_IF2 } round-robin proto tcp from
 $LAN_NETWORK to any flags S/SA modulate state
 pass in on $INT_IF route-to { $EXT_IF1, $EXT_IF2 } round-robin proto {
 udp, icmp } from
 $LAN_NETWORK to any keep state

 # Regras gerais pass out para as interfaces externas
 pass out on $EXT_IF1 proto tcp from any to any flags S/SA modulate state
 pass out on $EXT_IF1 proto { udp, icmp } from any to any keep state
 pass out on $EXT_IF2 proto tcp from any to any flags S/SA modulate state
 pass out on $EXT_IF2 proto { udp, icmp } from any to any keep state

 # Roteia pacotes de qualquer IP na $EXT_IF1 para $EXT_Gw1 e o mesmo para
 # $EXT_IF2 e $EXT_GW2
 pass out on $EXT_IF1 route-to ( $EXT_IF2 ) from $EXT_IF2 to any
 pass out on $EXT_IF2 route-to ( $EXT_IF1 ) from $EXT_IF1 to any
 -
 Histórico: http://www.fug.com.br/historico/html/freebsd/
 Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


O que seu pflog diz quando é bloqueado o ping por exemplo?

-- 
Giancarlo Rubio
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Dois links de internet, um inacessível de fora

2008-08-21 Por tôpico Giancarlo Rubio
2008/8/21 Welkson Renny de Medeiros [EMAIL PROTECTED]:
 Realmente tem fundamento!

 Alguém sabe como resolver isso?

Route-to conforme vc mesmo havia dito acima. Se vc manda um pacote
sair pela interface 1 ele terá que retornar pela 1, não faz sentido
ele voltar na 2 (se está voltando na 2 existe alguma configuração
errada). Eu uso este mesmo cenário que está sendo proposto acima sem
problemas.

Conforme foi falado não existe no freebsd (até aonde sei) algo como
iproute do linux que permite ter mais de 1 gateway default. Sofri mais
consegui implementar com o pf o cenário. Tcpdump, como tambem foi
recomendado,  verifique na outra ponta se o pacote chega pelo link
certo, se ele está saindo pelo link certo..bla bla bla..

Estes 2 links do pf devem ser lidos com muita atenção, pois são eles
que irão resolver seu problema.

http://www.openbsd.org/faq/pf/pools.html#outgoing
http://www.openbsd.org/faq/pf/pools.html#incoming


-- 
Giancarlo Rubio
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd