Retour Au TP LINUX


QUESTIONS - RÉPONSES | ADMINISTRATION LINUX - APACHE


INTRODUCTION


Question 1. Installer le serveur HTTP Apache 2, vérifier sa configuration par défaut et tester en accédant à sa page d’accueil.
Oui, vous pouvez utiliser lynx, un navigateur en ligne de commande, pour tester la page d'accueil d'Apache sans avoir à ouvrir un navigateur graphique. Voici la version mise à jour avec cette précision :

1. Installation d'Apache 2 :
sudo apt update
sudo apt install apache2

2. Vérification du statut du service Apache 2 :
sudo systemctl status apache2

3. Vérification de la configuration par défaut :
sudo nano /etc/apache2/apache2.conf
sudo nano /etc/apache2/sites-available/000-default.conf

4. Test de l'installation et de la configuration avec lynx :
sudo lynx http://127.0.0.1/



MANIPULATION - SÉQUENCES 1 : VIRTUAL HOSTS


Question 2. L’utilisateur dupont peut-il lire fichier, peut-il le modifier ?
1. Créer un fichier de configuration pour l'hôte virtuel :
sudo nano /etc/apache2/sites-available/monsite.net.conf
Dans ce fichier, ajoutez la configuration suivante :


    ServerAdmin webmaster@monsite.net
    ServerName www.monsite.net
    DocumentRoot /var/www/monsite
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined



2. Créer le répertoire pour le site web :
sudo mkdir /var/www/monsite

3. Activer le nouvel hôte virtuel :
sudo a2ensite monsite.net.conf

4. Modifier le fichier de configuration d'Apache pour écouter sur le port 8080 :
sudo nano /etc/apache2/ports.conf
Ajoutez cette ligne dans le fichier si elle n'existe pas déjà :
Listen 8080


5. Ajouter une entrée dans /etc/hosts pour www.monsite.net :
sudo nano /etc/hosts
Ajoutez la ligne suivante à la fin du fichier :
127.0.0.1   www.monsite.net


6. Redémarrer Apache pour appliquer les changements :
sudo systemctl restart apache2

7. Vérifier la configuration avec lynx ou un navigateur :
sudo lynx http://www.monsite.net:8080


Question 3. Activer à nouveau le vhost par défaut. Tester maintenant les trois accès possibles.
1. Activer à nouveau le vhost par défaut :
sudo a2ensite 000-default.conf

2. Vérifier si le site par défaut est activé :
sudo apache2ctl configtest
Cette commande doit retourner `Syntax OK`.

3. Redémarrer Apache pour appliquer les modifications :
sudo systemctl restart apache2

4. Tester les trois accès possibles :
- Accès via localhost :
sudo lynx http://localhost/

- Accès via l'adresse IP locale (127.0.0.1) :
sudo lynx http://127.0.0.1/

- Accès via le nom d'hôte :
sudo lynx http://www.monsite.net/



MANIPULATION - SÉQUENCES 2 : CONFIGURATION DES VIRTUAL HOSTS


Question 4. Dans votre domaine www.intra.net, créer un dossier public.
1. Accéder au répertoire racine du domaine :
cd /var/www/intra.net

2. Créer un nouveau dossier nommé `public` :
sudo mkdir public

3. Définir les droits d'accès pour que le dossier soit lisible publiquement :
sudo chmod 755 public

4. Vérifier que le dossier a bien été créé avec les permissions appropriées :
ls -ld public
La sortie devrait afficher quelque chose comme :
drwxr-xr-x 2 root root 4096 date public

5. (Optionnel) Si nécessaire, donner l'accès en écriture à un utilisateur spécifique :
sudo chown -R utilisateur:utilisateur public

6. Tester l'accès en ligne de commande pour vérifier la visibilité publique :
sudo lynx http://www.intra.net/public


Question 5. Configurer votre domaine www.intra.net pour qu’il n’accepte que des requêtes de l’adresse IP votre serveur, qu’il recherche la page default.html par défaut sinon celui-ci retournera le contenu du dossier (sous-répertoires et fichiers) au format HTML. Désactiver les autres options.
sudo nano /etc/apache2/sites-available/www.intra.net.conf

2. Limiter l'accès au site à l'adresse IP du serveur (par exemple `192.168.1.10`) en ajoutant les lignes suivantes dans le bloc `` :

Require ip 192.168.1.10


3. Configurer Apache pour rechercher `default.html` comme page par défaut en ajoutant la ligne suivante :
DirectoryIndex default.html

4. Activer l'affichage du contenu du dossier si `default.html` est absent, et désactiver toutes les autres options en ajoutant :
Options +Indexes
Options -ExecCGI -Includes -FollowSymLinks -SymLinksIfOwnerMatch

5. Enregistrer et fermer le fichier, puis vérifier la syntaxe de la configuration :
sudo apache2ctl configtest
Cette commande doit retourner `Syntax OK`.

6. Redémarrer Apache pour appliquer les modifications :
sudo systemctl restart apache2

7. Tester l'accès pour vérifier que seul le serveur a accès, que `default.html` est bien utilisé comme page par défaut, et que le contenu du dossier s'affiche en HTML en cas d'absence de cette page :
sudo lynx http://www.intra.net



MANIPULATION - SÉQUENCES 3 : AUTHENTIFICATION


Question 6. Créer un dossier private à la racine de votre domaine www.intra.net. Ajouter à la racine de ce dossier le fichier index.html ci-dessous.

      <html>
      <body>
      <h1>Bienvenue dans la zone privée !</h1>
      </body>
      </html>
    

1. Accéder au répertoire racine du domaine :
cd /var/www/intra.net

2. Créer un nouveau dossier nommé `private` :
sudo mkdir private

3. Aller dans le dossier `private` :
cd private

4. Créer le fichier `index.html` avec le contenu suivant :
sudo nano index.html

5. Ajouter le code HTML suivant dans le fichier et enregistrer :
      <html>
      <body>
      <h1>Bienvenue dans la zone privée !</h1>
      </body>
      </html>
    


6. Définir les permissions d'accès pour le fichier afin qu'il soit accessible par le serveur :
sudo chmod 644 index.html

7. Tester l'accès au fichier en ligne de commande :
sudo lynx http://www.intra.net/private/index.html


Question 7. Ajouter à la racine de votre domaine www.intra.net le fichier erreur.html ci-dessous.

      <html> 
      <body> 
      <h1>Erreur authentification !</h1> 
      </body> 
      </html> 
    

1. Accéder au répertoire racine du domaine :
cd /var/www/intra.net

2. Créer le fichier `erreur.html` à la racine du domaine :
sudo nano erreur.html

3. Ajouter le contenu HTML suivant dans le fichier et enregistrer :
      <html>
      <body> 
      <h1>Erreur authentification !</h1> 
      </body> 
      </html> 
    

4. Définir les permissions d'accès pour le fichier afin qu'il soit accessible par le serveur :
sudo chmod 644 erreur.html

5. Tester l'accès au fichier en ligne de commande pour s'assurer qu'il est visible :
sudo lynx http://www.intra.net/erreur.html


#
#