- L2TP Iptables NAT-T
+ Responder ao Tópico
-
L2TP Iptables NAT-T
Amigos,
Na empresa que eu presto suporte, a máquina que faz o papel de concentrador VPN é um CISCO PIX 515.
Uma empresa que presta serviço a nossa está com o seguinte problema:
Ao se conectar utilizando L2TP apenas uma máquina se conecta por vez, quando a segunda máquina conecta, a primeira "cai". Na verdade o que foi diagnosticado é que quando o segundo tunel é fechado o primeiro é ignorado.
Pelo Cisco verifiquei que quando uma máquina se conecta L2TP ela utiliza a porta 1701 nas duas pontas.
Procurando alguma solução no google verifiquei que existe problemas em relação ao NAT-T, ipsec quando se trata do L2TP.
|-------------------|
Client Windows XP <-------> |IPTABLES|<-------> | PIX|
|-------------------|
Gostaria de saber se pelo iptables eu tenho como fazer uma espécie de PAT de forma que os tunels permaneçam ativos sem que um interfira no outro.
Desde já agradeço a ajuda de todos.
-
Amigo, esse seu problema é um dos mais irresolvíveis que já vi!
Seguinte, o protocolo TCP/IP específica que o identidicador de uma conexão seja um 4-upla:
I = (sip, sport, dip, dport)
Como você expôs, os dois elementos de rede envolvidos usam as portas 1701. Então, se sua prestadora de serviço está usando NAT, creio eu que possa estar acontecendo o seguinte:
1 - O cliente inicia a conexão: 10.0.0.1/1701 SYN
2 - O servidor responde a conexão: 192.168.0.1/1701 SYN+ACK
3 - O cliente estabelece a conexão: 10.0.0.1/1701 ACK
4 - O cliente e servidor trocam informações.
5 - Um segundo cliente tenta conectar: 10.0.0.1/1701 SYN
6 - O servidor detecta uma flag inesperada e reinicia a conexão: 192.168.0.1/1701 RST
7 - O primeiro cliente recebe o RST e aborta a conexão.
Todas as requisições da prestadora de serviços está vindo de um mesmo endereço.
O que você deseja, no meu nível de conhecimento, não é possível. Recomendo você procurar as listas da usenet.
-
IPSEC/L2TP - Linux
Senhores,
Por conhecidencia, eu acabei de implementar uma solução em Linux Debian Etch usando IPSec com autenticação L2TP.
A autenticação funcionou perfeitamente, porém, quando o meu cliente acessa aparece o seguinte erro abaixo e logo após a conexão cai.
Mar 26 10:38:38 debian pluto[15302]: ERROR: asynchronous network error report on eth0 (sport=4500) for message to 201.X.X.X (IP DO CLIENTE WINDOWS XP) port 4500, complainant 201.X.X.X (IP DO SERVIDOR IPSEC/L2TP): No route to host [errno 113, origin ICMP type 3 code 1 (not authenticated)]
A estrutura do IPSec/L2TP funciona da seguinte maneira:
Firewall IPTables com IPSec e L2TP ---> Internet
Isso quer dizer que o servidor IPSec/L2TP está configurado no gateway a onde se encontra a conexão de Internet.
A minha conexão é um Cable Virtua, isso quer dizer, é bridge, o IP valido fica na própria placa de rede.
A estrutura do meu cliente funciona da seguinte maneira:
Windows XP ---> Firewall Iptables ---> Internet
Esse é o mesmo problema que foi citado por nosso amigo Pedro?
Pelo que eu entendi, o meu cliente precisa estar de cara para a Internet, ele não pode estar fazendo NAT, é isso?
-
Senhores,
Consegui resolver o problema relatado com a solução que está nesse site: Gentoo Forums :: View topic - OpenSwan 2.4.7 and NATed Win XP: PAYLOAD_MALFORMED [SOLVED]
Eu adicionei a seguinte linha no ipsec.conf no servidor:
leftnexthop=<LAN ip address of the internet router>
No 'leftnexthop' eu coloquei o IP do meu default gateway.
Porém, eu só testei com UM cliente, eu ainda não conectei varios clientes ao mesmo tempo.
Agora estou conseguindo pingar o IP Gateway da VPN, antes eu não estava conseguindo, e aquele erro do LOG parou de ocorrer.
Vou fazer mais testes!
-
IPSec atras de NAT... o pior problema que pode existir... o que voce tem q verificar é o seguinte... eu nao sei se o PIX 515 oferece suporte ao NAT-T , pois ele precisa oferecer e o cliente precisar estar ciente que ele esta usando o NAT-T pois caso nao esteja na hora que ele estabilizar o tunnel, e o fizer o "NAT" dos protocolos 50 e 51 (esp e ah), ele so vai poder direcionar para uma maquina atras do NAT.
Porque de fato o PIX 515 é um quebra galho de VPN para remote access.. a função dele mesmo é para site-to-site, então talvz ele nao venha com NAT-T (a Cisco faz umas dessas loucuras )
Verifica essa parte e da um retorno, talvez valha a pena voce postar as configs de VPN do seu PIX e as regras do seu IPTABLES.
O Cliente de VPN que voce esta usando é o da Cisco mesmo?
-
Vpn
Misty,
Obrigado pela resposta, mas vai uma dúvida:
O cliente está numa ponta onde o cara que faz o NAT é um Iptables. Na minha ponta é um PIX 515
A estrutura é assim:
Windows XP ---> Firewall Iptables ---> Internet------>PIX---->IAS (WIN2003)
Você falou que o Pix precisaria oferecer o NAT-T. Até onde eu encontrei no Google, eu entendi que o IPtables precisaria oferecer o Nat-t.
É isso mesmo ou eu estou "papando mosca"?
Abs
-
Se nao me falha a memoria os dois lados precisam oferecer suporte... voce jah deu uma olhadinha como funciona o IPSec?