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.
Nenhum comentário foi encontrado.