[TUTO] Mise en place d\'un tunnel VPN entre deux réseaux
Publié : mar. 3 juil. 2007 17:37
Puisque je m'ennuyais cet aprem, je me suis motivé pour faire un vpn entre le réseau de chez mes parents et le mien.
C'est d'autant plus intéressant qu'ils sont enfin passés en dégroupage, donc avec un upload plus rationnel.
Bref.
Le tutorial est valable déjà sous debian, mais il est adaptable à toutes les distributions linux, et assez facilement portable sous windows.
Prérequis : Un poste opérant sous linux de chaque côté du tunnel, idéalement une passerelle.
[#ff0000]/!\ Pour l'instant je n'ai pas considéré le chiffrage du tunnel /!\[/#ff0000]
[*]Etape 1 : Installer openVPN
Sous debian, tout est déjà packagé, profitez-en :
Réalisez donc cette installation sur les deux passerelles, client et serveur.
[*]Etape 2 : Configurer le serveur
Créez un fichier de configuration dans /etc/openvpn/, par exemple vpn-home.conf
Adaptez-y le contenu de celui-ci :
Voilà, le serveur est configuré, vous pouvez le lancer par
[*]Etape 3 : Configurer le client
Même principe que pour le serveur, les fichiers de config sont relativement semblables :
Voilà, tout est opérationnel, les deux réseaux sont sensés être joints.
Pour le vérifier, essayez un ping sur l'extrémité du tunnel. Vous devriez avoir une réponse si tout s'est bien passé.
Attention cependant, cette configuration ne prend pas en compte les certificats pour le chiffrement (je le ferai à l'occasion)
C'est d'autant plus intéressant qu'ils sont enfin passés en dégroupage, donc avec un upload plus rationnel.
Bref.
Le tutorial est valable déjà sous debian, mais il est adaptable à toutes les distributions linux, et assez facilement portable sous windows.
Prérequis : Un poste opérant sous linux de chaque côté du tunnel, idéalement une passerelle.
[#ff0000]/!\ Pour l'instant je n'ai pas considéré le chiffrage du tunnel /!\[/#ff0000]
[*]Etape 1 : Installer openVPN
Sous debian, tout est déjà packagé, profitez-en :
aptitude install openvpn liblzo1La librairie lzo permet de compresser partiellement les trames IP, résultant en une diminution légère de la BP utilisée (et l'overload est assez négligeable)
Réalisez donc cette installation sur les deux passerelles, client et serveur.
[*]Etape 2 : Configurer le serveur
Créez un fichier de configuration dans /etc/openvpn/, par exemple vpn-home.conf
Adaptez-y le contenu de celui-ci :
local 82.244.x.y remote 88.172.z.t port 1194 proto udp dev tun ifconfig 192.168.217.1 192.168.217.2 route 192.168.0.0 255.255.255.0 192.168.217.2 comp-lzo ping 15 ping-restart 45 ping-timer-rem persist-tun persist-keyExplications :
local -> l'adresse sur laquelle le serveur va écouter (ici l'adresse WAN) remote -> l'adresse du client que l'on va accepter port -> le port utilisé par le tunnel (par défaut 1194) proto -> le protocole utilisé (par défaut udp) dev -> le type de pont utilisé (bridge [tap] ou tunnel [tun]) ifconfig -> l'adresse des deux extrémités du tunnel. La première correspond au local, la seconde au distant. route -> Si vous n'êtes pas dans le même réseau des deux côtés, vous pouvez préciser les routes nécessaire. Le champ peut être dupliqué suivant la complexité du réseau comp-lzo -> indique qu'il faut utiliser la compression des paquets (recommandé)Le reste des options peut être enlevé, dans mon cas elles servent à vérifier la persistance du tunnel.
Voilà, le serveur est configuré, vous pouvez le lancer par
/etc/init.d/openvpn restartVous aurez droit à un beau message du style :
Stopping virtual private network daemon: vpn-home. Starting virtual private network daemon: vpn-home(OK).Si vous voyez un failed pour un des vpn, allez jeter un oeil dans le syslog, c'est expliqué.
[*]Etape 3 : Configurer le client
Même principe que pour le serveur, les fichiers de config sont relativement semblables :
local 88.172.z.t remote 82.244.x.y port 1194 proto udp dev tun ifconfig 192.168.217.2 192.168.217.1 route 192.168.235.0 255.255.255.0 192.168.217.1 route 10.0.0.0 255.0.0.0 192.168.217.1 comp-lzo ping 15 ping-restart 45 ping-timer-rem persist-tun persist-keyEnsuite, même principe, lancez le serveur côté client
Voilà, tout est opérationnel, les deux réseaux sont sensés être joints.
Pour le vérifier, essayez un ping sur l'extrémité du tunnel. Vous devriez avoir une réponse si tout s'est bien passé.
Attention cependant, cette configuration ne prend pas en compte les certificats pour le chiffrement (je le ferai à l'occasion)