Ce tutoriel explique comment mettre en ligne un site web statique sur un Raspberry Pi 5 (Debian Trixie) derrière une Freebox avec une IP fixe, tout en sécurisant l’accès via un certificat SSL DuckDNS.
1. Introduction et architecture réseau
Dans cette configuration, nous contournons l’impossibilité d’utiliser les ports standards (80/443) en utilisant une redirection de ports sur la Freebox.
- Port externe 50000 (HTTP) → Port interne 80 du Raspberry Pi.
- Port externe 50001 (HTTPS) → Port interne 443 du Raspberry Pi.
- Domaine :
votre_nom.duckdns.orgpointant vers l’IP fixe de la Freebox.
2. Préparation du dossier du site
Pour que le serveur web Nginx puisse servir vos fichiers, nous les plaçons dans un répertoire standard et ajustons les permissions.
3. Installation et configuration de Nginx
Nginx est un serveur léger et performant, idéal pour le Pi 5.
Installation
Configuration du « Virtual Host »
Créez un fichier de configuration dédié :
sudo nano /etc/nginx/sites-available/mon_site
Contenu à adapter avec votre domaine :
4. Sécurisation avec SSL (Let’s Encrypt + DuckDNS)
Puisque le port 80 externe est bloqué, nous utilisons le DNS Challenge.
Installation de Certbot
Script d’authentification DuckDNS
Créez un script pour valider la propriété du domaine :
nano ~/scripts/duckdns-auth.sh
(Rendez le script exécutable avec chmod +x).
Génération du certificat
5. Automatisation des mises à jour (Déploiement)
Pour éviter les fichiers parasites lors de la mise à jour du site, nous utilisons un script basé sur rsync.
Script deploy_site.sh
6. Maintenance et commandes utiles
- Vérifier la configuration Nginx :
sudo nginx -t - Redémarrer le serveur :
sudo systemctl restart nginx - Voir les logs de visite :
sudo tail -f /var/log/nginx/access.log
0 commentaire