Astuces

PTI Apache 2 sous Debian

Après avoir vu le PTI Administration de base, je vais vous présenter celui d’Apache 2 réalisé en machine virtuel Debian.

Liste des PTI que vous pouvez trouver sur le Blog:

  1. PTI  Administration de base sous Windows Server
  2. Apache 2 sous Debian
  3. DHCP  et relais DHCP sous Windows
  4. Installation et paramétrage rapide d’un gestionnaire de parc sous Debian avec GLPI et son agent OCS. (A noter un Tutorial réalisé par mes soins ici)
  5. Sauvegarde sous Windows

C’est parti:

 

Contexte :

L’entreprise Utopiie s’étant considérablement agrandit, nous voulons pouvoir faire circuler des informations plus simplement. Nous allons mettre en place plusieurs  sites qui seront sécurisés via la mise en place d’un serveur Apache.

Objectifs :

Notre serveur Apache hébergera trois différents sites. Le site comptable, le site secrétaire et le site Design.

 

Etape 1

 

Préparation

Pour pouvoir mettre en place un serveur Apache il va tout d’abord falloir installer le service Apache en utilisant la commande apt get install apache2.

On vérifie ensuite si cette installation a fonctionné en entrant l’adresse IP du serveur Apache sur le navigateur internet.  On aura alors un message « It works » qui devrait s’afficher.

 

Etape 2

 

Création des sites

Nous allons commencer par créer les répertoires où se trouveront  les différents sites. Pour ce faire nous allons nous rendre dans le répertoire /var/www/.

Dans ce dossier nous allons créer un répertoire « sites » où se trouveront  les trois différents sites.

Nous aurons les répertoires Comptable, Secrétaire et   Design  avec des pages web dans ces répertoires.

 

Création des fichiers configurations

Après avoir créé ces sites, il va falloir créer des fichiers des configurations. Nous allons nous rendre cette fois-ci dans /etc/apache2/sites-available/ pour créer les fichiers de configurations pour nos sites comptable et secrétaire.

Pour ne pas retaper à chaque fois le fichier de configuration, nous allons copier le fichier default en le renommant par le nom des différents sites.

Les lignes modifiées seront :

<VirtualHost 192.168.56.18>
ServerName www.comptable.fr
DocumentRoot  /var/www/sites/Comptable

<VirtualHost 192.168.56.18 :8081>
ServerName www.secretaire.fr
DocumentRoot /var/www/site/Secretaire

Etant donné que notre site secrétaire pointe sur 8081, il ne faudra pas oublier de dire au fichier ports.conf d’écouter ce port.

Notre site comptable pointera donc sur l’adresse IP 192.168.56.18 et secrétaire sur 192.168.56.18 :8081.

Nous désactivons tout d’abord le site par defaut en faisant a2dissite default, puis ensuite nous activons notre premier site en faisant a2ensite Comptable et Secretaire. Nous rechargeons apache en faisant /etc/init.d/apache2 reload. Nous testons alors ce site en se connectant en 192.168.56.18 et en 192.168.56.18 :8081 sur le poste client.

 

Problème

Nous voulons faire en sorte que  notre site Design pointe lui aussi sur une adresse IP et non sur un port. Pour ce faire nous allons mettre en place une interface virtuelle.

 

Etape 3

 

Mise en place d’une interface virtuelle

Pour créer des interfaces virtuelles, nous allons nous rendre dans /etc/network/ puis nous allons modifier le fichier interfaces.

Nous allons rajouter les lignes suivantes :

Iface eth0 :0 inet static
address 192.168.56.19
netmask 255.255.255.0
gateway 192.168.56.254
Auto eth0 :0

Après avoir cette nouvelle interface virtuelle, il ne faut pas oublier de redémarrer le réseau en utilisant la commande /etc/init.d/networking restart.

Pour vérifier si cette adresse a été parfaitement paramétré, on la ping.

 

Création du  fichier de configuration de design

Maintenant que nous avons créé notre nouvelle interface, nous retournons dans le fichier /etc/apache2/sites-available/, puis copions le fichier default pour notre site Design. Nous aurons alors le début du fichier comme suit

<VirtualHost 192.168.56.19>
ServerName www.design.fr
DocumentRoot /var/www/sites/Design

On active le site et nous rechargeons ensuite apache. On se connecte ensuite sur 192.168.56.19 pour voir si l’on arrive à joindre le site.

 

Modification des fichiers hosts

Pour plus de simplicité pour se rendre sur les sites, nous ne seront plus obliger d’indiquer les adresses IP. Pour ce faire nous allons modifier le fichier hosts de debian qui se trouve dans etc/. Nous aurons donc :

192.168.56.18                     www.comptable.fr
192.168.56.18                     www.secretaire.fr
192.168.56.19                     www.design.fr

