Aller au contenu

AS213941 · Peering-20 % sur tous les VPS avec le code NVH20 · Livraison en 60 secondes

VPS LinuxDès 2,49 €/moisVPS WindowsDès 3,49 €/moisServeur FiveMDès 0,99 €/moisServeur MinecraftDès 1,99 €/mois
VPS & Cloud

Gammes

VPS Linux NVMeAccès root, Debian, Ubuntu, Alma…VPS Windows RDPBureau à distance, licence incluseServeurs dédiésIntel Xeon Gold, ressources exclusivesVPS PterodactylPanel de jeux préinstallé

Réseau et hébergement

Anti-DDoSHébergement webHousingTransit IPVPN

Professionnels

VPS revendeurProgramme revendeur
Solutions

Bots et automatisation

VPS agents IAUn serveur pour vos assistants de code et agents autonomesVPS OllamaVotre IA privée sans GPU, données en FranceVPS bot TelegramPython ou Node.js, toujours joignableVPS bot DiscordMusique, modération, tickets : sans interruptionVPS n8nWorkflows sans limite d'exécutionsVPS VPNUn tunnel chiffré qui sort par la FranceVPS web scrapingCollecte de données planifiée, IP dédiée

Trading

VPS ForexVos robots gèrent les positions la nuitVPS MetaTrader 4Plusieurs terminaux MT4 sur une machineVPS MetaTrader 5Forex, indices et actions dans MT5VPS NinjaTraderFutures et stratégies NinjaScriptVPS prop firmChallenges et comptes financés, terminal toujours en ligneVPS trading AfriqueMetaTrader à Paris, depuis le Maghreb ou l'Afrique de l'OuestVPS RDPBureau à distance Windows, toujours alluméVPS bot de tradingBots crypto open source, clés API protégées

Bureau Windows

VPS Windows 10Pour vos logiciels qui exigent Windows 10VPS Windows 11Le poste Windows récent, accessible partoutVPS SEOCrawls de gros sites sans bloquer votre PCVPS streamingUn studio OBS qui diffuse depuis le datacenterVPS WordPressSites rapides sur disque NVMe
Marketplace

Intelligence artificielle

OllamaDes modèles de langage locaux, sans API externeOpen WebUIUne interface de discussion pour vos modèles OllamaAnythingLLMAssistant IA privé sur vos documents (PDF, sites, notes) : espaces de travail, recherche…LangflowÉditeur visuel Langflow pour construire agents, flux RAG et API d'IA, protégé par votre…FlowiseCréez visuellement vos agents et chatbots IA (LangChain, RAG, outils) avec Flowise, votre…QdrantBase de données vectorielle Qdrant pour vos projets RAG et de recherche sémantique, API…

Trading

