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.

Quitter la version mobile