un petit tuto très court sur "comment je fais un VPN IPSEC de ma box linux (debian) (chez OVH par exemple), vers mon LAN qui a un Zyxel (ça marchera avec à peu près n'importe quel routeur, normalement))
Attention ! Dans ce cas, la machine Linux possède l'ip publique sur son interface par défaut ! Si vous êtes derrière un routeur, je suppose que rediriger les ports UDP 500 et 4500 (pour IPSEC) devraient suffire à connecter le système au VPN. Mais si vous vous éclatez avec de l'IPSEC, ce serait plutot au routeur de le faire. En plus, après faudrait déclarer la route sur toutes les machines du LAN pour les faire passer par le VPN. Donc on va dire, si vous voulez faire du VPN site à site, vous faites le VPN depuis le bidule qui est connecté en frontal à internet ^^
Activez l'ip_forwarding si vous avez besoin
Dans mon exemple :
Box Linux :
- Ip publique : 192.62.42.88 sur eth0
- Réseau privé : 192.168.18.0/24
- Ip privée : 192.168.18.1
Routeur Zyxel :
- Ip publique : 91.58.24.15
- Réseau privé : 192.168.30.0/24
[*] Pré-requis :
- Avoir un système linux (ça peut marcher avec du BSD ou autre chose mais dans les exemples ce sera linux alors faites pas chier !)
- Avoir du matos qui fait de l'IPSEC (Zyxel ici)
- Avoir un papier et un crayon
- Connaître vos IP publiques et vos réseaux privés
[*] Etape 1 : (ne pas négliger !)
- Faire le schéma de votre réseau sur le papier, à l'aide du crayon
- Noter l'ip publique de chaque routeur et le réseau privé qu'il y a derrière
[*] Etape 2 : Configuration du système linux
- Installer ipsec-tools et racoon sur le système linux
- Debian utilise racoon-tool pour configurer la config (ouais !!) et lancer le service, moi non j'ai pas compris la syntaxe, adaptez le script de config.
Les fichiers importants sont au nombre de 3 :
- /etc/ipsec-tools.conf qui sert à déclarer les réseaux privés dans le kernel
- /etc/racoon/racoon.conf qui sert à dire comment on fait le VPN
- /etc/racoon/psk.txt qui sert à définir les clés d'authentification
/etc/ipsec-tools.conf
#!/usr/sbin/setkey -f flush; spdflush; spdadd 192.168.18.0/24 192.168.30.0/24 any -P out ipsec esp/tunnel/192.62.42.88-91.58.24.15/require; spdadd 192.168.30.0/24 192.168.18.0/24 any -P in ipsec esp/tunnel/91.58.24.15-192.62.42.88/require;/etc/racoon/racoon.conf
path pre_shared_key "/etc/racoon/psk.txt"; path certificate "/etc/racoon/certs"; remote 91.58.24.15 { exchange_mode main; nat_traversal on; proposal { encryption_algorithm 3des; hash_algorithm sha1; authentication_method pre_shared_key; dh_group 2; } generate_policy off; } sainfo address 192.168.18.0/24 any address 192.168.30.0/24 any { pfs_group 2; lifetime time 8 hour ; encryption_algorithm aes, 3des, rijndael ; authentication_algorithm hmac_sha1, hmac_md5 ; compression_algorithm deflate ; }/etc/racoon/psk.txt
91.58.24.15 VOTRE_CLEF_AUTHENFICIATION- Ajouter la route :
Code : Tout sélectionner
ip route add to 192.168.30.0/24 src 192.168.18.1 dev eth0
[*] Etape 3 : Configuration du routeur
- Créer la config pour la phase 1 (IKE) et NAT-T (transversal)
3DES - SHA1 - DH group 2
- Créer la config pour la phase 2 (déclaration des réseaux)
AES - SHA1 - DH group 2 et 28800 secondes
- Connecter