Yunohost, Freebox et IPv6
De plus en plus de réseaux proposent une adresse en IPv6. Je ne détaillerai pas ce qu'est IPv6, le pourquoi et la nécessité de le développer...
Obtenir une IPv6 sur sa machine Yunohost
Dans les prérequis, il y a :
sur la Freebox, dans la partie administration, avoir activer l'IPv6.
avoir IPv6 d'actif sur l'OS sur lequel se trouve Yunohost (Debian Jessie dans mon cas)
Avec l'IPv6, chaque machine se voit attribuer une IP publique, basée sur l'IP principale (celle de la Freebox) et l'adresse MAC de l'équipement concerné (pour faire simple). Une fois IPv6 activée sur la Freebox, la machine Yunohost étant réglée en DHCP (avec comme paramétrage au niveau de la Freebox de toujours associer la même IP), la machine se voit attribuer 2 IPv6.
Une adresse commençant par fe80: : qui est une adresse locale (fonctionnant uniquement sur le sous réseau physique local : le switch et le wifi de la Freebox). Une adresse commençant par 2a01:exxx:xxxx:xxxx : qui est une adresse publique (La Freebox ayant l'adresse 2a01:exxx:xxxx:xxxx::1)
Pour chaque machine ayant une IPv6 , la Freebox ouvre un tunnel vers Internet (indépendamment de la redirection de ports nécessaire pour l'adresse en IPv4 qui n'est que privée, liée au réseau local. Le NAT et la redirection de ports de l'IPv4 publique de la Freebox vers l'IPv4 locale de la machine sous Yunohost n'est utile qu'en IPv4). La redirection n'est donc plus nécessaire puisque la machine peut être attaquée via le tunnel V6. Comme indiqué, l'adresse IPv6 est publique : la machine est donc directement visible et accessible depuis Internet (d'où la nécessité de surveiller les logs, de faire les mises à jour, d'avoir un pare-feu activé, fail2ban... tout ce qui est installé et configuré par défaut dans Yunohost).
On peut voir ces deux adresses via un
sudo ifconfig /all
eth0 Link encap:Ethernet HWaddr 78:xx:xx:xx:xx:xx
inet adr:192.168.0.1 Bcast:192.168.0.255 Masque:255.255.255.0
adr inet6: 2a01:exxx:xxxx:xxxx:b81b/64 Scope:Global
adr inet6: fe80::7a2b:cbff:fea8:b81b/64 Scope:Lien
(...)
Configuration du DNS
Si on a un nom de domaine, par exemple mondomaine.fr, il faut noter l'adresse IPv6 publique de la machine sous Yunohost et dans la configuration des entrées DNS, en plus de l'entrée correspondant à l'association de l'IPv4 publique de la Freebox (ici représentée par XYZ.XYZ.XYZ.XYZ)
Nom Type Valeur
@ A XYZ.XYZ.XYZ.XYZ
On ajoute une entrée AAAA avec l'adresse IPv6 publique de la machine sous Yunohost (ici représentée par 2a01:exxx:xxxx:xxxx:b81b)
Nom Type Valeur
@ A XYZ.XYZ.XYZ.XYZ
@ AAAA 2a01:exxx:xxxx:xxxx:b81b
Validation de l'accessibilité en IPv6
Depuis une autre machine, sur un réseau extérieur et pour lequel on a une adresse IPv6, on peut vérifier qu'un
ping -v6 mondomaine.fr
répond et renvoie bien l'adresse IPv6 de la machine Yunohost.
On peut aussi tester un traceroute, ou encore, depuis un navigateur, saisir dans la barre d'adresse (avec les crochets, contrairement à une IPv4)
http://[2a01:exxx:xxxx:xxxx:b81b]
et ça doit afficher la même page par défaut que si on va sur l'url http://mondomaine.fr
Conclusion
Si ça marche, votre machine Yunohost est bien accessible en IPv6 de l'extérieur. Pratique quand on souhaite s'y connecter depuis un réseau sur lequel on n'a pas d'IPv4 (seulement de l'IPv6).