Freebox Server (Ultra V9/ Pop V8/ Delta V7 / Revolution V6 / Mini 4K)

  • État Nouveau
  • Pourcentage achevé
    0%
  • Type Anomalie
  • Catégorie WAN
  • Assignée à Personne
  • Système d'exploitation Tous
  • Sévérité Moyenne
  • Priorité Très Basse
  • Basée sur la version 4.8.16
  • Due pour la version Non décidée
  • Échéance Non décidée
  • Votes
  • Privée

FS#39839 - Ports bloqués en IPv6 sans pare-feu

Bonjour,

Je constate sur plusieurs Freebox que les hôtes ne sont pas joignables depuis Internet en IPv6 sur certains ports : 25, 139, 445, 1900, 2869 qui semblent bloqués de manière forcée (apparaissent en filtered sur nmap).
Le pare-feu IPv6 de la Freebox n'est pas activé, aucun autre routeur ni pare-feu d'hôte.

Est-ce normal que Free bloque certains ports comme ça ? (j'en ai besoin pour faire du smb donc les ports 139 et 445).

Rien à voir avec du NAT ou redirection de ports, je parle d'IPv6 ici.

Merci d'avance pour toute information.
Flo

Il y a une sélection dans l'interface abonnée, j'ai demandé, il y a des années que cela soit gérer dans Freebox OS:
- https://dev.freebox.fr/bugs/task/31854

FloBaoti a commenté le 25.11.2024 09:46

Sauf erreur de ma part, cela n'a rien à voir avec le paramètre "Blocage SMTP sortant" (qui est déjà à Non de toutes façons chez moi). Ce paramètre concerne le port 25 en destination sur les paquets sortants de la Freebox (vers Internet).
Moi je parle de l'autre sens, en entrée de la Freebox certains ports de destination semblent bloqués par d'autres mécanismes que ceux accessibles à l'abonné.

nbanba a commenté le 28.11.2024 16:23

Bonjour

Effectivement, il ne faut pas confondre, ici on parle du trafic entrant depuis internet sur une IPv6 porté par une machine du LAN .

@FloBaoti Vous devez avoir un problème de firewall local en IPv6 sur la machine cible :

De mon côté, j'arrive bien depuis internet à joindre une machine de mon lab sur laquelle je NAT une IPv6 publique de la Freebox sur les ports 25, 139, 1900, 2869
Les ports sont donc bien ouverts.

Pour mettre en évidence, je réalise le test suivant pour lequel le réseau est construit comme suit :

Ma Freebox délègue le préfixe 2a01:e0a:xxxx:xxx5::/64 à un firewall.
C'est donc le firewall qui porte les pool d'IPv6 publiques pour le prefixe 2a01:e0a:xxxx:xxx5::/64.
Derrière le firewall, une machine de mon lab nommée deb12-lab-10c.lab.lan à une IPv6 locale: fd00:50::deb1:21ab:10c sur la classe ipv6 locale fd00/7 (RFC1918)

Exactement comme en IPv4, le firewall sur le réseau réalise un 'Full Destination NAT' (full car je ne filtre pas les ports ou les protocoles) entre une IPv6 publique du préfixe 2a01:e0a:xxxx:xxx5::/64 vers l'IPv6 privée de la machine deb12-lab-10c.lab.lan :

2a01:e0a:xxxx:xxx5:0:deb1:21ab:10c  ---> DESTINATION NAT ---> fd00:50::deb1:21ab:10c

La seconde machine du test: test-srv-v6 est une machine sur internet portant une IPv6 publique depuis laquelle je peux faire des tests.

Petit croquis :

test-srv-v6 <--> @ <--> Freebox <--> firewall (portant préfixes public IPv6) <--> deb12-lab-10c

Sur le firewall, la table de routage est correctement configurée pour que la machine deb12-lab-10c puisse sortir sur internet en IPv6.
Au niveau de la table de filtrage j'ai donc une policy qui accepte le trafic de telle sorte que la machine deb12-lab-10c se comporte comme si elle portait directement l'IPv6 publique.
La machine deb12-lab-10c devient donc joignable sur internet sur l'IPv6: 2a01:e0a:xxxx:xxx5:0:deb1:21ab:10c

Maintenant que "l'infrastructure" est en place pour le test, sur la machine deb12-lab-10c on va ouvrir successivement les ports 25, 139, 445, 1900, 2869 avec le programme 'netcat-openbsd' (pas le simple netcat qui ne supporte pas IPv6) puis on va tester de s'y connecter depuis internet en utilisant la machine test-srv-v6:


Test du port 25:

on execute netcat pour ouvrir le port 25 en IPv6 sur la machine deb12-lab-10c

deb12-lab-10c: $ printf 'HTTP/1.1 200 OK\n\n%s\n%s' "2024-11-28: PORT 25 INBOUND IPv6 FREEBOX" "." |sudo netcat -6l 25

Puis on s'y connecte depuis la machine test-srv-v6

test-srv-v6 $ curl http://[2a01:e0a:xxxx:xxx5:0:deb1:21ab:10c]:25

On voir apparaître sur la machine test-srv-v6 le message du 'printf' lancé sur deb12-lab-10c:

2024-11-28: PORT 25 INBOUND IPv6 FREEBOX

Et on voit bien apparaître la connexion de 'curl' sur le port 25 dans la console de deb12-lab-10c:

GET / HTTP/1.1
Host: [2a01:e0a:xxxx:xxx5:0:deb1:21ab:10c]:25
User-Agent: curl/7.88.1
Accept: */*

Test du port 139:
on execute netcat pour ouvrir le port 139 en IPv6 sur la machine deb12-lab-10c

deb12-lab-10c: $ printf 'HTTP/1.1 200 OK\n\n%s\n%s' "2024-11-28: PORT 139 INBOUND IPv6 FREEBOX" "." |sudo netcat -6l 139

Puis on s'y connecte depuis la machine test-srv-v6

test-srv-v6 $ curl http://[2a01:e0a:xxxx:xxx5:0:deb1:21ab:10c]:139

On voir apparaître sur la machine test-srv-v6 le message du 'printf' lancé sur deb12-lab-10c:

2024-11-28: PORT 139 INBOUND IPv6 FREEBOX

Et on voit bien apparaître la connexion de 'curl' sur le port 139 dans la console de deb12-lab-10c:

GET / HTTP/1.1
Host: [2a01:e0a:xxxx:xxx5:0:deb1:21ab:10c]:139
User-Agent: curl/7.88.1
Accept: */*

Test du port 445:
on execute netcat pour ouvrir le port 445 en IPv6 sur la machine deb12-lab-10c

deb12-lab-10c: $ printf 'HTTP/1.1 200 OK\n\n%s\n%s' "2024-11-28: PORT 445 INBOUND IPv6 FREEBOX" "." |sudo netcat -6l 445

Puis on s'y connecte depuis la machine test-srv-v6

test-srv-v6 $ curl http://[2a01:e0a:xxxx:xxx5:0:deb1:21ab:10c]:445

On voir apparaître sur la machine test-srv-v6 le message du 'printf' lancé sur deb12-lab-10c:

2024-11-28: PORT 445 INBOUND IPv6 FREEBOX

Et on voit bien apparaître la connexion de 'curl' sur le port 445 dans la console de deb12-lab-10c:

GET / HTTP/1.1
Host: [2a01:e0a:xxxx:xxx5:0:deb1:21ab:10c]:445
User-Agent: curl/7.88.1
Accept: */*

… idem pour les ports 1900 et 2869

Cordialement
nbanba

Chargement...

Activer les raccourcis clavier

Liste des tâches

Détails de la tâche

Édition de la tâche