Ubuntu server (lts) : installation & configuration pour un serveur web performant

Par Xavier Deloffre

Le serveur démarre dans un léger souffle de ventilation. Aucun écran graphique sophistiqué, aucune interface colorée. Seulement une console prête à accueillir des commandes. Pourtant, derrière cette apparente sobriété se cache le socle de milliers de sites web à travers le monde. Configurer un serveur web sous Ubuntu Server (LTS), c’est construire l’infrastructure qui rendra une application accessible 24h/24, capable d’absorber des pics de trafic tout en restant stable et sécurisée. Dans un contexte où la disponibilité, la rapidité de chargement et la protection des données sont devenues des enjeux majeurs, choisir Ubuntu Server en version LTS constitue une base solide. Son support longue durée, sa stabilité et sa compatibilité avec les principales technologies web en font une référence pour l’hébergement professionnel. Explorons ensemble comment installer et configurer Ubuntu Server LTS pour en faire un serveur web performant, sécurisé et évolutif.

Pourquoi choisir Ubuntu server (LTS) pour un serveur web

Avant même l’installation, il est important de comprendre pourquoi Ubuntu Server LTS s’impose comme une solution de distribution Linux de choix pour l’hébergement web. Derrière cette distribution Linux se cache une philosophie claire : proposer un environnement stable, sécurisé et performant, pensé pour fonctionner en continu, parfois sans interruption pendant plusieurs années. La version LTS (Long Term Support) garantit cinq années de mises à jour de sécurité et de maintenance. Pour un serveur web, cette stabilité est déterminante : elle permet d’éviter des migrations fréquentes, de limiter les interruptions de service et de maintenir un environnement cohérent sur la durée. Dans un contexte professionnel, où chaque minute d’indisponibilité peut avoir un impact financier ou réputationnel, cette continuité représente un avantage stratégique. Au-delà de la durée de support, Ubuntu Server LTS bénéficie d’un écosystème mature et d’une communauté internationale très active. Cela signifie :

  • Une documentation abondante et régulièrement mise à jour ;
  • Un large choix de tutoriels et de guides techniques ;
  • Une compatibilité étendue avec les solutions d’hébergement et les fournisseurs cloud ;
  • Des correctifs de sécurité rapidement déployés.

Ubuntu Server est optimisé pour :

  • Les serveurs HTTP (Apache, Nginx) ;
  • Les environnements PHP ;
  • Les applications Node.js ;
  • Les architectures basées sur conteneurs (Docker) ;
  • Les déploiements cloud.

Cette polyvalence permet de construire différentes architectures web :

  • Stack LAMP (Linux, Apache, MySQL, PHP) ;
  • Stack LEMP (Linux, Nginx, MySQL, PHP) ;
  • Applications Java avec serveur Tomcat ;
  • Microservices déployés via Docker ou Kubernetes.

Son système de gestion de paquets APT facilite l’installation rapide des composants nécessaires à une stack web complète. Grâce aux dépôts officiels, les logiciels sont maintenus et testés pour garantir compatibilité et stabilité. Les mises à jour peuvent être automatisées, ce qui simplifie l’administration sur le long terme. L’absence d’interface graphique constitue également un atout pour un serveur web. En réduisant la consommation mémoire et CPU, le système réserve davantage de ressources au traitement des requêtes HTTP, à la gestion des bases de données ou à l’exécution d’applications. Cette sobriété améliore les performances globales, en particulier sur des machines virtuelles ou des serveurs aux ressources limitées. Sur le plan de la sécurité, Ubuntu Server LTS intègre plusieurs mécanismes :

  • Gestion avancée des permissions via sudo ;
  • Support natif du pare-feu UFW ;
  • Possibilité d’activer AppArmor pour renforcer l’isolation des services ;
  • Mises à jour de sécurité centralisées.

Cette approche modulaire permet d’installer uniquement les services nécessaires au fonctionnement du serveur web. Moins de composants signifie une surface d’exposition réduite et une meilleure maîtrise des configurations. Enfin, Ubuntu Server LTS s’intègre parfaitement aux environnements virtualisés et cloud. Que ce soit sur une infrastructure locale, un VPS ou un cloud public, la distribution est largement supportée et souvent proposée comme image officielle par les principaux fournisseurs. Cette compatibilité simplifie le déploiement et garantit une cohérence entre environnement de développement et environnement de production. En environnement de production, cette combinaison de stabilité longue durée, de performance optimisée et de sécurité intégrée fait d’Ubuntu Server LTS un socle particulièrement adapté à l’hébergement web professionnel, qu’il s’agisse d’un site vitrine, d’un e-commerce à fort trafic ou d’une application métier stratégique.

choisir ubuntu server pour un serveur web

L’installation de Ubuntu server lts pour l’hébergement web

L’installation d’Ubuntu Server LTS constitue la première étape vers la mise en place d’un serveur web opérationnel. Cette phase ne se limite pas à copier un système d’exploitation sur un disque : elle conditionne les performances, la sécurité et la capacité d’évolution de l’infrastructure. Chaque choix effectué durant l’installation aura un impact direct sur la stabilité du futur environnement web. Pour un usage orienté production, il est recommandé d’installer la version LTS la plus récente afin de bénéficier d’un support étendu et d’un noyau Linux optimisé pour les charges serveur.

1. Téléchargement et création du support

Téléchargez l’image ISO officielle d’Ubuntu Server LTS depuis le site d’Ubuntu. Vérifiez l’intégrité du fichier à l’aide de la somme SHA256 fournie afin d’éviter toute corruption ou altération du fichier ISO :

sha256sum ubuntu-xx.xx-live-server-amd64.iso

Créez ensuite une clé USB bootable avec un outil adapté (Rufus sous Windows ou la commande dd sous Linux). Exemple sous Linux :

sudo dd if=ubuntu-xx.xx-live-server-amd64.iso of=/dev/sdX bs=4M status=progress oflag=sync

Remplacez /dev/sdX par le périphérique correspondant à la clé USB. Une fois le support prêt, configurez le BIOS/UEFI du serveur pour démarrer dessus.

2. Configuration réseau

Durant l’installation, Ubuntu détecte automatiquement les interfaces réseau via Netplan. Pour un serveur web en production, une adresse IP statique est recommandée afin d’éviter toute modification d’adresse après redémarrage. Vous pouvez définir :

  • Adresse IP fixe
  • Masque de sous-réseau
  • Passerelle par défaut
  • Serveurs DNS

Exemple de configuration Netplan après installation dans /etc/netplan/00-installer-config.yaml :

network:
  version: 2
  ethernets:
    ens33:
      dhcp4: no
      addresses: [192.168.1.10/24]
      gateway4: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8,8.8.4.4]

Appliquez ensuite la configuration :

sudo netplan apply

Une configuration réseau stable garantit l’accessibilité permanente du serveur web et facilite la configuration DNS publique.

3. Partitionnement du disque

Le partitionnement influence la performance et la flexibilité. L’utilisation de LVM (Logical Volume Manager) permet de redimensionner dynamiquement les volumes sans interruption majeure de service. Schéma recommandé :

  • / (racine) : 20–30 Go
  • /var : stockage des logs et fichiers web
  • /home : utilisateurs
  • Swap : selon la mémoire RAM disponible

Isoler /var est pertinent pour un serveur web, car ce répertoire contient :

  • Les fichiers du serveur web (/var/www)
  • Les logs (/var/log)
  • Les fichiers temporaires liés aux services

En cas de saturation disque, cette séparation évite d’impacter l’ensemble du système.

4. L’installation d’OpenSSH

Activez OpenSSH lors de l’installation. L’administration distante via SSH est la méthode standard de gestion d’un serveur Linux. Après installation, vérifiez que le service fonctionne :

sudo systemctl status ssh

Pour renforcer la sécurité, il est recommandé de :

  • Désactiver l’authentification par mot de passe
  • Utiliser des clés SSH
  • Restreindre l’accès à certains utilisateurs

5. Mise à jour du système

Une fois connecté au serveur, mettez à jour les paquets :

sudo apt update
sudo apt upgrade -y

Cette étape synchronise les dépôts APT et installe les correctifs de sécurité récents. Pour automatiser les mises à jour de sécurité :

sudo apt install unattended-upgrades -y

Un serveur web exposé à Internet doit être maintenu à jour en permanence.

6. Installation du serveur web

Deux choix principaux s’offrent à vous :

Installation d’Apache :

sudo apt install apache2 -y

Apache fonctionne avec un modèle modulaire (MPM Prefork, Worker ou Event) et est particulièrement adapté aux environnements PHP traditionnels.

Installation de Nginx :

sudo apt install nginx -y

Nginx adopte une architecture événementielle asynchrone, plus performante pour gérer un grand nombre de connexions simultanées. Après installation, vérifiez le service :

sudo systemctl status nginx

Testez ensuite l’accès via navigateur en saisissant l’adresse IP du serveur. La page par défaut confirme le bon fonctionnement.

7. Installation de PHP et base de données (stack lemp ou lamp)

Pour héberger des applications dynamiques, installez PHP et MySQL :

sudo apt install php-fpm php-mysql -y
sudo apt install mysql-server -y

Vérifiez la version PHP :

php -v

Sécurisez MySQL :

sudo mysql_secure_installation

Dans une configuration LEMP (Nginx), PHP-FPM gère l’exécution des scripts PHP via FastCGI, améliorant les performances. Pour Apache, le module libapache2-mod-php peut être utilisé. À ce stade, le serveur Ubuntu est capable d’héberger :

  • Un site statique HTML/CSS
  • Un CMS comme WordPress
  • Une application métier en PHP ou Node.js
  • Une API REST

L’installation technique d’Ubuntu Server LTS, associée à une configuration rigoureuse des composants web, pose les bases d’une infrastructure stable, évolutive et adaptée aux exigences d’un environnement d’hébergement professionnel.

installation ubuntu server

L’optimisation et la sécurisation d’un serveur web sous ubuntu server

Un serveur web ne doit pas seulement fonctionner. Il doit être rapide, stable et protégé contre les menaces. Dès lors qu’il est exposé à Internet, il devient une cible potentielle pour des scans automatisés, des tentatives d’intrusion, des attaques par déni de service ou des exploitations de vulnérabilités applicatives. L’optimisation et la sécurisation constituent donc un ensemble de pratiques techniques qui visent à garantir disponibilité, intégrité et confidentialité. Cette phase intervient immédiatement après l’installation des services web et doit être pensée comme un processus continu, et non comme une action ponctuelle.

1. La configuration du pare-feu UFW

Ubuntu intègre UFW (Uncomplicated Firewall), une interface simplifiée au-dessus d’iptables ou nftables. Par défaut, il est désactivé. Sur un serveur web, il doit être activé avec une politique restrictive.

sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow OpenSSH
sudo ufw allow 'Nginx Full'
sudo ufw enable

Seuls les ports nécessaires (80 pour HTTP et 443 pour HTTPS) doivent être ouverts. La politique deny incoming bloque toute tentative de connexion non explicitement autorisée.

Vérifiez les règles actives :

sudo ufw status verbose

Cette configuration limite considérablement la surface d’exposition du serveur.

2. Mise en place du https

Le chiffrement TLS est indispensable pour protéger les données échangées entre le navigateur et le serveur. Sans HTTPS, les identifiants, cookies de session et données sensibles peuvent être interceptés. L’installation de Certbot permet d’obtenir un certificat SSL gratuit via Let’s Encrypt :

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx

Certbot configure automatiquement :

  • Le certificat et la clé privée.
  • La redirection HTTP vers HTTPS.
  • Le renouvellement automatique via un timer systemd.

Vérifiez le renouvellement :

sudo certbot renew --dry-run

Il est également conseillé d’activer :

  • HTTP Strict Transport Security (HSTS).
  • Des suites cryptographiques modernes.
  • La désactivation des protocoles TLS obsolètes (TLS 1.0 et 1.1).

3. Optimisation des performances

L’optimisation vise à réduire le temps de réponse serveur (TTFB), améliorer la gestion des connexions simultanées et limiter la consommation de ressources.

  • Activation de la compression Gzip : réduit la taille des réponses HTTP. Dans Nginx, activez gzip on; dans le fichier de configuration.
  • Mise en cache via FastCGI : permet de servir des pages dynamiques pré-générées sans recalcul systématique.
  • Utilisation d’un reverse proxy : Nginx peut agir en frontal pour distribuer les requêtes vers plusieurs backends.
  • Optimisation des paramètres PHP : ajustez memory_limit, max_execution_time et activez OPcache.

Exemple d’activation OPcache :

sudo apt install php-opcache -y

Dans un contexte à fort trafic, il est également recommandé :

  • D’ajuster worker_processes et worker_connections sous Nginx.
  • D’optimiser les buffers TCP.
  • D’utiliser HTTP/2 ou HTTP/3 si disponible.

4. Sécurisation ssh

Le service SSH constitue un point d’entrée sensible comme nous l »exposons notamment dans notre sujet sur add_ssh_keys CircleCI. Modifiez ainsi le fichier :

sudo nano /etc/ssh/sshd_config

Appliquez les paramètres suivants :

PasswordAuthentication no
PermitRootLogin no
PubkeyAuthentication yes

Redémarrez ensuite le service :

sudo systemctl restart ssh

Pour renforcer davantage la sécurité, installez Fail2ban afin de bloquer automatiquement les adresses IP générant des tentatives répétées d’authentification.

sudo apt install fail2ban -y

5. Surveillance du serveur

La supervision permet d’identifier les anomalies avant qu’elles ne provoquent une interruption de service. Plusieurs niveaux de monitoring peuvent être mis en place :

  • Charge CPU.
  • Utilisation mémoire.
  • Occupation disque.
  • Nombre de connexions HTTP.
  • Erreurs 4xx et 5xx.

Des outils comme htop, vnstat ou des solutions plus avancées comme Prometheus et Grafana peuvent être déployés pour une vision détaillée. La consultation régulière des logs dans /var/log/nginx/ ou /var/log/apache2/ permet également de détecter :

  • Des tentatives d’injection.
  • Des scans automatisés.
  • Des erreurs applicatives.

6. Sauvegardes régulières

Aucune infrastructure web n’est complète sans stratégie de sauvegarde. Les sauvegardes doivent inclure :

  • Les fichiers du site (/var/www).
  • Les bases de données MySQL ou PostgreSQL.
  • Les fichiers de configuration.

Exemple de sauvegarde MySQL :

mysqldump -u root -p nom_base > sauvegarde.sql

Automatisez les sauvegardes via cron et stockez-les sur un support distant ou un stockage externe. Idéalement, appliquez la règle 3-2-1 :

  • 3 copies des données.
  • 2 supports différents.
  • 1 copie hors site.

L’optimisation et la sécurisation d’un serveur web sous Ubuntu Server reposent sur une approche systémique : Configuration réseau maîtrisée, durcissement des accès, chiffrement des communications, supervision active et sauvegardes régulières. C’est cette combinaison qui garantit la fiabilité et la pérennité d’une infrastructure web exposée en permanence à Internet.

optimisation et securisation ubuntu server

Déploiement, gestion des environnements et automatisation d’un serveur web sous Ubuntu server lts

Une fois le serveur web installé, optimisé et sécurisé, une nouvelle dimension entre en jeu : L’organisation du déploiement des applications et la gestion des environnements. En production, il ne suffit pas qu’un site fonctionne ; il doit pouvoir évoluer, être mis à jour sans interruption et s’intégrer dans un cycle de développement structuré. Ubuntu Server LTS offre un socle particulièrement adapté à l’automatisation et à l’industrialisation des déploiements web. Cette étape transforme un simple serveur en véritable plateforme d’hébergement maîtrisée.

1. Séparation des environnements : dev, staging et production

Dans une architecture professionnelle, il est recommandé de distinguer :

  • Un environnement de développement (local ou VM).
  • Un environnement de staging (préproduction).
  • Un environnement de production.

Cette séparation évite de déployer directement en production des modifications non testées. Sous Ubuntu Server, cela peut se traduire par :

  • Des machines virtuelles distinctes.
  • Des conteneurs isolés.
  • Des répertoires web séparés avec virtual hosts dédiés.

Avec Nginx par exemple, la configuration de plusieurs blocs server permet d’héberger plusieurs domaines ou sous-domaines sur une même machine, chacun avec ses propres paramètres.

2. Gestion des virtual hosts

Pour Apache :

sudo a2ensite monsite.conf
sudo systemctl reload apache2

Pour Nginx :

sudo ln -s /etc/nginx/sites-available/monsite /etc/nginx/sites-enabled/
sudo systemctl reload nginx

Chaque virtual host définit :

  • Le nom de domaine (server_name).
  • Le répertoire racine (root).
  • Les règles de redirection.
  • Les paramètres PHP ou proxy.

Cette approche permet d’héberger plusieurs applications web sur un seul serveur tout en conservant une isolation logique.

3. Automatisation des déploiements

L’automatisation réduit les erreurs humaines et garantit des mises à jour cohérentes. Plusieurs stratégies peuvent être adoptées :

  • Déploiement via Git (pull depuis un dépôt distant).
  • Scripts Bash automatisés.
  • Outils CI/CD.
  • Déploiement par conteneurs Docker.

Exemple simple de mise à jour via Git :

cd /var/www/monsite
git pull origin main

Pour des environnements plus avancés, Docker permet d’isoler chaque application dans un conteneur, ce qui :

  • Standardise les environnements.
  • Facilite les migrations.
  • Permet un rollback rapide en cas de problème.

4. Gestion des permissions et des utilisateurs

Un serveur web bien structuré limite les privilèges. Le service web (www-data sous Ubuntu) ne doit avoir accès qu’aux répertoires nécessaires.

sudo chown -R www-data:www-data /var/www/monsite
sudo chmod -R 750 /var/www/monsite

Évitez d’exécuter des services avec des privilèges root lorsque cela n’est pas nécessaire. L’application du principe du moindre privilège réduit les risques d’exploitation en cas de faille applicative.

5. Gestion de la montée en charge

Lorsque le trafic augmente, plusieurs solutions peuvent être mises en œuvre :

  • Ajout de ressources (CPU, RAM).
  • Mise en place d’un équilibrage de charge.
  • Externalisation de la base de données.
  • Utilisation d’un CDN pour les contenus statiques.

Nginx peut être configuré comme load balancer :

upstream backend {
    server 192.168.1.11;
    server 192.168.1.12;
}

Cette configuration permet de distribuer les requêtes vers plusieurs serveurs applicatifs, améliorant la disponibilité et la résilience.

6. Journalisation et audit

La centralisation des logs facilite l’analyse et la conformité. Il est possible de :

  • Configurer la rotation des logs via logrotate.
  • Centraliser les journaux sur un serveur dédié.
  • Analyser les logs pour identifier des anomalies.

Exemple de vérification des logs :

sudo tail -f /var/log/nginx/access.log

Une bonne gestion des journaux permet d’identifier rapidement :

  • Des pics de trafic inhabituels.
  • Des erreurs applicatives répétées.
  • Des comportements suspects.

Le déploiement, l’automatisation et la gestion structurée des environnements transforment Ubuntu Server LTS en plateforme web évolutive. Au-delà de l’installation technique, c’est l’organisation des processus et la capacité d’adaptation qui garantissent la pérennité d’un serveur web professionnel.

Pour aller plus loin : Voici le lien de téléchargement d’Ubuntu server 🙂

Xavier Deloffre

Xavier Deloffre

Fondateur de Facem Web, agence implantée à Arras et à Lille (Hauts-de-France), je suis spécialiste du Web Marketing, formateur expérimenté, et blogueur reconnu dans le domaine du Growth Hacking. Passionné par le référencement naturel (SEO) que j'ai découvert en 2009, j'imagine et développe des outils web innovants afin d'optimiser la visibilité de mes clients dans les SERPs. Mon objectif principal : renforcer leur notoriété en ligne par des stratégies digitales efficaces et créatives.

0 commentaires

Soumettre un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Besoin de visibilité ?

☑️ Experts du référencement

☑️ + de 12 ans d’éxpérience

☑️ + 500 clients satisfaits

☑️ Création de sites

☑️ Audit SEO

☑️ Conseil SEO

☑️ Référencement de sites

☑️ Devis gratuit