+ Responder ao Tópico



  1. #1
    fmercurio
    Visitante

    Padrão Problemas com IPSEC

    Olá pessoal,

    Estou com problemas para configurar o IPSEC (FREESWAN), tomara que alguém consiga me ajudar.

    Estou tentando configurar um tunel utilizando um nó com ip fixo, e o outro com ip dinâmico. Segui as instruções desta documentação [br-linux.org].

    A autenticação se dá normalmente, pois o IPSEC retorna uma mensagem confirmando a autenticação, mas após iniciar o serviço não consegui pingar nenhum host da rede remota, outra coisa que percebi é que o roteamento ip pára, ou seja, as máquinas da rede não conseguem acesso à internet diretamente, só acessa a web pois passa pelo proxy.

    Eu configurei tudo bunitinho nas duas pontas, liberei no firewall as conexões no protocolo 50 e na porta 500 UDP... já fiz tudo que encontrei na internet, mas não consigo liberar.

    Estou disponibilizando o meu ipsec.conf e as regras de firewall que utilizei... se alguém já conseguiu fazer funcionar o IPSEC ou tem alguma dica por favor, não exitem em postar.

    Sistema operacional: Slackware 10.1
    Kernel: 2.4.29

    ## ipsec.conf ##
    version 2
    config setup
    interfaces=%defaultroute
    klipsdebug=none
    plutodebug=none
    uniqueids=yes
    # plutoload=%search
    # plutostart=%search

    conn %default
    keyingtries=0
    disablearrivalcheck=no
    authby=rsasig

    conn kenzza-casa
    authby=rsasig
    left=200.161.130.49
    leftnexthop=200.161.130.1
    leftid=@kenzza-proxy..
    leftsubnet=192.168.0.0/24
    # RSA 1024 bits kenzza-proxy Fri Nov 11 16:56:03 2005
    leftrsasigkey=0sAQOnqSB28+IR54Qd9/Eut4fmMfgXy1MmaJK+we1F+eD5QKJ62ZeVZe60Xd5XZQoJ4+I+0Jze8RqUtgKTDePSV3nnz2JwdmOo9FrHsZrkjrbIL+VEsa/or3csW1cQS9b4M04INFrU8O3Z5f4Qa2DsbWqxmcd9XpSMHLLRcANhgvBoPw==
    rightnexthop=%defaultroute
    right=%any
    rightid=@kenzza-casa..
    rightsubnet=10.0.0.0/24
    # RSA 1024 bits kenzza-casa Fri Nov 11 16:55:49 2005
    rightrsasigkey=0sAQPuMbIWWBK2W3PQQ00tgMWn23Ia6ZoEctv4ksBcXDhHjZpokEOdMEjtMTUvb4QYgUU2m7rbEjx6h23fFctxsZdNTmz8783H+SyNWSuBQTx42Q8Fz7+cqip6zkLIDCtWdGL3+nxJfVLCtqLwjpGPcDwIg6YOlCzr6Cn9pkIP+EEgQw==
    type=tunnel
    auto=add


    ## Regras de IPTABLES ##
    ## Liberando conexoes para VPN
    iptables -A INPUT -p udp --dport 500 -j ACCEPT
    iptables -A INPUT -p udp --sport 500 -j ACCEPT
    iptables -A INPUT -p 50 -j ACCEPT
    iptables -A FORWARD -p udp --dport 500 -j ACCEPT
    iptables -A FORWARD -p udp --sport 500 -j ACCEPT
    iptables -A FORWARD -p 50 -j ACCEPT

    iptables -A INPUT -p tcp --sport 2020 --dport 2020 -j ACCEPT
    iptables -A OUTPUT -p tcp --sport 2020 --dport 2020 -j ACCEPT

    iptables -A FORWARD -s 192.168.0.0/255.255.255.0 -d 10.0.0.0/255.255.255.0 -j ACCEPT
    iptables -A FORWARD -d 192.168.0.0/255.255.255.0 -s 10.0.0.0/255.255.255.0 -j ACCEPT

    Ao que me parece eu recebo o IP do meu gateway de internet.
    Vou postar a saída do comando route -n, talvez ajude a ter uma análise melhor:

    Kernel IP routing table
    Destination Gateway Genmask Flags Metric Ref Use Iface
    200.161.130.0 0.0.0.0 255.255.255.192 U 0 0 0 eth0
    200.161.130.0 0.0.0.0 255.255.255.192 U 0 0 0 ipsec0
    10.0.0.0 200.161.130.1 255.255.255.0 UG 0 0 0 ipsec0
    192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
    127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
    0.0.0.0 200.161.130.1 128.0.0.0 UG 0 0 0 ipsec0
    128.0.0.0 200.161.130.1 128.0.0.0 UG 0 0 0 ipsec0
    0.0.0.0 200.161.130.1 0.0.0.0 UG 0 0 0 eth0

    Vou colocar a saída do "ipsec look" também:

    0.0.0.0/0 -> 0.0.0.0/0 => %trap (0)
    192.168.0.0/24 -> 10.0.0.0/24 => [email protected] [email protected] (0)
    200.161.130.49/32 -> 0.0.0.0/0 => %trap (7)
    200.161.130.49/32 -> 64.21.49.63/32 => %pass (10)
    200.161.130.49/32 -> 64.124.33.151/32 => %pass (7)
    200.161.130.49/32 -> 200.42.92.17/32 => %pass (1)
    200.161.130.49/32 -> 200.179.42.65/32 => %pass (25)
    200.161.130.49/32 -> 200.204.0.10/32 => %pass (57)
    200.161.130.49/32 -> 200.204.0.138/32 => %pass (96)
    200.161.130.49/32 -> 200.205.144.79/32 => %pass (1)
    200.161.130.49/32 -> 201.26.98.21/32 => %pass (4)
    200.161.130.49/32 -> 207.46.2.89/32 => %pass (4)
    200.161.130.49/32 -> 208.185.132.166/32 => %pass (2)
    200.161.130.49/32 -> 217.31.49.244/32 => %pass (1)
    ipsec0->eth0 mtu=16260(1500)->1500
    [email protected] ESP_3DES_HMAC_MD5: dir=out src=200.161.130.49 iv_bits=64bits iv=0x2798eb3df0bc02c6 ooowin=64 alen=128 aklen=128 eklen=192 life(c,s,h)=addtime(39,0,0) refcount=4 ref=16
    [email protected] ESP_3DES_HMAC_MD5: dir=in src=201.26.98.21 iv_bits=64bits iv=0x5306c39c5569ebf7 ooowin=64 alen=128 aklen=128 eklen=192 life(c,s,h)=addtime(39,0,0) refcount=4 ref=11
    [email protected] IPIP: dir=in src=201.26.98.21 policy=10.0.0.0/24->192.168.0.0/24 flags=0x8<> life(c,s,h)=addtime(39,0,0) refcount=4 ref=10
    [email protected] IPIP: dir=out src=200.161.130.49 life(c,s,h)=addtime(39,0,0) refcount=4 ref=15
    Destination Gateway Genmask Flags MSS Window irtt Iface
    0.0.0.0 200.161.130.1 0.0.0.0 UG 0 0 0 eth0
    0.0.0.0 200.161.130.1 128.0.0.0 UG 0 0 0 ipsec0
    10.0.0.0 200.161.130.1 255.255.255.0 UG 0 0 0 ipsec0
    128.0.0.0 200.161.130.1 128.0.0.0 UG 0 0 0 ipsec0
    200.161.130.0 0.0.0.0 255.255.255.192 U 0 0 0 eth0
    200.161.130.0 0.0.0.0 255.255.255.192 U 0 0 0 ipsec0

  2. #2

    Padrão Problemas com IPSEC

    Teu problema todo está naquela rota que diz que
    0.0.0.0/1 e 128.0.0.0/1 devem rotear para o device ipsec0...

    O problema deve ser esse conn:
    -------------------------
    conn %default
    keyingtries=0
    disablearrivalcheck=no
    authby=rsasig
    -------------------------

    Comenta esse trexo todo do teu arquivo ipsec.conf

    E testa pois com isso nao irá navegar nem fechar o tunel direito!

    Depois fala se deu certo!

  3. #3

    Padrão Problemas com IPSEC

    Ah sim! Depois que funcionar, mude suas chaves né velho? :P

    Já que tu postou pra todo mundo ver... eheheh

  4. #4
    fmercurio
    Visitante

    Padrão Problemas com IPSEC

    Olá,
    Desde já obrigado pela resposta.
    Cara não funcionou muita coisa comentar aquele trecho do ipsec.conf. O roteamento continua não funcionando.
    Estava analisando sua resposta e verifiquei que na tabela de roteamento as rotas mencionadas que apontam para a interface ipsec0 são rotas de Gateway, ou seja, acho que minha rede perde a referencia de gateway quando o ipsec é ligado, pois ele muda a rota padrão do gateway para a interface ipsec0.

    Segue abaixo como ficou a minha tabela de roteamento:

    Kernel IP routing table
    Destination Gateway Genmask Flags Metric Ref Use Iface
    200.161.130.0 0.0.0.0 255.255.255.192 U 0 0 0 eth0
    200.161.130.0 0.0.0.0 255.255.255.192 U 0 0 0 ipsec0
    192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
    127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
    0.0.0.0 200.161.130.1 128.0.0.0 UG 0 0 0 ipsec0
    128.0.0.0 200.161.130.1 128.0.0.0 UG 0 0 0 ipsec0
    0.0.0.0 200.161.130.1 0.0.0.0 UG 1 0 0 eth0

    Valew.

  5. #5

    Padrão Problemas com IPSEC

    Citação Postado originalmente por fmercurio
    Olá,
    Desde já obrigado pela resposta.
    Cara não funcionou muita coisa comentar aquele trecho do ipsec.conf. O roteamento continua não funcionando.
    Estava analisando sua resposta e verifiquei que na tabela de roteamento as rotas mencionadas que apontam para a interface ipsec0 são rotas de Gateway, ou seja, acho que minha rede perde a referencia de gateway quando o ipsec é ligado, pois ele muda a rota padrão do gateway para a interface ipsec0.

    Segue abaixo como ficou a minha tabela de roteamento:

    Kernel IP routing table
    Destination Gateway Genmask Flags Metric Ref Use Iface
    200.161.130.0 0.0.0.0 255.255.255.192 U 0 0 0 eth0
    200.161.130.0 0.0.0.0 255.255.255.192 U 0 0 0 ipsec0
    192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
    127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
    0.0.0.0 200.161.130.1 128.0.0.0 UG 0 0 0 ipsec0
    128.0.0.0 200.161.130.1 128.0.0.0 UG 0 0 0 ipsec0
    0.0.0.0 200.161.130.1 0.0.0.0 UG 1 0 0 eth0

    Valew.
    Foi exatamente o que eu disse, tuas rotas default tao indo pra ipsec0 por isso tu fica sem navegacao :P

    Comenta também:
    interfaces=%defaultroute



    como vc reinicia o ipsec ?

  6. #6
    fmercurio
    Visitante

    Padrão Problemas com IPSEC

    Opa!
    Então, eu tive de comentar praticamente tudo do começo pra funcionar, pq se não dá erro.
    Meu ipsec.conf ficou assim:

    version 2
    config setup
    # interfaces=%defaultroute
    # klipsdebug=none
    # plutodebug=none
    # uniqueids=yes
    # plutoload=%search
    # plutostart=%search

    #conn %default
    # keyingtries=0
    # disablearrivalcheck=no
    # authby=rsasig
    conn kenzza-casa
    authby=rsasig
    left=200.161.130.49
    leftnexthop=200.161.130.1
    leftid=@kenzza-proxy..
    leftsubnet=192.168.0.0/24
    # RSA 1024 bits kenzza-proxy Fri Nov 11 16:56:03 2005
    leftrsasigkey=0sAQOnqSB28+IR54Qd9/Eut4fmMfgXy1MmaJK+we1F+eD5QKJ62ZeVZe60Xd5XZQoJ4+I+0Jze8RqUtgKTDePSV3nnz2JwdmOo9FrHsZrkjrbIL+VEsa/or3csW1cQS9b4M04INFrU8O3Z5f4Qa2DsbWqxmcd9XpSMHLLRcANhgvBoPw==
    rightnexthop=%defaultroute
    right=%any
    rightid=@kenzza-casa..
    rightsubnet=10.0.0.0/24
    # RSA 1024 bits kenzza-casa Fri Nov 11 16:55:49 2005
    rightrsasigkey=0sAQPuMbIWWBK2W3PQQ00tgMWn23Ia6ZoEctv4ksBcXDhHjZpokEOdMEjtMTUvb4QYgUU2m7rbEjx6h23fFctxsZdNTmz8783H+SyNWSuBQTx42Q8Fz7+cqip6zkLIDCtWdGL3+nxJfVLCtqLwjpGPcDwIg6YOlCzr6Cn9pkIP+EEgQw==
    type=tunnel
    auto=add

    Pra reiniciar o ipsec eu páro ele depois inicio de novo, como abaixo:

    # ipsec setup stop
    # ipsec setup start

    Abraço.

  7. #7

    Padrão Problemas com IPSEC

    Hehehe, então tá certo era so o maldito tunel pra rota default!

    Beleza agora que funciona troca tuas chaves! :P :P

    Falow!

  8. #8
    Visitante

    Padrão Problemas com IPSEC

    Ixi mano...
    acho que me expliquei errado, pq na verdade não funcionou... rs
    O ipsec starta, mas as rotas continuam iguais!!!

    Tem como editar essas rotas do ipsec?

    Abraço.