Nous ferons la même chose sur les postes clients en modifiant le fichier hosts se trouvant dans Windows/systme32/driver/etc/.

Nous allons maintenant tenter de rejoindre les sites via leur nom DNS.

 

Etape 4

 

Problème port et dns

Nous n’arrivons pas à joindre le site secrétaire via son nom DNS, c’est normal  il y a un problème avec le port. Pour ce faire il faut que nous remodifiions  le fichier httpd.conf.

Nous allons modifier la ligne concernant au site secrétaire pour avoir :

NameVirtualHost 192.168.56.18
<VirtualHost 192.168.56.18 :8081>
ServerName www.secretaire.fr
Documentroot /var/www/sites/secretaire
</VirtualHost>

Nous retournerons  également dans le fichier ports.conf pour enlever ce qu’on avait rajouté précédemment.

On testera une nouvelle fois ces trois sites.

 

Restriction

Nous avons un problème, tout le monde a accès à nos sites et nous voulons faire en sorte que ces accès soient restreints.

 

Etape 5

 

Mise en place d’un fichier .htaccess

Pour pouvoir mettre en place des restrictions sur nos sites, nous allons créer un fichier .htaccess dans chaque répertoire de nos sites créés dans /var/www/sites.

Pour compta, notre fichier .htaccess sera :

AuthUserFile « /etc/apache2/userCompta »
AuthGroupFile /dev/null
AuthName « Accès Interdit ! »
AuthType Basic

<limit GET>
require valid-user
</limit>

Notre ligne AuthUserFile /etc/apache2/userCompta changera selon le nom du site. Nous aurons AuthUserFile /etc/apache2/usersSecret pour le site secretaire et AuthUserFile /etc/apache2/userDesign pour le site design.

Création des utilisateurs authentifies

Une fois notre fichier .htaccess créé, nous allons créer le fichier dont nous avons donné le chemin dans AuthUserFile en utilisant la commande htpasswd –c /etc/apache2/userCompta  nom_Utilisateur pour le site Comptable.

L’utilisateur  Marie aura accès au site comptable,  Ludovic au site secrétaire  et Louis, Adrien et Arnaud au site Design.

 

Modification des fichiers de configuration des sites

Pour pouvoir dire aux sites qu’il faut utiliser le fichier .htaccess, une modification des fichiers de configurations des sites doit être réalisée. Pour ce faire dans chaque fichier de configuration se trouvant dans /etc/apache2/sites-available/, nous allons modifier le deuxième directory comme suit :

<Directory /war/www/site/Nom_du_Repertoire>
AllowOverride All
</Directory>

Nous réactivons alors  encore une fois apache et testons nos sites pour voir si la sécurité a correctement était pris.

 

Conclusion

Nous avons donc accès de façon sécurisé à nos trois différents sites selon l’utilisateur que nous sommes.

 

 

Vous pouvez télécharger au format .doc  ce PTI.

 

Liste de tous les PTI par ici.

Montrez plus

@lex

Créateur de ce blog, je suis un passionné par tout ce qui touche à l'informatique et à la photographie.

Articles Liés

5 commentaires

  1. Salut,

    Merci beaucoup pour tes PTIs, je m’en suis inspiré pour les miens que je passe dans 2 mois.

    Bye 🙂

  2. C’est Pratique des Techniques Informatiques.

    En gros on doit faire un dossier de 3, 4 pages et expliquer une démarche que l’on doit reproduire devant un jury pour avoir une note pour le BTS (que j’ai passé l’année dernière). Pour ça que c’est pas trop long et que ce n’est pas non plus trop poussé 🙂

  3. oups, je ne sais pas ce qu’est un PTI? j’imagine un devoir travaux pratique…
    mais dès que je vois apache + debian ça m’interresse 🙂

  4. C’était juste un PTI Fred, à présenter lors du BTS. Il fallait pas faire un truc trop poussé, c’est pour ça que je ne vais pas trop loin et que je n’utilise pas de DNS ou autre :).

  5. Modification des fichiers hosts:
    pourquoi faire du lmhost sur les postes clients?
    tu mets en place un p’tit serveur DNS avec paramétrage des postes client qui point dessus et le tour est joué

    de plus il y a moyen de faire plus simple avec les Virtualhosts sans mettre en place une interface virtuel

    enfin je trouve l’article et la marche à suivre un peu brouillon sauf sur la partie .htaccess

    pour pousser la sécurisation un peu plus loin, passer par ex: http://www.comptable.fr en https avec certificat auto-signé car s’il y a des connections à des bases de données le couple login/mdp passe en clair sur le réseau.

Laisser un commentaire

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

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Bouton retour en haut de la page