Démarrage rapide : un site web en 15 minutes
D'une machine vierge à un site nginx fonctionnel avec certificat HTTPS : installation, répertoire du site, domaine, pare-feu et vérification.
Mis à jour le 23 août 2026
Scénario : une installation fraîche de Debian ou Ubuntu, votre propre domaine, et l'objectif de voir votre page en HTTPS. Toutes les commandes sont exécutées en root via SSH.
1. Installer nginx
apt update && apt install -y nginx
systemctl enable --now nginx
Ouvrez http://your-address dans votre navigateur — vous devriez voir une page d'accueil. Si elle n'apparaît pas, vérifiez le pare-feu (étape 3).
Sur AlmaLinux, utilisez dnf au lieu de apt ; voir AlmaLinux.
2. Pointer le domaine
Dans le panneau de votre registrar, ajoutez un enregistrement A avec l'adresse de la machine depuis l'onglet « Overview » :
example.com. A 203.0.113.10
www.example.com. A 203.0.113.10
Vérifiez que le domaine résout vers la bonne adresse :
apt install -y dnsutils
dig +short example.com
La mise à jour des enregistrements prend d'une minute à plusieurs heures. Tant que dig renvoie l'ancienne adresse, vous ne pourrez pas émettre de certificat.
3. Ouvrir les ports
apt install -y ufw
ufw allow OpenSSH
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable
D'abord
allow OpenSSH, ensuiteenable. L'ordre inverse coupera votre accès, et vous devrez vous connecter via la console texte.
4. Créer un site
mkdir -p /var/www/example.com
echo '<h1>Works</h1>' > /var/www/example.com/index.html
chown -R www-data:www-data /var/www/example.com
Configuration dans /etc/nginx/sites-available/example.com :
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
Activez et appliquez :
ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
nginx -t
systemctl reload nginx
nginx -t est obligatoire : cette commande vérifie la configuration avant le redémarrage. Si la sortie ne se termine pas par syntax is ok et test is successful, ne redémarrez pas le service — corrigez d'abord l'erreur.
5. Émettre un certificat
apt install -y certbot python3-certbot-nginx
certbot --nginx -d example.com -d www.example.com
Certbot vous demandera un e-mail, ajoutera un bloc listen 443 ssl et configurera une redirection HTTP. Le renouvellement est configuré automatiquement ; vous pouvez le vérifier ainsi :
certbot renew --dry-run
Ce qui échoue le plus souvent
| Symptôme | Cause |
|---|---|
| Le navigateur n'ouvre pas le site | Le port 80 ou 443 est fermé dans ufw |
Certbot : Timeout during connect | Le domaine ne pointe pas encore vers la machine, ou le port 80 est fermé |
502 Bad Gateway | nginx fait un proxy vers une application qui ne tourne pas — vérifiez systemctl status pour votre service |
403 Forbidden | Aucune permission sur le répertoire, ou index.html est absent |
| Page nginx par défaut au lieu de la vôtre | /etc/nginx/sites-enabled/default n'a pas été supprimé |
Journaux pour chacun de ces problèmes :
tail -n 50 /var/log/nginx/error.log
journalctl -u nginx -n 50 --no-pager
Ensuite, vous devriez vous occuper de la sécurité de base à l'aide de la checklist de la première heure si vous ne l'avez pas encore parcourue.