Conectando Debian em roteador VPN Cisco 3000 com IPsec

Publicado por Daniel Roque em 31/01/2014

[ Hits: 5.808 ]

 


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

Colocando o XRDP para funcionar

Thunderbird - Erro: Data errada de recebimento de e-mail [Resolvido]

Expandindo partição ext3 em discos lógicos e qcow2 em ambiente de virtualização

CCSM: Bug após atualização do Debian [Resolvido]

IceDove e Lightning - Resolvendo problema de incompatibilidade

Leitura recomendada

Como se conectar a partir do Windows no Ubuntu usando o Remote Desktop

Colocando o modem Motorola SM56 para funcionar no Ubuntu 8.04

Telegram no Fedora

Conectando à internet fácil fácil com o W580i

Joomla 1.5.20 e Kompozer 0.83b, ambos em português, instaláveis via apt-get - Livre SO

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário