Archives de catégorie : Tutoriel

Installer NginX sous Ubuntu avec https activé

NginX est un serveur web populaire qui sait remplir plusieurs rôles : simple serveur web, reverse proxy, WAF, …

Bien qu’il soit souvent utilisé sous forme de conteneur docker, on peut aussi bien sûr l’utiliser en application stand alone.

En ce qui me concerne, j’aime paramétrer mes machines avec un serveur NginX stand alone muni d’un certificat https fourni par Let’s encrypt, et qui partage ses certificats avec des reverse proxies NginX que je mets en frontal de mes applications docker pour leur fournit du https.

Bref, ici nous allons voir comment installer sous Ubuntu un simple serveur NginX et faire en sorte que ses certificats https soient installés et automatiquement renouvelés. En effet, les certificats https ont des durées de vie de plus en plus courte (90 jours mais en baisse selon les lois de l’UE).

Prérequis : il est bien clair que pour pouvoir paramétrer un serveur NginX offrant du https pour le site https://mon_site, il faut au préalable non seulement avoir acquis auprès d’une société spécialisée (registrar) le nom de domaine mon_site, mais en plus avoir paramétré le DNS pour qu’il pointe vers l’adresse IP de notre serveur.

Tout d’abord, il faut installer les paquets NginX et snapd :

sudo apt-get update
sudo apt-get install nginx snapd

Puis on active le https par la série de commandes suivantes :

sudo snap install core; sudo snap refresh core
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
sudo certbot --nginx

Certbot est l’outil qui s’occupe de tout avec Let’s encrypt : installation et renouvellement des certificats. La séquence ci-dessus vous demandera votre nom de domaine.

Il faut ensuite jouer un renouvellement de certificat à blanc pour être sûr que tout fonctionnera bien le jour où le certificat sera périmé et donc renouvelé en automatique :

sudo certbot renew --dry-run

Voilà, c’est terminé. Votre page web https://mon_site est fonctionnelle, et vous n’avez pas à vous soucier du renouvellement de votre certificat https, il sera fait automatiquement.

Choisir son fournisseur de DNS

Comme on l’a dit ci-dessus, pour avoir un serveur web en https il faut posséder le nom de domaine correspondant. Pour un nom de domaine rutilant comme mon_site.fr ou mon_site.com il n’y a pas le choix il faut acheter un nom de domaine à l’un des nombreux registrars.

Par contre, pour avoir un nom de domaine « technique », pas spécialement rutilant mais parfaitement fonctionnel, on peut en avoir gratuitement. En 2026, le service de domaine gratuit à utiliser est Duck DNS, qui est open-source et entièrement gratuit, il ne nécessite pas de confirmation mensuelle et est très populaire.

En ce qui me concerne, je prends mes domaines gratuits (comme celui-ci xplorer.ddns.net) chez NoIP : c’est la même chose sauf qu’il faut aller sur le site pour valider le nom de domaine une fois par mois (on reçoit un lien par email) sinon le nom de domaine est libéré.