Administration Réseaux sous Linux 1 Brice ONDJIBOU Administrateur Systèmes & Réseaux Linux Pentesteur web et Réseaux 2 Serveur web Un serveur web est un logiciel chargé d'accepter les requêtes HTTP de clients, et de leur envoyer des réponses HTTP en même temps que des contenus, qui sont habituellement des pages web, c'est à dire des documents HTML et des objets liés (images, etc.) 3 Serveur web: Apache2 L'enquête Netcraft de septembre 2018 rapporte qu'Apache gère 34% des millions de sites les plus fréquentés, Nginx rapportant 25% et Microsoft 10%. Apache est sans doute le serveur Web le plus important; 4 Modularité Apache est un système modulaire: un module contrôle la façon dont Apache rapporte son état un autre module permet à chaque utilisateur du système de créer son propre site Web dans son répertoire de base. Un module permet de gérer ajout de la couche SSL/TLS. Apache a un robuste système de journalisation 5 Les possibilités offertes par apache2 Un seul serveur Apache peut utiliser des hôtes virtuels pour servir plusieurs sites Web. Apache peut servir à la fois le trafic HTTP et HTTPS. Authentification de base peut être utilisée pour demander aux clients de fournir un login et password avant de se voir accorder l'accès au contenu protégé. ModSecurity est un pare-feu d'application Web qui peut être utilisé pour protéger les serveurs Web et applications. 6 Apache2 Installation Pour installer Apache sur un système: #apt-get install apache2 Cela installe Apache avec les valeurs suivantes: Nom du service: apache2 Nom de l'application: /usr/sbin/apache2 Répertoire de configuration: /etc/apache2 Fichier de configuration principal: /etc/apache2/apache2.conf ServerRoot: non spécifié DocumentRoot: varie selon la distribution; 7 Fichiers de configuration apache2.conf : Il contient des paramètres globaux d'Apache2. httpd.conf : utilisé par Apache v1 conf-available : contient les fichiers de configuration disponibles. conf-enabled : conserve les liens symboliques dans /etc/apache2/confavailable. envvars : script de démarrage. Ports.conf : définit les ports TCP d’Apache 8 Fichiers de configuration mods-available : contient les fichiers de config qui permettent de charger les modules et de les paramétrer. mods-enabled : contient les liens symboliques vers les fichiers de /etc/apache2/mods-available. sites-available : contient des fichiers de configuration pour les serveurs virtuels d'Apache2. sites-enabled : contient des liens symboliques vers le dossier /etc/apache2/sites-available. 9 Configuration d'hôtes virtuels Apache distingue deux types d'hôtes virtuels : ceux qui se basent sur l'adresse IP (ou le port); ceux qui reposent sur le nom DNS du serveur web. La configuration par défaut d'Apache 2 exploite les hôtes virtuels basés sur le nom. 10 Hôte virtuel /etc/apache2/sites-available/www.uob.ga.conf: <VirtualHost *:80> ServerName www.uob.ga ServerAlias uob.ga ServerAdmin [email protected] DocumentRoot /var/www/html/www.uob.ga </VirtualHost>