PPE.2.2 Étude de cas de la Maison des ligues
Sommaire I Introduction...3 II LOT 1 : Mise en place de l'infrastructure du stand au salon du sport lorrain...4 Schéma logique du stand...4 Documentation installation serveur web...5 Configuration du point d accès...6 Configuration Des machine fixe/nomade...8 Rapport du plan de test...8 III LOT 2 : Mis en place d'un serveur Proxy : SQUID...10 Installation...10 Configuration de base...10 Règle de filtrage...11 Rapport du test...12 Authentification des utilisateurs...13 IV LOT 3 - Nouvelle application de réservation de salles...16 Mise en place d'un serveur NFS...16 Importation de la Base de données...19 V LOT 4 Aménagement de deux nouvelles salles...21 Création des Vlans...21 VI Conclusion...24 2/24
I Introduction Dans ce PPE, nous allons nous centrer sur l'installation ainsi que la configuration d'un serveur WEB dédier à la structure ''Maison des ligues''. En effet ce dernier à besoin d'un serveur WEB (qui doit avoir le service apache) pour présenter ses locaux, pour permettre l'inscription afin d'être contacté ultérieurement. Et doit également sécuriser ses trafiques par le billet d'un serveur proxy nommer Squid fonctionnant sous un environnement Linux. Le but étant d'interdire ou d'autoriser les flux entrant/sortant du site. Sans oublier qu'il faudra avoir une technologie permettant la segmentation des différents flux pour chaque sport proposés par la maison des ligues. 3/24
II LOT 1 : Mise en place de l'infrastructure du stand au salon du sport lorrain Schéma logique du stand Le nombre d'adresse possible pour le DHCP: 30 adresse IP Plage d'adressage IP: 192.168.15.5-192.168.15.34 4/24
Documentation installation serveur web Tout d'abord, il faut établir les syntaxes suivante : #apt-get update Pour mettre à jours les packages. On suite appliquer un #apt-get install apache2 pour installer le serveur web apache. #apt-get install php5 ----> pour installer l'interpreteur php version 5. #apt-get install mysql-server mysql-client -----> Pour installer le serveur de base de données. Si on souhaite, on peut voir si apache2, php5 ou mysql sont installés. Il suffit de taper la commande #dpkg -l apache2 (par exemple : pour apache2) Résultat retourner par la syntaxe ci-dessus. / Nom Version Architecture Description +++-==============-============-============- ================================= ii apache2 2.2.22-13+de i386 Apache HTTP Server metapackage Si on souhaite modifier le port qui va désigne le numéro pour accéder à notre service, il faut se rendre dans l'arborescence suivante : etc/apache2/ports.conf puis changer le port par défaut qui est le 80, on x (le numéro qu'aura comme numéro de service). Avant NameVirtualHost *:80 Listen 80 Après NameVirtualHost *: X Listen X Une fois les configurations faite, il faut redémarrer le serveur web via la commande : #service apache2 restart 5/24
Pour la configuration du serveur de base de données, il faut simplement autoriser l accès des clients. Donc aller dans l arborescence : /etc/mysql et taper la commande #gedit my.cnf Ensuite, il faut affecter le méta-caractère * dans ''bind-address'', pour que MySQL comprend que tous les clients auront accès au service. Configuration du point d accès Tout d'abord il faut se rendre l interface de la borne via un moteur de recherche, on utilisant donc le protocole d'affichage http. Puis il faut renseigner le SSID ( l'identifiant de la borne Wi-Fi), donc ici Conseil-Store est l'identifiant Wi-Fi du réseau. 6/24
Et enfin concernant la configuration du point d accès, on doit choisir le type de sécuriser et son mot de passe qui nous permet de s authentifier dans le réseau. ICI pour valider Et enfin, il faut configurer le service DHCP de la borne WI-FI, en lui indiquant la plage d'adresse IP qui va attribuer aux hôtes, qui lui seront connectés. Voici le détail lorsque la configuration est terminer concernant le DHCP. 7/24
Configuration Des machine fixe/nomade Une fois que la borne wi-fi est bien configurer, il suffit sur sa machine (par exemple : Windows 7), de la mettre simplement en configuration automatique au niveau TCP/IPv4, pour que ce dernier reçoit une adresse IP automatique. Carte Ethernet Connexion au réseau local : Suffixe DNS propre à la connexion... : Adresse IPv6 de liaison locale.....: fe80::615b:c924:db04:cc73%11 Adresse IPv4..............: 192.168.15.15 Masque de sous-réseau......... : 255.255.255.0 Passerelle par défaut......... : 192.168.15.1 Concernant la machine nomade (smartphone), il suffit simplement de sélectionner le nom du réseau nommé wifi-maison-des-ligues et s'y connecter. Rapport du plan de test Lorsque toute les configurations sont finis, à partir du serveur on a put afficher en local la futur page web, on indiquer sur la barre URL l'adresse IP locale ( 127.0.0.1) suivie du service (105). 8/24
Lorsqu'on a comme message It works!, c'est que le service serveur apache est opérationnel. Pour une machine fixe avec chrome (sous Windows 7), le résultat est le même, il suffit juste d'indiquer cette fois l'adresse IP non locale du serveur : Et enfin pour une machine nomade (dans ce cas un smartphone) connecter à la borne wifi. Donc forcément si on a put afficher la page web, c'est que ce dernier à bien reçut l'adresse IP fournie par le point d accès configurer en DHCP. 9/24
III LOT 2 : Mis en place d'un serveur Proxy : SQUID Installation Avant de procéder à l installation du pare-feu sous l'os Linux, il faut mettre a jours les packages avec la commande ''apt-get update''. Puis procéder à l'installation avec un ''aptget install squid''. Une fois terminer, en peut vérifier son installation via la commande ''dpkg -l squid'' : / Nom Version Architecture Description +++-==============-============-============- ================================= ii squid 2.7.STABLE9- i386 Internet object cache (WWW proxy Configuration de base Dans un premier temps, il faut ouvrir le fichier de configuration du serveur proxy squid avec la syntaxe ''gedit /etc/squid/squid.conf'' Après avoir configuré l'adresse e-mail, le nom de la machine (donc l'identification du serveur) ainsi que son port (service) : cache_mgr adminmaisondesligues@school.net visible_hostname ServeurProxy.MaisonDesLigues.net http_port : 8080 (par exemple). 10/24
Règle de filtrage En étant dans le ficher de configuration (/etc/squid/squid.conf) du serveur proxy, pour établir une règle de filtrage. Il faut utiliser ce que l'on nomme une ACL qui s applique par le mot clés d'interdiction ou autorisation http_access, à la ligne dans mon cas j interdis l'accès au page web qui contienne le mot fleur et sexe et autoriser le reste. Et une limite de connectivité est appliqué de 8h00 à 19h30. acl paslemotfleursexe url_regex fleur Fleur FLEUR sexe Sexe SEXE acl temps_connexion time MTWHF 08:00-19:30 http_access deny paslemotfleursexe http_access allow all http_access allow temps_connexion Une fois les configurations terminées, il faut arrêter et relancer le serveur proxy avec service squid stop puis service squid restart. Avant de pouvoir faire le teste, il faut s'assurer que le navigateur puisse traverser le serveur proxy pour que les règles soient appliquées sur le navigateur. 11/24
Rapport du test À partir d'une machine de test, il faut s'assurer que les machines au sein du réseau puisse joindre le serveur. Dans mon cas c'est opérationnelle. Ensuite, il faut impérativement configurer le navigateur installé sur ma machine Debian. Iceweasel est le navigateur qui va me servir de test. Donc on indiquant l'adresse IP du serveur proxy est son service (Port), théoriquement le filtrage devrait fonctionner. 12/24
Résultat du test, le mot fleur qui est saisi dans la barre d'url est bien reconnue par le serveur proxy comme étant une interdiction. Authentification des utilisateurs Pour authentifier les utilisateurs, il faut avoir apache2 installer pour que la commande htpasswd soit reconnaissable par l interpréteur de commande shell. root@debian-75:/# apt-get install apache2 Encore une fois si on veut savoir si ce dernier est présent, on réutilise cette syntaxe : dpkg -l apache2 / Nom Version Architecture Description +++-==============-============-============- ================================= ii apache2 2.2.22-13+de i386 Apache HTTP Server metapackage 13/24
Maintenant, on va de voir ajouter des utilisateurs. Par exemple je vais ajouter l'utilisateur User ainsi que son mot de passe, dans le ficher de configuration du serveur proxy. Pour cela on va devoir utiliser cette syntaxe htpasswd -c /etc/squid/users User Pour vérifier que le fichier est correct et fonctionnera avec Squid, il faut utiliser la commande suivante : /usr/lib/squid3/basic_ncsa_auth /etc/squid3/users Puis on saisie le ''login et mot de passe''. Donc dans mon cas User 0000 Et pour stopper la boucle, un ctrl + D. Ensuite, il faut éditer le fichier /etc/squid/squid.conf, pour pouvoir appliquer la durée de vie de l'identification, le nombre d authentification simultanées, le message d'indication, etc... auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/users chemin vers le module et le fichier utilisateurs auth_param basic children 5 auth_param basic realm Merci de vous identifier sur notre proxy auth_param basic credentialsttl 3 hours Ensuite, dans la partie acl, on grief le fichier users (utilisateurs) et on l'autorise. acl utilisateurs proxy_auth REQUIRED http_access allow localnet utilisateurs 14/24
15/24
IV LOT 3 - Nouvelle application de réservation de salles Mise en place d'un serveur NFS Nous allons mettre en place un serveur de système de fichier en réseau. Dans notre cas on utilisera le système NFS (Network File Système) qui sera accessible par les utilisateurs. Dans un premier temps on déplace les fichiers web se trouvant dans le répertoire importweb-m2l vers le répertoire ''var'' grâce a la commande cp : Puis, nous installons phpmyadmin qui est le gestionnaire de base de données en graphique. root@debian-75:/home/administrateur# apt-get install phpmyadmin Lecture des listes de paquets... Fait Construction de l'arbre des dépendances Lecture des informations d'état... Fait... [...] Reloading web server config: apache2apache2: apr_sockaddr_info_get() failed for BBE1SRVWEB apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName. ok 16/24
Puis pendant l installation, nous choisissons ''apache2'' comme serveur Web : Ensuite nous allons crées un dossier montage dans le dossier media On créer le dossier de partage à l aide de la commande mount : 17/24
On déplace le dossier mysql dans le répertoire montage, pour que le répertoire mysql puisse être accessible aux utilisateurs. Maintenant notre dossier de partage montage qui se trouve depuis le bureau pourra servir de partage pour les autres utilisateurs de la maisons des ligues. Dans le répertoire (dossier) montage, on aperçoit bien la présence du dossier mysql : 18/24
Importation de la Base de données Nous allons à présent importer la base de données comportant les utilisateurs autorisées à se connecter dans le site des maisons des ligues. Sur phpmyadmin, nous importons notre Base de données : Maintenant il faut importer les données du site afin que apache puisse l'afficher. Pour commencer, on applique la commande ''ls'' afin de voir le contenue du répertoire ''www ''. Puis on établie une copie récursive du répertoire ''web-m2l'' situé sur le bureau, dans le répertoire ''mdl'' se trouvant dans le répertoire du site (www). root@bbe1srvweb:/home/administrateur# cd /var/www root@bbe1srvweb:/var/www# ls index.html mdl root@bbe1srvweb:/var/www# mv /home/administrateur/bureau/import/web-m2l/* mdl root@bbe1srvweb:/var/www# cd mdl root@bbe1srvweb:/var/www/mdl# ls add.php lang.ca mrbs_sql.inc admin.php lang.cs mysqli.inc approve_entry_handler.php lang.da mysql.inc... index.php mrbs-js-overrides.js xblib.js internalconfig.inc.php mrbs-mail.css jquery mrbs-print.css.php 19/24
Nous constatons que le site est bien accessible après les différentes configurations établis : 20/24
V LOT 4 Aménagement de deux nouvelles salles Création des Vlans Pour commencer, nous allons créer plusieurs Vlans afin d'avoir un réseau segmenté virtuellement pour chaque sport possible. Attribution des noms pour chaque Vlan du site : Switch#vlan database Switch(vlan)#vlan 2 name badbington VLAN 2 modified: Name: badbington Switch(vlan)#vlan 3 name volley VLAN 3 modified: Name: volley witch(vlan)#vlan 4 name escrime VLAN 4 modified: Name: escrime Switch(vlan)#exit APPLY completed. Exiting... Attribution des adresses IP aux Vlans : Switch(config)#interface vlan 2 Switch(config-if)#ip address 172.16.2.1 255.255.254.0 Switch(config-if)#no shutdown Switch(config-if)#exit Switch(config)#interface vlan 3 Switch(config-if)#ip address 172.16.4.1 255.255.254.0 Switch(config-if)#no shutdown Switch(config-if)#exit 21/24
Switch(config)#interface vlan 4 Switch(config-if)#ip address 172.16.6.1 255.255.254.0 Switch(config-if)#no shutdown Switch(config-if)#exit Exemple d'adressage pour le Vlan 4, avec la commande Cisco ''Show'' : Switch#show interface vlan 4 Vlan4 is up, line protocol is down Hardware is EtherSVI, address is 0019.3059.c043 (bia 0019.3059.c043) Internet address is 172.16.6.1/23 MTU 1500 bytes, BW 1000000 Kbit, DLY 10 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation ARPA, loopback not set Keepalive not supported... Attribution des ports sur chaque Vlans Switch(config)#interface range fastethernet 0/2-5 Switch(config-if-range)#switchport mode access Switch(config-if-range)#switchport access vlan 2 Switch(config-if-range)#end Switch(config)#interface range fastethernet 0/6-13 Switch(config-if-range)#switchport access vlan 3 Switch(config-if-range)#end Switch(config)#interface range fastethernet 0/14-20 Switch(config-if-range)#switchport access vlan 4 Switch(config-if-range)#end 22/24
Résultats de la table des Vlans avec la commande Cisco ''Show'' : VLAN Name Status Ports ---- -------------------------------- --------- ------------------------------- 1 default active Fa0/1, Fa0/21, Fa0/22, Fa0/23 Fa0/24, Gi0/1, Gi0/2 2 badbington active Fa0/2, Fa0/3, Fa0/4, Fa0/5 3 volley active Fa0/6, Fa0/7, Fa0/8, Fa0/9 Fa0/10, Fa0/11, Fa0/12, Fa0/13 4 escrime active Fa0/14, Fa0/15, Fa0/16, Fa0/17 Fa0/18, Fa0/19, Fa0/20 Test de ping sur les ports de chaque Vlan : Pour le Vlan 2 root@b319-02:/home/administrateur# ping 172.16.2.1 PING 172.16.2.1 (172.16.2.1) 56(84) bytes of data. 64 bytes from 172.16.2.1: icmp_req=2 ttl=255 time=5.24 ms 64 bytes from 172.16.2.1: icmp_req=3 ttl=255 time=0.576 ms 64 bytes from 172.16.2.1: icmp_req=4 ttl=255 time=0.921 ms Pour le Vlan 3 root@b319-02:/home/administrateur# ping 172.16.4.1 PING 172.16.4.1 (172.16.4.1) 56(84) bytes of data. 64 bytes from 172.16.4.1: icmp_req=2 ttl=255 time=1.33 ms 64 bytes from 172.16.4.1: icmp_req=3 ttl=255 time=0.992 ms Pour le Vlan 4 root@b319-02:/home/administrateur# ping 172.16.6.1 PING 172.16.6.1 (172.16.6.1) 56(84) bytes of data. 64 bytes from 172.16.6.1: icmp_req=2 ttl=255 time=2.45 ms 64 bytes from 172.16.6.1: icmp_req=3 ttl=255 time=1.75 ms 23/24
VI Conclusion Nous avons pus installer différents équipements permettant à maison des ligues d'avoir un réseau séparé au niveau des différents services, un site Web fonctionnel proposant la connexion avec les logins fournie par l'entreprise et un serveur permettant de filtrer les requêtes provenant d'internet. 24/24