Aller au contenu principal

Configuration réseau

Votre PCS a besoin d'une connexion internet stable pour servir des applications aux utilisateurs. Ce guide explique comment le réseau fonctionne et comment résoudre les problèmes réseau courants.

Comment votre PCS se connecte

Votre PCS utilise plusieurs couches réseau :

  1. Votre connexion internet — Le PCS se connecte via votre FAI.
  2. Routage NSL.SH — Le réseau maillé de Yundera route votredomaine.nsl.sh vers l'IP publique de votre PCS.
  3. Proxy inverse Caddy — Caddy s'exécute sur le PCS et route les requêtes entrantes vers le bon conteneur d'application en fonction du sous-domaine.
  4. Réseau Docker — Chaque application s'exécute dans son propre conteneur Docker avec un réseau isolé.

Ports requis

Votre PCS a besoin que ces ports soient accessibles depuis internet :

PortUsageRequis ?
443HTTPS — tout le trafic webOui
80HTTP — redirige vers HTTPSRecommandé
22SSH — accès admin distantOptionnel (uniquement pour le SSH distant)

Comment vérifier si les ports sont ouverts

Depuis le Panneau d'administration → Terminal :

# Vérifier si le port 443 est en écoute
sudo ss -tlnp | grep 443

# Tester l'accès externe (depuis une autre machine)
curl -I https://votredomaine.nsl.sh

Transfert de ports (réseau domestique)

Si votre PCS est derrière un routeur domestique, vous devez transférer les ports vers celui-ci :

Étape par étape

  1. Trouvez l'IP locale de votre PCS — Depuis le Terminal : ip addr show | grep inet
  2. Connectez-vous à votre routeur — Généralement à 192.168.1.1 ou 192.168.0.1
  3. Trouvez les paramètres de transfert de ports — Souvent sous « Avancé », « NAT » ou « Serveurs virtuels »
  4. Ajoutez les règles :
    • Port externe 443 → IP interne <IP locale PCS> port 443
    • Port externe 80 → IP interne <IP locale PCS> port 80
  5. Enregistrez et appliquez

IP statique / Réservation DHCP

Pour empêcher votre routeur d'attribuer une IP différente à votre PCS :

  1. Trouvez l'adresse MAC du PCS depuis le Terminal : ip link show
  2. Dans les paramètres DHCP de votre routeur, créez une réservation liant cette adresse MAC à une IP locale fixe.

Restrictions FAI

Certains FAI restreignent ou bloquent l'hébergement sur les connexions résidentielles.

Problèmes FAI courants

ProblèmeSymptômeSolution
Port 443 bloquéImpossible d'accéder au PCS de l'extérieurUtilisez le proxy Cloudflare (masque votre vrai port)
Port 80 bloquéLet's Encrypt ne peut pas délivrer de certificatsUtilisez Cloudflare pour la terminaison HTTPS
CGNAT (NAT de niveau opérateur)Pas d'IP publique attribuéeContactez le FAI pour une IP publique, ou utilisez Cloudflare Tunnel
IP dynamiqueLe PCS devient inaccessible après un changement d'IPL'auto-diagnostic du PCS détecte la nouvelle IP automatiquement. S'exécute chaque nuit et au redémarrage.

Comment détecter le CGNAT

Depuis le Terminal :

# Vérifiez votre IP publique
curl -s ifconfig.me

# Vérifiez l'IP WAN de votre routeur
# Si ces deux IP sont différentes, vous êtes derrière un CGNAT

Si l'IP WAN de votre routeur est dans la plage 100.64.x.x, vous êtes derrière un CGNAT et devez contacter votre FAI ou utiliser un tunnel.

Cloudflare comme solution réseau

Cloudflare peut résoudre la plupart des problèmes réseau liés au FAI :

Mode proxy Cloudflare

Lorsque vous configurez un domaine personnalisé avec le mode proxy Cloudflare (voir Domaine personnalisé) :

  • Le trafic passe par : Utilisateur → Cloudflare → Votre PCS
  • Votre IP réelle est masquée
  • Cloudflare gère la protection DDoS
  • Fonctionne même si votre FAI bloque le port 80 (Cloudflare se connecte sur le 443)

Cloudflare Tunnel (avancé)

Si vous êtes derrière un CGNAT ou avez des restrictions FAI sévères, Cloudflare Tunnel crée une connexion sortante depuis votre PCS vers Cloudflare, éliminant le besoin de tout transfert de port :

  1. Inscrivez-vous à Cloudflare Zero Trust (plan gratuit disponible)
  2. Installez cloudflared sur votre PCS
  3. Créez un tunnel qui mappe votre domaine vers localhost:443
  4. Pas besoin de transfert de port ni d'IP publique

Gestion de l'IP dynamique

La plupart des connexions internet domestiques ont des IP dynamiques qui changent périodiquement. Votre PCS gère cela automatiquement :

  1. L'auto-diagnostic nocturne détecte l'IP publique actuelle.
  2. Si l'IP a changé, le PCS met à jour le routage NSL.SH.
  3. Le domaine sslip.io se met également à jour automatiquement car il est basé sur l'IP.

Si vous avez besoin d'une détection plus rapide :

  • Allez dans Panneau d'administration → Santé et cliquez sur Exécuter maintenant pour lancer un auto-diagnostic immédiat.
  • Après un redémarrage, l'auto-diagnostic @reboot s'exécute automatiquement.

Considérations de bande passante

De quelle bande passante avez-vous besoin ?

Cela dépend de votre utilisation :

Cas d'usageBande passante recommandée
Site de documentation / blog5 Mbps upload
Cloud personnel (fichiers, notes)10 Mbps upload
Galerie photo (Immich)20 Mbps upload
Streaming de médias (Jellyfin)30+ Mbps upload par flux simultané

Vérifier votre bande passante

Utilisez le test de vitesse intégré :

  1. Allez dans Panneau d'administration → Ressources → onglet Réseau.
  2. Cliquez sur Lancer le test de vitesse réseau.
  3. Examinez les vitesses de téléchargement et d'upload.

Configuration DNS

Domaines NSL.SH

Pour les domaines .nsl.sh, le DNS est géré automatiquement par Yundera. Vous n'avez rien à configurer.

Domaines SSLIP.IO

Le domaine <ip>.sslip.io est un service DNS wildcard basé sur l'IP. Il se résout automatiquement en fonction de l'IP dans le nom de domaine. Aucune configuration nécessaire.

Domaines personnalisés

Pour les domaines personnalisés, consultez la configuration détaillée dans Domaine personnalisé et Panneau d'administration → Domaine.

Dépannage réseau

Vérifications rapides depuis le Terminal

# Vérifier la connectivité internet
ping -c 3 8.8.8.8

# Vérifier la résolution DNS
nslookup votredomaine.nsl.sh

# Vérifier si Caddy fonctionne
docker ps | grep caddy

# Vérifier les logs Caddy pour les erreurs
docker logs caddy --tail 50

# Vérifier l'IP publique actuelle
curl -s ifconfig.me

# Vérifier les ports en écoute
sudo ss -tlnp | grep -E '(80|443)'

Pour d'autres problèmes réseau, consultez Dépannage.