Pour mettre en place un serveur Apache 2 sous Ubuntu, voici les étapes à suivre :
Introduction
L’installation d’un serveur web est une compétence essentielle pour héberger des sites internet ou des
applications web. Apache 2, l’un des serveurs web les plus populaires et fiables, est couramment
utilisé dans les environnements de production. Dans ce devoir, nous allons détailler les étapes
nécessaires à la mise en place d’un serveur Apache 2 sous Ubuntu, en tenant compte des meilleures
pratiques en matière de sécurité et de gestion des sites.
1. Mettre à jour le système
Avant de commencer, il est toujours recommandé de mettre à jour les paquets de votre système
Ubuntu :
sudo apt update
sudo apt upgrade
2. Installer Apache 2
La commande suivante permet d'installer le serveur Apache 2 sur Ubuntu :
sudo apt install apache2
3. Vérifier le statut d’Apache
Après l'installation, vérifiez si Apache fonctionne correctement en consultant l'état du service :
sudo systemctl status apache2
Le service devrait être actif et fonctionnel. Si ce n'est pas le cas, démarrez Apache avec :
sudo systemctl start apache2
4. Configurer le pare-feu
Ubuntu utilise ufw comme pare-feu par défaut. Vous devrez autoriser le trafic HTTP et HTTPS pour
que le serveur soit accessible :
sudo ufw allow 'Apache Full'
5. Vérifier l’installation
Ouvrez un navigateur web et entrez l'adresse IP de votre serveur ou localhost si vous travaillez
localement :
[Link]
Si Apache est bien installé, vous verrez la page par défaut “It works!”.
6. Gérer les hôtes virtuels (Virtual Hosts)
Pour héberger plusieurs sites sur le même serveur, vous pouvez configurer des hôtes virtuels. Créez un
fichier de configuration pour votre site :
sudo nano /etc/apache2/sites-available/mon_site.conf
Ajoutez le contenu suivant en remplaçant les chemins et les domaines par les vôtres :
apache
<VirtualHost *:80>
ServerAdmin admin@mon_site.com
ServerName mon_site.com
DocumentRoot /var/www/mon_site
<Directory /var/www/mon_site>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/[Link]
CustomLog ${APACHE_LOG_DIR}/[Link] combined
</VirtualHost>
Enregistrez et quittez l'éditeur, puis activez ce site :
bash
sudo a2ensite mon_site.conf
sudo systemctl reload apache2
7. Configurer un nom de domaine (facultatif)
Si vous avez un nom de domaine, vous pouvez pointer ses enregistrements DNS vers l'adresse IP de
votre serveur, puis configurer l'hôte virtuel comme montré précédemment pour gérer ce domaine.
8. Activer les modules supplémentaires (facultatif)
Pour activer certains modules d'Apache, utilisez les commandes suivantes. Par exemple, pour activer
mod_rewrite :
bash
sudo a2enmod rewrite
sudo systemctl restart apache2
9. Sécuriser Apache avec SSL (HTTPS)
Pour sécuriser vos connexions, il est recommandé d'activer SSL. Vous pouvez utiliser Certbot pour
obtenir un certificat SSL gratuit avec Let's Encrypt :
bash
sudo apt install certbot python3-certbot-apache
sudo certbot --apache
Certbot configure et installe automatiquement les certificats SSL pour vous.
10. Tester la configuration
Enfin, vérifiez que votre configuration Apache est correcte :
bash
sudo apachectl configtest
Si tout est bon, redémarrez Apache pour appliquer les changements :
bash
sudo systemctl restart apache2
Conclusion
En suivant ces étapes, nous avons installé et configuré un serveur Apache 2 sous Ubuntu. Cela inclut
la gestion des hôtes virtuels pour héberger plusieurs sites et la sécurisation du serveur avec SSL.
Apache 2 reste une solution robuste et flexible pour la mise en place de serveurs web, adaptée à
différents types de projets, des sites personnels aux applications d'entreprise.