MetaTrader 5Terminal MetaTrader 5 officiel (MetaQuotes) installé en mode portable, raccourci sur le…MetaTrader 4Terminal MetaTrader 4 officiel (MetaQuotes) installé en mode portable, raccourci sur le…Pack VPS Forex (MT4 + MT5)MetaTrader 4 et MetaTrader 5 installés ensemble, chacun dans son dossier portable, VPS…NinjaTrader 8Plateforme NinjaTrader 8 avec ses prérequis (.NET 4.8, WebView2) : installée à partir du…FreqtradeRobot de trading crypto open source avec son interface FreqUI, installé en mode…Interactive Brokers TWS / IB GatewayTrader Workstation ou IB Gateway (pour l'API et les robots) d'Interactive Brokers…

Bots et agents

Claude CodeL'agent de code d'Anthropic, dans votre terminalCodex CLIL'agent de code d'OpenAI en ligne de commandeBot TelegramHébergez votre bot Telegram (Python, Node.js ou Bun) : votre code depuis Git ou une…Bot DiscordHébergez votre bot Discord (discord.py, discord.js, Bun…) : votre code depuis Git ou une…OpenClawAssistant IA personnel open source OpenClaw, actif 24 h/24 : discutez avec lui sur…Hermes AgentAgent IA autonome open source de Nous Research, avec mémoire et compétences qui…

Déploiement et automatisation

DockerLe moteur de conteneurs et Docker Composen8nVos automatisations, sans limite d'exécutionsPortainerGérez vos conteneurs Docker depuis le navigateurCoolifyDéployez vos applications depuis Git, sur votre serveurUptime KumaSurveillez vos sites et serveurs, alertes comprises

Sites et bases de données

WordPressLe CMS le plus utilisé, sur une pile Nginx rapideApache + PHP + MySQLServeur web prêt à héberger vos sites : Apache2, PHP et ses extensions courantes, MariaDB…MySQL (MariaDB)Serveur de base de données MariaDB compatible MySQL, avec votre base et votre…PleskPanel d'hébergement Plesk Obsidian installé avec ses composants recommandés : sites…NextcloudVotre cloud de fichiers, agenda et contacts

Réseau et sécurité

WireGuardVotre VPN chiffré, préinstallé en option payanteVaultwardenUn gestionnaire de mots de passe auto-hébergé

Serveurs de jeu

FiveMServeur FiveM (FXServer + txAdmin), MariaDB et phpMyAdmin installés et configurés, sous…MinecraftServeur Minecraft Java Edition clé en main : Paper, Purpur, Fabric, NeoForge, Forge ou…RustServeur Rust (Facepunch) avec LinuxGSM : mises à jour automatiques, redémarrage après…Counter-Strike 2Serveur Counter-Strike 2 dédié avec LinuxGSM (environ 60 Go à télécharger), jeton GSLT…PalworldServeur Palworld dédié avec LinuxGSM : nom, mot de passe, nombre de joueurs et mot de…ValheimServeur Valheim dédié avec LinuxGSM, protégé par mot de passe (exigé par le jeu)…
Gaming

Serveurs de jeux

Serveur FiveMtxAdmin, ESX, QBCoreServeur MinecraftJava, Bedrock, modpacksServeur RustOxide, Carbon, wipesServeur Nova-LifeRP Nova-Life: Amboise

Protection et outils

Anti-DDoS FiveMOutils gratuits
Ressources

Apprendre

DocumentationBlog

Assistance

ContactEngagement SLA
Voir les offres Espace client Peering · AS213941

Installation

Installer Nginx et un certificat HTTPS Let's Encrypt

Par Équipe NVHCloud 2026-09-18 Lecture : 5 min

Nginx est le serveur web le plus utilisé sur les VPS : léger, rapide, et capable de servir aussi bien un site statique qu'une application PHP, Node.js ou Python. Ce guide l'installe, crée un premier site et le passe en HTTPS avec un certificat Let's Encrypt gratuit et renouvelé automatiquement. Comptez dix minutes sur Ubuntu 24.04 ou Debian 12.

1. Prérequis

  • Un VPS avec un accès root en SSH. Voir premiers pas sur votre VPS.
  • Un domaine dont les enregistrements A (et AAAA si vous avez une IPv6) pointent vers le VPS. Vérifiez-le avant de commencer :
dig +short monsite.fr
dig +short www.monsite.fr

Les deux commandes doivent renvoyer l'adresse IP de votre VPS. Si ce n'est pas le cas, attendez la propagation ou corrigez vos DNS : voir configurer les DNS. Let's Encrypt refusera le certificat tant que le domaine ne pointe pas vers le serveur.

2. Installer Nginx

apt update
apt install -y nginx
systemctl enable --now nginx

Si le pare-feu UFW est actif, ouvrez les ports 80 et 443. Le port 80 doit rester ouvert même après le passage en HTTPS : Let's Encrypt l'utilise pour vérifier le domaine à chaque renouvellement.

ufw allow 'Nginx Full'

En ouvrant http://ADRESSE_IP dans un navigateur, vous devez voir la page « Welcome to nginx ». Pour la configuration du pare-feu, voir configurer UFW.

3. Créer le site

Nginx lit un fichier de configuration par site dans /etc/nginx/sites-available/, activé par un lien dans sites-enabled/. Créez le dossier du site et une page de test :

mkdir -p /var/www/monsite.fr
echo '<h1>Ça marche</h1>' > /var/www/monsite.fr/index.html
chown -R www-data:www-data /var/www/monsite.fr

Puis le fichier /etc/nginx/sites-available/monsite.fr :

server {
    listen 80;
    listen [::]:80;
    server_name monsite.fr www.monsite.fr;
    root /var/www/monsite.fr;
    index index.html;
    location / {
        try_files $uri $uri/ =404;
    }
}
ln -s /etc/nginx/sites-available/monsite.fr /etc/nginx/sites-enabled/
rm -f /etc/nginx/sites-enabled/default
nginx -t && systemctl reload nginx
💡 Prenez l'habitude de toujours lancer nginx -t avant reload. En cas d'erreur de syntaxe, Nginx vous indique le fichier et la ligne, et le site en ligne n'est pas interrompu.

Pour une application PHP, reportez-vous à installer WordPress ; pour Node.js, à Node.js avec PM2 et Nginx.

4. Obtenir le certificat

apt install -y certbot python3-certbot-nginx
certbot --nginx -d monsite.fr -d www.monsite.fr --redirect -m [email protected] --agree-tos

Certbot contacte Let's Encrypt, qui vérifie que vous contrôlez le domaine en appelant un fichier temporaire sur le port 80. Une fois le certificat obtenu, Certbot modifie votre fichier Nginx : il ajoute l'écoute sur le port 443, les chemins du certificat, et une redirection permanente du HTTP vers le HTTPS grâce à --redirect.

L'adresse e-mail sert uniquement aux alertes d'expiration, si jamais le renouvellement automatique échouait.

5. Vérifier le renouvellement automatique

Les certificats Let's Encrypt sont valables 90 jours. Le paquet Certbot installe une tâche planifiée qui les renouvelle automatiquement quand il leur reste moins de 30 jours. Vérifiez qu'elle est active, puis simulez un renouvellement :

systemctl list-timers | grep certbot
certbot renew --dry-run

Si la simulation réussit, vous n'avez plus rien à faire. Let's Encrypt a annoncé des durées de validité plus courtes dans les années à venir, ce qui rend cette automatisation indispensable.

Pour recharger Nginx après chaque renouvellement, Certbot le fait déjà avec le plugin Nginx. Si vous utilisez le certificat ailleurs, dans un serveur de messagerie par exemple, ajoutez un script dans /etc/letsencrypt/renewal-hooks/deploy/.

6. HTTP/2 et en-têtes de sécurité

HTTP/2 charge plusieurs fichiers en parallèle sur une seule connexion. La syntaxe dépend de votre version de Nginx, affichée par nginx -v :

# Nginx 1.25.1 et plus récent
listen 443 ssl;
http2 on;
# Nginx 1.24 (Ubuntu 24.04) et plus ancien
listen 443 ssl http2;

Ajoutez ensuite ces en-têtes dans le bloc server HTTPS :

add_header X-Content-Type-Options "nosniff" always;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
add_header Strict-Transport-Security "max-age=31536000" always;
⚠️ L'en-tête Strict-Transport-Security (HSTS) oblige les navigateurs à n'utiliser que le HTTPS pendant la durée indiquée, ici un an. Ne l'activez qu'une fois le HTTPS stable sur tous vos sous-domaines concernés : en cas de retour en arrière, les visiteurs ne pourraient plus accéder au site.

Testez votre configuration avec le service gratuit SSL Labs : un site configuré ainsi obtient la note A.

7. Derrière Cloudflare

Si votre domaine passe par le proxy Cloudflare (nuage orange), la vérification sur le port 80 fonctionne en général, mais deux réglages sont à connaître :

  • Dans Cloudflare, choisissez le mode SSL Full (strict). Le mode « Flexible » laisse le trafic en clair entre Cloudflare et votre serveur, et provoque souvent des boucles de redirection.
  • Si vous activez « Always Use HTTPS » ou des règles de redirection chez Cloudflare, laissez passer le chemin /.well-known/acme-challenge/.

Détails dans Cloudflare : DNS et proxy.

8. Dépannage

MessageCause probableSolution
Timeout during connectPort 80 ferméOuvrez-le dans UFW et vérifiez qu'aucun autre pare-feu ne le bloque.
NXDOMAIN ou DNS problemLe domaine ne pointe pas encore vers le VPSVérifiez avec dig et attendez la propagation.
Invalid response ... 404Un autre bloc server répond à la place du vôtreVérifiez server_name et supprimez le site par défaut.
too many certificates already issuedLimite de Let's Encrypt atteinte après trop d'essaisPatientez, et testez avec --dry-run avant de relancer.

Les journaux détaillés de Certbot se trouvent dans /var/log/letsencrypt/letsencrypt.log.

Questions fréquentes

Le certificat Let's Encrypt est-il vraiment gratuit ?

Oui. Let's Encrypt est une autorité de certification à but non lucratif. Ses certificats sont reconnus par tous les navigateurs et offrent le même chiffrement qu'un certificat payant. Les certificats payants se distinguent surtout par la validation de l'organisation et par la garantie financière, rarement utiles pour un site classique.

Peut-on obtenir un certificat pour tous les sous-domaines ?

Oui, avec un certificat générique pour *.monsite.fr. Il exige une validation par enregistrement DNS plutôt que par le port 80, donc un plugin Certbot compatible avec votre fournisseur DNS, par exemple Cloudflare. Pour quelques sous-domaines, il est plus simple de les lister avec plusieurs options -d.

Que se passe-t-il si le renouvellement échoue ?

Rien d'immédiat : le renouvellement commence 30 jours avant l'expiration et est retenté automatiquement. Si l'échec persiste, vous recevez un e-mail d'alerte à l'adresse indiquée. Les causes habituelles sont un port 80 fermé ou un domaine qui ne pointe plus vers le serveur.

Faut-il laisser le port 80 ouvert après le passage en HTTPS ?

Oui. Il sert à rediriger les visiteurs qui tapent l'adresse sans https, et Let's Encrypt en a besoin pour valider chaque renouvellement. Il ne présente pas de risque tant qu'il se contente de rediriger vers le HTTPS.

VPS WordPress

Vos sites sur NVMe, sans limite, Anti-DDoS inclus.