PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs 1/40 S2-SIO PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Sommaire Objectifs :............................................................................................................................................. 3 Solutions retenues pour l’architecture de serveurs............................................................................... 3 Schéma Visio ....................................................................................................................................... 4 Création d'une DMZ............................................................................................................................. 4 Configuration des équipements....................................................................................................... 5 Le support des serveurs........................................................................................................................ 7 Installation de Ubuntu Server 13.10..................................................................................................... 7 Configuration réseau du serveur Ubuntu............................................................................................13 Le serveur WEB................................................................................................................................. 14 Apache........................................................................................................................................... 14 Installation de base.........................................................................................................................14 Fichier de configuration.................................................................................................................15 Les sites avaliables.........................................................................................................................15 MySQL Server....................................................................................................................................16 Quelques commandes utiles...........................................................................................................16 Configuration ................................................................................................................................ 16 Ajouter ou changer le mot de passe de root du serveur SQL........................................................16 Connexions entrantes..................................................................................................................... 16 PhpMyAdmin..................................................................................................................................... 17 Installation..................................................................................................................................... 17 OpenSSH ........................................................................................................................................... 18 Installation .................................................................................................................................... 18 Clients SSH pour Windows........................................................................................................... 18 PHP .................................................................................................................................................... 22 Le serveur FTP................................................................................................................................... 22 Configuration du serveur FTP ..................................................................................................... 22 Création des utilisateurs pour le serveur FTP........................................................................... 24 Test du serveur.......................................................................................................................... 25 Sécurisation de SSH..................................................................................................................26 Le serveur de temps (NTP).................................................................................................................27 Le serveur DNS.................................................................................................................................. 29 Sites WEB et Noms de Domaine........................................................................................................34 Plusieurs sites web sur un serveur Apache.................................................................................... 34 Méthode................................................................................................................................... 34 Test des serveur web................................................................................................................. 37 Configuration du serveur DNS...................................................................................................... 38 2/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Objectifs : Mise en place d'une architecture de serveurs Web, SGBD, FTP, NTP et TFTP. Les ressources spécifiques : ➢ ➢ ➢ ➢ ➢ ➢ Un serveur Web Intranet Un serveur FTP Interne Un serveur de Base de données Un serveur de temps Un serveur TFTP Un serveur DNS Règles budgétaires : L'un des serveurs (WEB, SGBD) devra être installé sous un OS Open Source et gratuit. Solutions retenues pour l’architecture de serveurs. Les Systèmes d'exploitation Nous avons choisis Ubuntu Server 13.10 comme OS de base pour les serveur WEB, FTP, BDD, NTP et MS WINDOWS Server 2008 R2 pour le serveur DNS. Les serveurs Sous Ubuntu server Serveur FTP : PROFTPD Serveur WEB : APPACHE 2 Serveur de BDD : MYSQL SERVER Serveur de Temps : NTP De plus, nous avons installé une interface Web de gestion de BDD, PHPMYADMIN, pour faciliter l'utilisation de notre serveur MYSQL ainsi qu'un serveur PHP. Pour l'accès et prise de contrôle à distance nous utilisé Open SSH sur le serveur Web. Sous Windows Serveur Nous avons utiliser le rôle DNS de WINDOWS Serveur 2008 R2 3/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Schéma Visio Création d'une DMZ La DMZ (zone démilitarisée) étant le point de contact externe pour tous les serveurs d'applications, de base de données, de transferts de fichiers..., celle-ci doit être est un réseau séparé et isolé logiquement du réseau local. Nous avons donc crée un VLAN nommé DMZ dans lequel nous avons placé tous nos serveur virtuels représentés dans le schéma Visio ci-dessus. 4/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Configuration des équipements Le switch Afin de former une DMZ, nous avons créé un VLAN de niveau 1 dans lequel nous avons placé le serveur physique qui servira de support pour nos machines virtuelles. Commandes // Création du Vlan 2 Switch>en Switch(config)#conf t Switch(config)#vlan 2 Switch(config-vlan)#name DMZ Switch(config-vlan)# ex // Affectation des ports 1 et 2 au Vlan 2 Switch(config)#interface range fastEthernet 0/1-2 Switch(config-if)#swichtport mode access Switch(config-if)#switchport access vlan 2 Sécurisation du switch // Activation du service password-encryption. Routeur(config)#service password-encryption // Création du mot de passe pour la ligne console Router(config)#enable secret trav5 Router(config)#line console 0 Router(config-line)#password trav5 Router(config-line)#login Router(config-line)#exit // Création un mot de passe pour les 5 lignes virtuelles Router(config)#line vty 0 4 Router(config-line)#password trav5 Router(config-line)#login Router(config-line)#end La commande wr permet de sauvegarder la configuration courante. 5/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Le routeur Commandes // configuration des interfaces // interface 0/1 Router#conf t Router(config)#interface gigabitEthernet 0/1 Router(config-if)#ip address 172.20.0.105 255.255.0.0 Router(config-if)#ip nat outside Router(config-if)#no shutdown // interface 0/2 Router(config-if)#ex Router(config)#interface gigabitEthernet 0/2 Router(config-if)#ip address 172.16.1.254 255.255.0.0 Router(config-if)#ip nat inside Router(config-if)#no shutdown // Sous-interface 0/2.2 Router(config)#interface fastEthernet 0/2.2 Router(config-subif)#encapsulation dot1Q 2 Router(config-subif)#ip address 172.162.20.254 255.255.0.0 Router(config-subif)#no shutdown //Activation du Nat avec la liste d'adresse IP autorisée a être translatées Router#access-list 10 permit 172.162.0.0 0.255.255.255 Router(config)#ip nat inside source list 10 interface gigabitEthernet 0/1 overload //Route par défaut Router#conf t Router(config)#ip route 0.0.0.0 0.0.0.0 172.20.0.254 Router(config)#ex Router#write 6/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Le support des serveurs L'OS utilisé pour le serveur Web est Ubuntu Server 13.10. Celui-ci sera virtualisé avec l'hyperviseur de niveau 2 VirtualBox. Procédure d'installation La première étape consiste à créer une nouvelle machine virtuelle destinée à accueil Ubuntu Server. Installation de Ubuntu Server 13.10 7/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Prérequis Le minimum requis pour l'installation de Ubuntu Server est de 128Mo RAM et un espace disque de 500 Mo. L'édition serveur offre un socle pour le support de serveurs applicatifs de toutes sortes. C'est une version minimale de la plate-forme, qui permet d'offrir les services désirés comme le partage de fichiers, le service d'impression, l'hébergement de sites web, le service de messagerie... Les premières étapes pour installer Ubuntu Serveur depuis une image (ISO) sont les mêmes que pour installer n'importe quel système d'exploitation. Le processus d'installation vous demande de choisir la disposition du clavier. 8/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs Vous devez ensuite nommer la machine. Ici (trav5). Création d'un utilisateur. 9/40 S2-SIO PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Le programme d'installation vous demande si vous souhaitez chiffrer votre répertoire personnel. Vous pouvez choisir entre de nombreuses options de partitionnement du disque. Nous utiliserons le disque entier. 10/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Configuration du serveur mandataire. (proxy) Pendant l'installation, vous avez la possibilité d'installer des paquets additionnels. Ces paquets sont groupés par type de service. Dans notre cas nous choisissons d'installer les paquets suivants : ➢ Serveur LAMP (Linux/Apache/MySQL/PHP). ➢ Serveur OpenSSH pour permettre la connexion distante au serveur, l'accès et le transferts des fichiers. 11/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Définition d'un mot de passe pour l'accès au serveur de BDD en tant que utilisateur ROOT. Installer le programme de démarrage GRUB. L'installation est à présent terminée. Il y aura deux machines virtuelles fonctionnant sous Ubuntu. L'une hébergera les serveurs Apache/Mysql/PHP ainsi que le SGBD Phpmyadmin et OpenSSH et l'autre hébergera les serveurs FTP, NTP, TFTP. Enfin, nous utiliserons une 3eme VM sous Windows Server 2008 R2 pour le serveur DNS. 12/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Configuration réseau du serveur Ubuntu Pendant la phase d'installation il est possible de choir l'option DHCP ou Statique pour l’obtention de la configuration IP. Cependant il possible de modifier cette option à n'importe quel moment. Ubuntu Server ne possédant pas d'interface graphique, il est nécessaire de réaliser cette opération en ligne de commande. Il faut tout d'abord mettre en marche la machine virtuelle et s'identifier avec le nom d'utilisateur et le mot de passe définit pendant l'installation. Ensuite, tapez la commande suivante : sudo vi /etc/network/interfaces Sudo permet d'effectuer des tâches administratives, vous serez donc invité à renseigner votre mot de passe root. Dans l'exemple ci-dessous nous utilisons PuTTY pour nous connecter à distance à l'aide du protocole SSH. La commande sudo vi /etc/network/interfaces permet d'éditer le fichier de configuration des interfaces du serveur Ubuntu. A la ligne iface eth0 inet dhcp, remplacez dhcp par static. Ajoutez les lignes suivantes address / netmask / network / broadcast / gateway comme sur la capture ci-dessus. 13/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Informations complémentaire sur l'utilisation de l'éditeur de texte Vi Pour modifier le texte, il est nécessaire de passer en mode INSERTION en appuyant sur la touche i. Pour quitter le mode INSERTION appuyez sur Echap. Autres commandes : Exemples Action i Passer en mode insertion A Ajouter en fin de ligne :q Quitter :q! Quitter sans enregistrer :w Enregistrer le fichier :wq Enregistrer et quitter :x Enregistrer (seulement en cas de modification) et quitter :set paste Passer en mode "collage" Une fois le fichier de configuration renseigné en enregistré il faut réinitialiser la configuration réseau sans redémarrer le serveur en tapant la commande : sudo /etc/init.d/networking restart Le serveur WEB Nous avons choisis d'installer des paquets supplémentaires lors de la phase d'installation de l'OS, notamment LAMP qui est un serveur Linux/Apache/MySQL/PHP prêt à l'emploi. Cependant une solution alternative consisterait à installer les différents serveurs manuellement. Nous détaillerons donc les procédures à suivre. Apache Apache 2 est le serveur libre que nous utilisons en guise de serveur WEB. C'est le plus populaire des serveurs HTTP. Il est produit par la « Apache Software Foundation » et il est fourni sous une licence spécifique Apache. Installation de base L'installation du serveur apache peut se faire manuellement en ligne de commande. (pas d'interface graphique avec Ubuntu Server) en tapant la commande ci-dessous. sudo apt-get install apache2 la suite de cette installation le serveur doit fonctionner et être accessible depuis la machine locale à l'adresse suivante http://localhost ou l'adresse IP locale. 14/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Fichier de configuration Les fichiers de configuration de Apache2 sont dans le dossier /etc/apache2 Le fichier /etc/apache2/apache2.conf permet entre autre : – de définir le répertoire racine à la ligne ServerRoot "/etc/apache2" – de définir de délais d'attente dépassé : Timeout 300 – de définir le chemin du fichier de log des erreurs du serveur ErrorLog /var/log/apache2/error.log Les sites avaliables /etc/apache2/sites-available/default Ce fichier contient les différents vhosts (hôtes virtuelles) et permet de définir plusieurs sites sur une même machine. 15/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO MySQL Server MySQL est un système de gestion de bases de données relationnelles libre, gratuit et performant. L'installation manuelle s'effectue en tapant la commande : sudo apt-get install mysql-server Quelques commandes utiles Pour démarrer le serveur MySQL → sudo service mysql start Pour redémarrer le serveur MySQL → sudo service mysql restart Pour arrêter le serveur MySQL → sudo service mysql stop Pour que MySQL prenne en compte les modifications → sudo service mysql reload Pour forcer MySQL à recharger ses fichiers de configuration → sudo service mysql force-reload Configuration Lancement de la console Mysql → mysql -u root -p VotreMotDepasse Le prompt suivant doit apparaître : mysql> Il est maintenant possible de taper les requêtes SQL. Ajouter ou changer le mot de passe de root du serveur SQL sudo mysqladmin -u root password Nouveau_mot_de_passe -p Ancien_mot_de_passe Connexions entrantes Par défaut, MySQL n'écoute que les connexions venant de localhost (127.0.0.1). Pour pouvoir accéder à MySQL depuis un autre poste, ajoutez la ligne suivante au fichier /etc/mysql/my.cnf dans la section « [mysqld] » : bind-address = x.x.x.x x.x.x.x est l'adresse ip de l'interface sur laquelle MySQL doit écouter. Cela permet de n'écouter que sur une ip privée si vous avez plusieurs interfaces réseaux. 16/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO PhpMyAdmin PhpMyAdmin est une interface d'administration pour MySQL. Il permet d'administrer: • • • • • les bases de données les tables et leurs champs les index, les clés primaires et étrangères les utilisateurs de la base et leurs permissions exporter les données dans divers formats Installation L'installation s'effectue en ligne de commande : sudo apt-get install phpmyadmin Vous pouvez modifier le mot de passe d'administration : sudo htpasswd /etc/phpmyadmin/htpasswd.setup admin L'accès à phpmyadmin ce fait à l'adrsse : http://localhost/phpmyadmin. Si la page n'est pas accessible, liez phpmyadmin et votre serveur apache avec la commande : sudo ln -s /usr/share/phpmyadmin/ /var/www/phpmyadmin 17/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO OpenSSH OpenSSH est une version libre de la suite de protocole de SSH. Nous l'utiliserons sur l'ensemble de machines virtuelles fonctionnant sous Ubuntu Server pour transférer des fichier et pour prendre la main à distance. Contrairement à FTP et Telnet, SSH chiffre tout le trafic (mot de passe inclus). SSH remplace de manière sécurisée FTP pour l'accès au répertoire racine du serveur Apache et nous permet d'effectuer la totalité des opérations courantes et d'administration de la machine virtuelle distante grâce a un shell. Installation L'installation s'effectue en ligne de commande : sudo apt-get install openssh-server Commande utiles Le serveur SSH fonctionne en tant que service. Par défaut il sera lancé au démarrage de la machine. ➢ Activer le serveur SSH : sudo service ssh start ➢ Arrêter : sudo service ssh stop ➢ Relancer : sudo service ssh restart Clients SSH pour Windows Accès à distance PuTTY remplace très avantageusement le client Telnet livré avec Windows en permettant l'accès SSH. 18/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Dans notre exemple, le client SSH (Putty) est installé sur un hôte se trouvant sur me même réseau que le serveur Ubuntu. Dans le champs Host Name, il faut renseigner l'adresse IP du serveur Ubuntu. Dans l'encart Connexion type cochez SSH. Puis cliquez sur Open. Ceci à pour effet d'ouvrir un Shell. Il faut s'identifier avec un nom d'utilisateur et un mot de passe. Si les informations fournies sont correctes alors le promt utilisateur@nom-de-la-machine:~$ doit apparaître indiquant que vous avez la main sur le serveur. 19/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Le transfert de fichiers WinSCP est un client SFTP graphique pour Windows. Il utilise SSH et est open source. Il permet la copie sécurisée de fichiers entre un ordinateurs. Pour établir une connexion, il est nécessaire de renseigner le nom d'hôte (IP du serveur), le nom d'utilisateur et le mot de passe. Si les informations sont correctes, le gestionnaire de fichiers s'ouvre directement dans le répertoire de l'utilisateur dans la fenêtre de droite. Il est, ensuite, possible de se déplacer dans l'ensemble des répertoires du serveur et d'y copier, modifier, supprimer ou ajouter des fichiers et de répertoires. 20/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO La configuration par défaut du serveur SSH sous Ubuntu est suffisante pour fonctionner correctement. Le fichier de configuration à éditer avec les droits d'administration est /etc/ssh/sshd_config. 21/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO PHP PHP utilisé en association avec MySQL est un langage de script nécessaire pour production de pages web dynamiques. Il est déjà fonctionnel car il est inclus dans la suite LAMP cependant il est possible de l'installer manuellement avec la commande sudo apt-get install php5 Le serveur FTP Les serveurs FTP, TFTP, NTP seront installés sur une autre machine virtuelle dont l'OS est également Ubuntu Server 13.10. La configuration de base est identique à la VM servant de serveur WEB. Seul le nom d'hôte de la machine (FTP-NTP) et l'adresse IP (172.162.20.51) change. OpenSSH est également installé sur cette VM afin de réaliser les opérations courantes et d'administration à distance. Nous avons choisit ProFTPd comme solution pour notre serveur. L'installation se fait en ligne de commance : sudo apt-get install proftpd. Pendant la phase d'installation une question est posée Lancer ProFTPd à partir d'inetd ou indépendamment ? ➢ inetd est utilisé pour un serveur FTP léger. ➢ Indépendamment est utilisé pour un serveur important et puissant. Configuration du serveur FTP Pour configurer le serveur FTP, il faut éditer le fichier de configuration: /etc/proftpd/proftpd.conf Commande : sudo vi /etc/proftpd/proftpd.conf Cette commande ouvre le fichier de configuration de l’utilitaire proftpd dans l'éditeur de texte vi. Nous utilisons se fichier pour Chrooter les utilisateurs afin de les isoler dans leur propre répertoire afin ne pas compromettre le système. 22/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Les changements apportés : DisplayChdir : ~ DefaultRoot :~ Ces deux modifications font que chaque utilisateur sera connecter à son répertoire de travail par défaut et ne pourra accéder aux répertoire parents. Il sera donc isolé dans son propre répertoire. 23/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Création des utilisateurs pour le serveur FTP Pour créer un nouvel utilisateur pour le serveur FTP, il suffit de créer un utilisateur d'ubuntu en ligne de commande avec adduser. Exemple ci-dessous : Création de l'utilisateur TRAV3 (sudo adduser trav3) Nous avons créé un utilisateur pour chaque ligue. Vérification de la liste des utilisateurs. 24/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Test du serveur Test de connexion au serveur FTP avec les identifiants trav4/trav4. La connexion est établie. Nous avons accès au répertoire /home/trav4 dans lequel nous pouvons lire et écrire sans pouvoir en sortir. 25/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Sécurisation de SSH Si vous avez a créer un petit nombre d'utilisateurs FTP, il n'est pas nécessaire de créer des utilisateurs virtuels, cependant il est impératif de limiter l’accès en SSH. Pour sécurité l'accès SSH nous déclarons un seul utilisateur administrateur (trav5) autorisé en ajoutant une ligne dans le fichier de configuration /etc/ssh/sshd_config Pour éditer le fichier de configuration, tapez : sudo vi /etc/ssh/sshd_config et ajouter la ligne AllowUsers « nom-utilisateur » Pour enregistrer les modifications tapez :wq Pour que celles-ci soit prises en compte, il faut relancer SSH avec la commance : sudo /etc/init.d/ssh restart Test de connexion Nous tentons de nous connecter en ssh avec l'identifiant trav4 Access denied l'utilisateur est rejeté. L'identification avec l'utilisateur trav5 fonctionne. Le filtrage est opérationnel. 26/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Le serveur de temps (NTP) NTP (Network Time Protocol) est un protocole permettant de distribuer l'heure sur un réseau informatique. Il fonctionne sur le principe client/serveur. Nous avons installé le serveur de temps sur la même machine virtuelle que le serveur FTP. La procédure d'installation se fait en ligne de commande en tapant : sudo apt-get install ntp Aucune configuration supplémentaire n'est nécessaire. Il est toutefois possible de vérifier son fonctionnement avec la commande ntpq -p Liste de les serveurs Sous Windows, un client NTP compatible est déjà inclus. Pour synchroniser un poste vous devez cliquez sur l'heur en bas à droit de l'écran, puis sur modifier les paramètres de la date et l'heure. 27/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Cliquez sur Temps Internet puis Modifier les paramètres. Vous devez indiquer l'adresse IP ou le nom d'hôte du serveur. La case Synchroniser avec un serveur de temps internet doit être cochée. 28/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Le serveur DNS Pour le serveur DNS nous avons choisis d'utiliser Windows Server 2008 R2. Nous ne détaillerons pas l'installation du système d'exploitation. Pour créer un serveur DNS sous Windows server, il faut cliquer que Gérer les serveurs. Cliquez, ensuite, sur Ajouter des rôles. Cocher la case Serveur DNS puis cliquez sur installer. L'installation de rôle terminé, vous devez configurer votre serveur. 29/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Pour configurer le serveur DNS, il faut faire un clique droit sur son nom, puis cliquer sur Configurer un serveur DNS. L'assistant de configuration s'ouvre alors. 30/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Dans la fenêtre suivante nous choisissons de créer une zone de recherche directe. Ce serveur assure la maintenance de la zone. 31/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Création du fichier de zone. Le nom de notre zone est M2L.lab Mise à niveau dynamique. Nous choisissons d'autoriser les mises à jours dynamiques sécurisés et non sécurisés. 32/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Définition des serveurs redirecteurs. Nous indiquons les adresse des serveurs DNS de Google. L'installation est à présent terminée. Le Nom DNS M2L.lab est maintenant opérationnel. 33/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Sites WEB et Noms de Domaine Le cahier des charges stipule que le nom de domaine de la maison des ligues est m2l.lab et que chaque ligue se voit attribuer un nom de sous-domaine. Exemple : la ligue disc-golf aura pour nom de sous-domaine giscgolf.m2l.lab. Plusieurs sites web sur un serveur Apache Le serveur web est configuré ,par défaut, pour accueillir un seul site web dans son répertoire racine. Il est donc nécessaire de réaliser un certain nombre de modifications afin que celui-ci puisse héberger un site par ligue. Enfin, nous reviendront à la configuration de notre serveur DNS pour y créer les sous-domaines des 4 ligues et nous les ferons pointer vers leurs sites respectifs. Méthode Le Serveur Apache2 est capable de gérer simultanément plusieurs arborescences Web grâce à la notion d'hôtes Virtuels. Pour ce faire nous avons choisis la méthode dite Hôtes virtuels basés sur l'adresse IP. Pour utiliser cette méthode, le Serveur Ubuntu doit être doté de plusieurs interfaces réseau. Cependant les distributions Ubuntu et Debian embarquent la fonction IP Aliasing qui permet d'associer plusieurs adresses IP virtuelles à une seul interface physique. (comme les routeur Cisco) Nous allons héberger 5 sites web, il nous faut donc 5 adresse IP. La commande ifconfig permet d'afficher la configuration réseau de la machine. Les informations qui nous intéressent, ici, sont : l'interface réseau (eth0) et l'adresse IP (172.162.20.50) Pour associer une 1er adresse IP à l'interface eth0, il faut taper la commande suivante : sudo ifconfig eth0:0 172.162.20.60 Il procéder de la même manière pour les autres adresses. sudo ifconfig eth0:1 172.162.20.61 sudo ifconfig eth0:2 172.162.20.62 sudo ifconfig eth0:3 172.162.20.63 sudo ifconfig eth0:4 172.162.20.64 Nous disposons maintenant de 5 nouvelles adresses IP pour une même interface. Pour vérifier la configuration, il suffit de taper la commande ifconfig -a 34/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Création des hôtes virtuels Nous pouvons désormais créer nos Hôtes Virtuels auxquels nous associerons les adresses ip crées précédemment. Tout d'abord, nous renseignons le fichier /etc/hosts avec les noms des sites que l'on associera à au adresse ip respectives. Cela permettra de résoudre les noms en local. Commande d'édition du fichier HOSTS. sudo vi /etc/hosts Il faut alors ajouter puis enregistrer les lignes suivantes : 172.162.20.60 m2l.lab 172.162.20.61 discgolf.m2l.lab 172.162.20.62 athletisme.m2l.lab 172.162.20.63 badminton.m2l.lab 172.162.20.64 canoe.m2l.lab Il faut à présent créer les 5 hôtes virtuels. Pour cela, nous devons créer un fichier pour chaque hôte et le stocker dans le répertoire : /etc/apache2/sites-available 35/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Pour créer un fichier texte, il faut utiliser l'utilitaire vim. Exemple, pour créer le fichier discgolf.conf, tapez : sudo vi /etc/apache2/sites-available Nous avons créé 5 fichiers : ➢ ➢ ➢ ➢ ➢ m2l.conf discgolf.conf athletisme.conf badminton.conf canoe.conf Contenu des fichiers m2l.conf <VirtualHost 172.162.20.60:80> DocumentRoot /var/www/m2l.lab ServerName m2l.lab </VirtualHost> discgolf.conf <VirtualHost 172.162.20.61:80> DocumentRoot /var/www/discgolf.m2l.lab ServerName discgolf.m2l.lab </VirtualHost> athletisme.conf <VirtualHost 172.162.20.62:80> DocumentRoot /var/www/athletisme.m2l.lab ServerName athletisme.m2l.lab </VirtualHost> badminton.conf <VirtualHost 172.162.20.63:80> DocumentRoot /var/www/badminton.m2l.lab ServerName athletisme.m2l.lab </VirtualHost> canoe.conf <VirtualHost 172.162.20.64:80> DocumentRoot /var/www/canoe.m2l.lab ServerName canoe.m2l.lab </VirtualHost> Dans chacun des fichiers de configuration, on retrouve pour l'hôte virtuel, l'adresse IP choisie, ainsi que le port (80). Les 2 directives minimales sont DocumentRoot et ServerName. 36/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO DocumentRoot permet de déclarer l'emplacement de l'arborescence Web de l'hôte virtuel (l'emplacement des fichiers sur votre système). Le nom du répertoire ne doit pas comporter le caractère / final. ServerName permet de définir le nom de domaine du Serveur Virtuel. Création des répertoires racine Il faut créer un répertoire par site dans le répertoire racine d'Apache qui par défaut se trouve à /var/www. La commande mkdir permet de créer un répertoire et chmod permet de changer les doits d'accès. Les 5 répertoires à créer sont : m2l.lab / discgolf.m2l.lab / athletisme.m2l.lab / badminto.m2l.lab / canoe.m2l.lab. Activation des hôtes virtuels Il ne reste plus qu'a activer les 5 hôtes virtuels avec la commande a2ensite. Exemple (discgolf.conf) : sudo a2ensite discgolf.conf Après avoir activé les 5 hôtes, relancez Apache. sudo /etc/init.d/apache2 reload Test des serveur web Nous avons placé un fichier texte avec l'extension .html dans chacun des répertoires des différents sites. Chaque fichier contient un message personnalisé. Exemple « le site discgolf fonctionne. » En tapant l'adresse ip des différents sites web dans la barre d'adresse du navigateur, les messages s'affichent bien. Notre serveur gère bien les différentes arborescences WEB. Il ne reste plus qu'a paramétrer notre serveur DNS pour rendre la résolution de nom effective. 37/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Configuration du serveur DNS Nous avions précédemment installé le rôle DNS sur un serveur Windows 2008 R2 et nous avions créé une zone de recherche directe nommée m2l.lab. Il ne reste plus qu'a créer les sous-domaines discgolf.m2l.lab, athletisme.m2l.lab... et les faire pointer vers les adresses IP des serveurs http associés. Procédure Allez à : Gérer les serveur – Rôles – DNS Dépliez l'arborescence et faite un clique droit sur le nom de la zone de recherche (m2l.lab). Dans le menu contextuel, cliquez sur Nouvel hôte (A ou AAAA)... Dans le premier champs, tapez le nom de domaine de la ligue. Dans le champs FQDN, le nom de domaine complet apparaît. Renseigner alors l'adresse IP du serveur et enregistrer. Procédez de la même manière pour tout les serveurs. 38/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO Une fois les manipulations faite, nous devons trouver 5 nouveaux enregistrements. Chaque enregistrement contient une relation Adresse IP/nom de domaine. Nous devons trouver les relations suivantes : ➢ m2l.lab / 172.162.20.60 ➢ discgolf.m2l.lab / 172.162.20.61 ➢ athletis.m2l.lab / 172.162.20.62 ➢ badminton.m2l.lab / 172.162.20.63 ➢ canoe.m2l.lab / 172.162.20.64 Pour vérifier les fonctionnement des noms de sous-domaine, il suffit des les taper dans la barre d'adresse du navigateur. ! Attention ! Il faut indiquer l'adresse du serveur DNS (172.162.20.100) dans les paramètres réseau du poste utilisé. 1er essai : discgolf.m2l.lab le nom de sous-domaine discgolf.m2l.lab pointe bien vers le « site » dédié à la ligue Disc-Golf. 39/40 PEREIRA / CAZIN / SALIH / DELMONT Mission : Serveurs S2-SIO 2eme essai : badminton.m2l.lab Nous avons bien, un serveur web par ligue. Chaque ligue possède son propre nom de sous-domaine. Les test réalisés montre que le tout fonctionne correctement. 40/40
© Copyright 2024 Paperzz