Salut,
J'ai un petit problème sur lequel je butte depuis un certain temps et ça m'énerve.
J'ai installé un routeur sur mon réseau (une fonera de premières générations) qui est chargé d'annoncer mon préfixe IPv6, d'assurer le routage entre mon réseau local et mon tunnel he.net et aussi de faire office de première ligne de firewall.
C'est pour faire fonctionner le firewall avec les "Privacy Extensions" que je sèche.
Le principe des Privacy Extensions est simple : en plus de mon adresse fixe auto-configurée à partir de mon adresse MAC, j'ai plusieurs adresses aléatoires d'une durée de vie limitée, utilisées pour les connexions sortantes.
À l'époque l'idée était d'avoir une IP fixe accessible depuis l'extérieur pour les services (HTTP, FTP, SSH) et les ports associés ouverts dans le firewall.
Et une IP aléatoire pour les connexions initialisés depuis le client, à charge du traqueur de connexions d'assurer le routage correct des réponses.
Mais l'IPv6 est aussi censée faciliter les communications directes de peer à peer (partage de fichiers, téléphonie...) et là ça bouscule un peu le schéma.
Si par exemple je lance un client bittorrent sur un de mes PC, il va envoyer au tracker une requête avec comme source mon IP aléatoire (vu qu'il s'agit d'une connexion sortante), et attendre les connexions entrantes des autres clients sur cette IP, hors au niveau du routeur mes ports sont ouverts uniquement sur mon IP auto-configurée.
L'exemple de bittorrent est mauvais, car certains clients permettent de spécifier l'IP à utiliser pour les réponses (principe rendu célèbre par IPfuck), mais tous les clients bittorrent ne proposent pas cette option et certains réseaux P2P ne la proposerons certainement jamais !
Il faudrait donc que je puisse autoriser, au niveau du routeur, les connexions entrante à destination de machine:port sur mon réseau local, mais "machine" ne serait pas identifiée pas son IP, mais plutôt par son adresse @MAC, hors ip(6)tables ne permet de filtrer que sur l'adresse @MAC source.
Une idée ?
# Peut-être quelques pistes...
Posté par Florent Fourcot . Évalué à 2.
La seconde c'est un firewall/routeur d'entrée un peu moins parano, et qui autorise pour l'ensemble du réseau les ports des applications que tu utilises (à charge ensuite à chaque machine locale de fermer ce port avec un firewall personnel si elles le souhaitent). On revient à la notion de firewall de "première ligne" qui filtre le gros en laissant un peu de flexibilité derrière.
La troisième c'est la mise à jour en temps réel du firewall. Il n'existe pas de solutions pour l'instant pour ce que j'en sais (hormis un script un peu brouillon que tu pourrais écrire pour remettre à jour le firewall, une solution un peu lourde...). On peut espérer qu'on pourra un jour utiliser de l'UPNP ou un mécanisme approchant dans le futur pour demander l'ouverture de ports à la demande.
[^] # Re: Peut-être quelques pistes...
Posté par Tonton Benoit . Évalué à 2.
[^] # Re: Peut-être quelques pistes...
Posté par Florent Fourcot . Évalué à 2.
Quand tu définis un /64 par machine, tu « casses » cette protection. Pour peu que l'on sache que tu utilises ce /64 pour cette machine, on est certain que c'est toujours elle qui communique. À mon avis ce n'est pas très grave, car qui serait en mesure d'obtenir cette information (par analyse de la signature TCP, par analyse des flux, de l'entropie de ton navigateur, etc) te trace de toutes façons déjà...
[^] # Re: Peut-être quelques pistes...
Posté par Tonton Benoit . Évalué à 2.
[^] # Re: Peut-être quelques pistes...
Posté par Florent Fourcot . Évalué à 1.
Bonne question si les Privacy Extensions fonctionnent sans auto-conf avec un préfixe "en dur". Je ne vois pas techniquement ce qui empêcherait que ça marche, j'essaierai ce soir tiens.
# MAC source
Posté par 🚲 Tanguy Ortolo (site web personnel) . Évalué à 1.
Vraiment ? Je cite le manuel ip6tables(8) :
mac
[!] --mac-source address
Match source MAC address. It must be of the form XX:XX:XX:XX:XX:XX. Note that this only makes sense for packets coming from an Ethernet device and entering the PREROUTING, FORWARD or INPUT chains.
[^] # Re: MAC source
Posté par Tonton Benoit . Évalué à 3.
Et pour être plus clair, c'est surtout d'un "--mac-destination" dont j'aurais besoin !
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.