Conectando Debian em roteador VPN Cisco 3000 com IPsec

Publicado por Daniel Roque em 31/01/2014

[ Hits: 6.802 ]

 


Conectando Debian em roteador VPN Cisco 3000 com IPsec



Caros senhores, gostaria de documentar aqui como ficou a configuração do Racoon no Debian para conectar-se a um roteador Cisco 3000.

Dados do Cisco que me foram fornecidos:

Protocolo do túnel VPN: IPsec
  • Parâmetro IKE
  • Criptografia: 3DES
  • Autenticação: SHA1
  • Diffie-Hellman: Group 2
  • Lifetime: 86400 seg
  • Pre-shared Secret

Túnel IPsec:
  • Modo: Túnel
  • Criptografia: esp-3des
  • Autenticação: sha1
  • Diffie-Hellman: Group 2
  • Lifetime: 28800 seg
  • Use Perfect Forward Secrecy: não

  • Peer: x.x.x.x
  • Rede: d.d.d.d/24

Dados do GNU/Linux:
  • WAN: y.y.y.y
  • LAN: z.z.z.254 rede z.z.z.z/24

Considerações iniciais

  • O kernel tem que ser maior que 2.6.28, no caso, estou utilizando 2.6.38 recompilado para dar suporte a IPsec.
  • É preciso instalar os pacotes ipsec-tools e o racoon.
  • A distribuição em questão, é o Debian.

Configuração do Racoon (arquivo: /etc/racoon/racoon.conf):

log info;
path pre_shared_key "/etc/racoon/psk.txt";

remote x.x.x.x {
        exchange_mode main;
        my_identifier address y.y.y.y;
        peers_identifier address x.x.x.x;
        initial_contact on;
        proposal_check obey;
        proposal {
                encryption_algorithm 3des;
                hash_algorithm sha1;
                authentication_method pre_shared_key;
                dh_group 2;
        }
}


sainfo address z.z.z.z/24 any address d.d.d.d/24 any {
        #pfs_group 2;
        lifetime time 28800 seconds ;
        encryption_algorithm 3des;
        authentication_algorithm hmac_sha1;
        compression_algorithm deflate ;
}

Configuração da chave compartilhada que me foi passada (arquivo: /etc/racoon/psk.txt):

x.x.x.x       senhacompartilhada

Configuração do IKE e das regras IPsec (arquivo: /etc/ipsec-tools.conf):

#!/usr/sbin/setkey -f
flush;
spdflush;

spdadd z.z.z.z/24 d.d.d.d/24 any -P out ipsec
           esp/tunnel/y.y.y.y-x.x.x.x/require;

spdadd d.d.d.d/24 z.z.z.z/24 any -P in ipsec
          esp/tunnel/x.x.x.x-y.y.y.y/require;

Configure um para na inicialização definir a rota da rede do GNU/Linux para a rede do Cisco. Eu utilizei o arquivo /etc/rc.local para isto:

echo 1 >/proc/sys/net/ipv4/ip_forward
ip route add to d.d.d.d/24 via z.z.z.254
iptables -t nat -A POSTROUTING -j MASQUERADE

Note que a regra do IPtables mascara basicamente tudo, talvez você queira uma regra mais específica aí.

Testando as configurações

Parando os serviços:

# /etc/init.d/setkey stop
# /etc/init.d/racoon stop


Iniciando os serviços:

# /etc/init.d/setkey start
# /etc/init.d/racoon start


Caso queira debugar a comunicação do Racoon, execute ele sem ser em plano de fundo, com o comando abaixo:

# racoon -vF -f /etc/racoon/racoon.conf

Se precisar de extra debug, altere a configuração do racoon.conf:
  • De: log info;
  • Para: log debug;

Mais informações de status podem serem obtidas com o comando racoonctl, alguns exemplos:

# racoonctl show-sa ah
# racoonctl show-sa esp
# racoonctl show-sa isakmp


Conclusão

Este não é um tutorial, é apenas uma luz para aqueles que enfrentaram o mesmo desafio.

Eu não sou conhecedor de Cisco, então não sei quais comandos definem as configurações que me foram passadas.

Outras dicas deste autor

Configurando o celular GT-S8000B como modem 3G

Exemplos prático para VirtualBox em modo console

Samba - Compartilhamento público sem pedir senha

Emulação de Impressora Jetdirect

Samsung R480 - controle da luz de fundo

Leitura recomendada

Pontos de interrogação e de exclamação invertidos

Terra Sonora no GNU/Linux

Escolhendo o modo de inicialização do Netscape

Jogando Xadrez através da Internet com o Linux

Flash Player 64 bits disponível

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts