Le reverse proxy reçoit HTTPS sur le port 443 et transmet les requêtes aux applications internes. Caddy ou Nginx Proxy Manager peuvent remplir ce rôle. Leur interface d’administration doit rester privée.
Configuration
- Réservez l’adresse LAN du proxy.
- Configurez DNS vers l’adresse publique et le DDNS si nécessaire.
- Redirigez TCP 443 vers le proxy.
- Associez chaque nom à la bonne application interne.
Certificats
HTTP-01 nécessite normalement le port 80 accessible. DNS-01 valide un enregistrement DNS et convient aux services privés. Employez un jeton API avec les droits nécessaires : un jeton DDNS n’est pas automatiquement un jeton d’API DNS. Un certificat wildcard couvre un niveau supplémentaire, pas la racine de la zone.
Vérifications
Configurez les proxies de confiance, WebSockets et limites d’envoi. Testez le renouvellement automatique et le rechargement effectif du certificat.
Exemples de configuration
Adaptez valeurs, interfaces et ports. Les exemples peuvent correspondre à différentes versions : n’exécutez pas ensemble des variantes incompatibles. Ne publiez jamais de vrais jetons ou clés privées.
ha.yourname.uk.app {
reverse_proxy 192.168.1.20:8123
}
films.yourname.uk.app {
reverse_proxy 192.168.1.30:8096
}
cloud.yourname.uk.app {
reverse_proxy 192.168.1.40:11000
}sudo systemctl reload caddy
journalctl -u caddy -f # watch the certificates being issued# as root on the proxy machine (sudo -i)
apt install unzip python3 curl
curl https://get.acme.sh | sh -s email=you@example.com
curl -fsSLO https://uk.app/downloads/ukapp-tools.zip && unzip ukapp-tools.zip
install -m 755 ukapp.py /usr/local/bin/ukapp
cp dns_ukapp.sh ~/.acme.sh/dnsapi/
install -m 600 /dev/null /root/.ukapp-api-token
nano /root/.ukapp-api-token # paste the API token, saveexport UKAPP_TOKEN="$(cat /root/.ukapp-api-token)"
~/.acme.sh/acme.sh --issue --server letsencrypt --dns dns_ukapp --dnssleep 300 \
-d yourname.uk.app -d '*.yourname.uk.app'mkdir -p /etc/caddy/certs
~/.acme.sh/acme.sh --install-cert -d yourname.uk.app --ecc \
--fullchain-file /etc/caddy/certs/fullchain.pem \
--key-file /etc/caddy/certs/key.pem \
--reloadcmd "chown -R caddy:caddy /etc/caddy/certs && systemctl reload caddy"(wildcard) {
tls /etc/caddy/certs/fullchain.pem /etc/caddy/certs/key.pem
}
ha.yourname.uk.app {
import wildcard
reverse_proxy 192.168.1.20:8123
}cat > /usr/local/sbin/acme-renew <<'EOF'
#!/bin/sh
UKAPP_TOKEN="$(cat /root/.ukapp-api-token)"
export UKAPP_TOKEN
exec /root/.acme.sh/acme.sh --cron --home /root/.acme.sh
EOF
chmod 700 /usr/local/sbin/acme-renew
~/.acme.sh/acme.sh --uninstall-cronjob
echo '17 3 * * * root /usr/local/sbin/acme-renew >/var/log/acme-renew.log 2>&1' > /etc/cron.d/acme-renewVérifications finales
Testez depuis une connexion mobile hors de votre Wi-Fi. Vérifiez séparément DNS, port attendu, certificat HTTPS valide et authentification. Gardez les interfaces administratives privées, appliquez les mises à jour et testez une restauration. Contrôlez les pare-feu IPv6 et IPv4. Un test de port réussi n’est pas un audit de sécurité.
Cette édition localisée résume le guide source. Les commandes conservent leur syntaxe originale. Consultez la documentation du fabricant pour votre version exacte.