Conectando Debian em roteador VPN Cisco 3000 com IPsec

Publicado por Daniel Roque em 31/01/2014

[ Hits: 6.996 ]

 


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

O que é um pacote Debian (.deb)

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

IceDove e Lightning - Resolvendo problema de incompatibilidade

Utilizando os 6 botões do mouse logitec G300s

Transparência do VirtualBox com o Compiz

Leitura recomendada

Baixando arquivos com parênteses ")(" com o wget

Gravando o filme assistido em sites de filmes on-line

Instalando o Google Chrome no Fedora 21 e 22 Workstation e Alterando o Ambiente Gráfico

MellowPlayer - Ouça Spotify, Deezer, Google Play, Tune In dentre outros

Proxy ssh + ssh para acessar sites bloqueados ou recursos específicos de um ip remoto

  

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