
Hé oui, pourquoi faire un VPN en IPv4 quand on a de l’IP v6 des 2 cotés ?
Alors 2 ou 3 éléments qu’il faut savoir !
- OpenVPN est full IPv6 à partir de la version 2.3 (sinon il faut partcher)
- OpenVPN a tjrs besoin de l’IPv4, même si’l ne s’en sert pas (du au code d’openvpn… il faut réécrire certaine partie)
- Dans cette article, je ne décrirais pas la gestion de la PKI
- C’est plutôt un OPENVPN IPv6 par l’exemple :p
I – Prérequis
Donc en guise de prérequis, nous avons :
- 1 serveur avec de la connectivité IPv6
- 1 client avec de la connectivité IPv6
- 1 plage IPv6 à partager entre le serveur et le client
- 1 PKI ok (certificat client et serveur gérés)
- Et enfin, OPENVPN 2.3 installé
II – Configuration serveur
La c’est très simple (comme toujours d’ailleur ;))
Éditons un fichier qui s’appelera server-ipv6.cfg. Les variables à adapter sont en gras :
# Conf Serveur local 2001:ac9:34bc:100::ffff port 1196 dev tap proto tcp6-server mode server keepalive 10 120 # Certificats ca keys/ca.crt cert keys/server-ipv6.crt key keys/server-ipv6.key dh keys/dh1024.pem tls-auth keys/ta.key 0 # Pool IP server 100.200.100.0 255.255.255.0 server-ipv6 2001:ac9:34bc:200::/64 ifconfig-pool-persist ipp-v6.txt float # Misc cipher AES-256-CBC max-clients 2 user nobody group nogroup comp-lzo persist-key persist-tun status-version 2 # Log status /var/log/openvpn/openvpn-status-ovh-ipv6.log log-append /var/log/openvpn/openvpn-ovh-ipv6.log verb 2 mute 20
Donc le client se connectera sur cette IP :
2001:ac9:34bc:100::ffff
Et récupérera une IPv6 dans le pool
2001:ac9:34bc:200::/64
Le serveur sera joignable par l’IPv6
2001:ac9:34bc:200::1
III – Configuration client
La, idem, un fichier qui s’ appellera client-ipv6.cfg. Les variables à adapter sont en gras :
client dev tap proto tcp6-client remote 2001:ac9:34bc:100::ffff 1196 nobind tls-client ca keys/ca.crt cert keys/client-v6.crt key keys/client-v6.key tls-auth keys/ta.key 1 user nobody group nogroup script-security 2 comp-lzo cipher AES-256-CBC persist-tun persist-key keepalive 10 120 resolv-retry infinite verb 3 mute 20 status /var/log/openvpn-status-ipv6.log log-append /var/log/openvpn-ipv6.log
IV – Conclusion
Voila, rien de plus simple….
On lance le serveur :
/usr/sbin/openvpn --writepid /var/run/openvpn.server-v6.pid --daemon ovpn-client --cd /etc/openvpn --config /etc/openvpn/server-ipv6.cfg
Puis on lance le client :
/usr/sbin/openvpn --writepid /var/run/openvpn.client-v6.pid --daemon ovpn-client --cd /etc/openvpn --config /etc/openvpn/client-ipv6.conf
Un petit ping6 devrait marcher ! sinon c’est qu’il y a un petit souci quelque part :p
# ping6 -c4 2001:ac9:34bc:200::1 PING 2001:ac9:34bc:200::1(2001:ac9:34bc:200::1) 56 data bytes 64 bytes from 2001:ac9:34bc:200::1: icmp_seq=1 ttl=64 time=28.2 ms 64 bytes from 2001:ac9:34bc:200::1: icmp_seq=2 ttl=64 time=28.4 ms 64 bytes from 2001:ac9:34bc:200::1: icmp_seq=3 ttl=64 time=28.2 ms 64 bytes from 2001:ac9:34bc:200::1: icmp_seq=4 ttl=64 time=28.3 ms --- 2001:ac9:34bc:200::1 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3004ms rtt min/avg/max/mdev = 28.207/28.292/28.408/0.185 ms
Article lu 3683 fois
Laisser un commentaire
Vous devez être connecté pour publier un commentaire.