Tester si un port est ouvert en sortie (flux sortant ou egress) est essentiel pour s'assurer qu'un pare-feu, un routeur ou votre box internet ne bloque pas vos connexions vers l'extérieur.
Pour faire ces tests, il existe un outil public formidable : portquiz.net. Ce serveur a la particularité d'être à l'écoute sur absolument tous les ports. Si vous n'arrivez pas à le joindre sur un port précis, c'est que le blocage vient de chez vous.
Voici les meilleures méthodes selon votre système d'exploitation.
1. Sous Windows (Via PowerShell)
C'est la méthode la plus propre sous Windows, car elle ne nécessite l'installation d'aucun outil tiers.
Ouvrez PowerShell.
Tapez la commande suivante (en remplaçant
443par le port que vous voulez tester) :
Test-NetConnection -ComputerName portquiz.net -Port 443
Si c'est ouvert : La dernière ligne affichera
TcpTestSucceeded : True.Si c'est bloqué : Vous verrez un message d'avertissement jaune et
TcpTestSucceeded : False.
2. Sous Linux et macOS (Via le Terminal)
Option A : L'incontournable netcat (nc)
C'est l'outil le plus rapide et le plus verbeux pour ce genre de test.
nc -zv portquiz.net 443
Si c'est ouvert : Vous verrez un message du type
Connection to portquiz.net port 443 [tcp/https] succeeded!.Si c'est bloqué : La commande va tourner dans le vide (Timeout) ou afficher
Connection refused.
Option B : L'astuce avec curl
Si netcat n'est pas installé, vous pouvez détourner curl en utilisant le protocole telnet :
curl -v telnet://portquiz.net:443
Si c'est ouvert : Vous verrez
Connected to portquiz.net. (FaitesCtrl + Cpour quitter).Si c'est bloqué : Vous aurez un
Connection timed out.
3. La méthode universelle : Telnet
telnet est vieux comme le monde, mais il fonctionne partout (s'il est activé sur votre machine).
telnet portquiz.net 443
Si le port est ouvert : L'écran devient généralement noir ou affiche un message de connexion. Cela signifie que le flux sort de votre réseau sans problème.
Si le port est fermé/bloqué : Vous resterez bloqué sur
Connexion en cours...jusqu'à une erreur de dépassement de délai (Timeout).
? Note importante sur le diagnostic : > * Un Timeout (la commande cherche dans le vide) signifie presque toujours qu'un pare-feu chez vous (ou votre FAI) bloque le flux sortant.
Un Connection refused (lorsque vous testez vers un vrai serveur d'entreprise et non portquiz) signifie souvent que le flux est bien sorti de votre réseau, mais que le serveur distant n'écoute pas sur ce port ou refuse votre IP.