Skip to content

Référence des ports

Port 8000 (TCP) – HTTP alternatif / Serveur de dev

HTTP alternatif — souvent un serveur web de développement (Django runserver, Python http.server), pas de service fixe.

tcpRegistered

En bref

Transport
tcp
Catégorie
Registered
Niveau de risque
Élevé

Souvent ciblé — limitez l'exposition et durcissez-le.

État par défaut

Ouvert lorsqu'un serveur de dev ou d'applications tourne. Souvent en HTTP simple et lié à toutes les interfaces par erreur.

À quoi sert le port 8000 ?

Le port 8000 est un port HTTP alternatif populaire, le plus souvent utilisé par les serveurs web de développement locaux. C'est le port par défaut de runserver de Django, du module http.server intégré de Python, d'Uvicorn et de nombreux autres frameworks et outils. Aucun service fixe ne lui est associé : sur une machine donnée, il peut s'agir d'un partage de fichiers rapide ou d'une application complète en cours de développement. Il sert généralement du HTTP simple sans chiffrement.

Quand faut-il l'ouvrir ?

Ouvrez le 8000 lorsque vous voulez accéder à un serveur de développement depuis un autre appareil de votre réseau local, par exemple pour tester un site depuis votre téléphone. Pour du trafic de production réel, utilisez un vrai serveur web derrière une configuration HTTP/HTTPS standard plutôt que d'exposer le 8000 directement.

Est-ce risqué de l'ouvrir ?

Les serveurs de développement sont conçus pour la commodité, pas pour l'exposition, et divulguent souvent des informations de débogage, alors gardez le 8000 sur localhost ou votre réseau privé. Consultez les notes de sécurité ci-dessous.

Comment vérifier si ce port est ouvert

Linux
ss -tulpn | grep :8000
nmap -p 8000 <target>
Windows
netstat -ano | findstr :8000
Test-NetConnection <host> -Port 8000
macOS
lsof -i :8000
nmap -p 8000 <target>

Comment ouvrir ce port sur votre box/routeur

Pour joindre ce service depuis l'extérieur de votre réseau, redirigez le port sur votre box :

  1. Ouvrez la page d'administration de votre box (souvent http://192.168.1.1 ou http://192.168.0.1) et connectez-vous.
  2. Trouvez la section « Redirection de ports » — parfois appelée NAT, Serveur virtuel ou NAT/PAT.
  3. Ajoutez une règle redirigeant le port externe 8000 vers l'IP locale de votre appareil, port interne 8000, protocole TCP.
  4. Enregistrez, redémarrez la box si demandé, puis testez le port depuis l'extérieur de votre réseau.

Ne redirigez que des ports que vous maîtrisez — cela expose l'appareil à Internet. Pour un accès distant d'administration, un VPN est plus sûr que la redirection de port.

Autoriser ce port dans le pare-feu

Linux (ufw)
sudo ufw allow 8000/tcp
Linux (firewalld)
sudo firewall-cmd --permanent --add-port=8000/tcp
sudo firewall-cmd --reload
Linux (iptables)
sudo iptables -A INPUT -p tcp --dport 8000 -j ACCEPT
Windows
New-NetFirewallRule -DisplayName "Allow 8000" -Direction Inbound -Protocol TCP -LocalPort 8000 -Action Allow

Sécurité et risques

Attaques courantes

  • Serveurs de débogage/développement exposés par accident avec traces complètes
  • Interception en clair (généralement du HTTP simple, pas du TLS)
  • Listing de répertoires et divulgation de source via http.server
  • RCE en mode débogage du framework et fuite d'informations

Durcissement

  • Ne jamais exécuter un serveur de dev sur le 8000 en production ou sur une interface publique
  • Lier à 127.0.0.1 et accéder via un proxy inverse TLS avec authentification
  • Désactiver le mode débogage du framework (ex. Django DEBUG=False) si joignable
  • Restreindre par liste d'IP / VPN et ajouter une authentification
  • Journaliser les accès et corriger le serveur d'applications

Comment bloquer ce port

Linux (ufw)
sudo ufw deny 8000/tcp
Linux (firewalld)
sudo firewall-cmd --permanent --remove-port=8000/tcp
sudo firewall-cmd --reload
Linux (iptables)
sudo iptables -A INPUT -p tcp --dport 8000 -j DROP
Windows
New-NetFirewallRule -DisplayName "Block 8000" -Direction Inbound -Protocol TCP -LocalPort 8000 -Action Block

Commande nmap

nmap -p8000 --script http-title,http-headers,http-enum <target>

Remplacez <target> par l’hôte ou la plage que vous êtes autorisé à scanner.

Ports liés

Questions fréquentes

À quoi sert le port 8000 ?
C'est un port HTTP alternatif courant, le plus souvent un serveur web de développement comme runserver de Django ou http.server de Python. Il n'y a pas de service fixe unique, donc identifiez toujours ce qui écoute réellement.
Est-il sûr d'exposer le port 8000 à Internet ?
Non. Les serveurs de dev sur le 8000 sont mono-thread, non durcis, et tournent souvent en mode débogage, exposant des traces et parfois permettant l'exécution de code. Liez-le à localhost et placez-le derrière un proxy TLS authentifié.

Parcourir par catégorie

Guides associés