• Aucun résultat trouvé

Plusieurs sites Web sur un seul Serveur Web avec un Répartiteur de charge entre plusieurs serveurs WEB

N/A
N/A
Protected

Academic year: 2022

Partager "Plusieurs sites Web sur un seul Serveur Web avec un Répartiteur de charge entre plusieurs serveurs WEB"

Copied!
8
0
0

Texte intégral

(1)

Plusieurs sites Web sur un seul Serveur Web avec un Répartiteur de charge entre plusieurs serveurs WEB

Prérequis :

- Deux VM avec un OS linux pour les serveurs Web.

serveurWeb n°1 ayant comme @ip : 192.168.33.11 serveurWeb n°2 ayant comme @ip : 192.168.33.12

Une VM pour le Répartiteur de charge avec un OS Linux et 2 cartes réseaux

eth0 : dhcp Résaux Local (accès par pont) eth1 : 192.168.33.10

- Une machine cliente ça peut être votre pc

---

---

(2)

Partie 1 : Installation de 3 boxes Vagrant (LB1,WEB1 et WEB2)

# -*- mode: ruby -*-

# vi: set ft=ruby :

Vagrant.configure("2") do |config|

#installation d’un équilibreur de charge (load balancer) config.vm.define "lb1" do |lb1|

lb1.vm.box = "ubuntu/trusty64"

lb1.vm.network "private_network", ip: "192.168.33.10"

lb1.vm.network "public_network"

lb1.vm.provision "shell", inline: <<-SHELL echo "lb1" > /etc/hostname

apt-get update

apt-get install -y haproxy SHELL

end #installation de deux serveurs Web config.vm.define "web1" do |web1|

web1.vm.box = "ubuntu/trusty64"

web1.vm.network "private_network", ip: "192.168.33.11"

#web1.vm.synced_folder "c:/flat", "/vagrant_data"

web1.vm.provision "shell", inline: <<-SHELL echo "web1" > /etc/hostname

Noureddine.GRASSA

- Prérequis : Installation de Virtualbox et de Vagrant - # Vagrant init

- # Editer Vagrantfile, effacer tout le contenu et copier ceci :

(télécharger le sur le site : n.grassa.free.fr)

(3)

apt-get update

apt-get install -y apache2 SHELL

end

config.vm.define "web2" do |web2|

web2.vm.box = "ubuntu/trusty64"

web2.vm.network "private_network", ip: "192.168.33.12"

web2.vm.provision "shell", inline: <<-SHELL echo "web2" > /etc/hostname

apt-get update

apt-get install -y apache2 SHELL

end

config.vm.box = "base"

end

- # Vagrant validate Vagrantfile - # Vagrant up

- Pour accéder aux boxes : vagrant ssh web1 ou vagrant ssh web2 - Vous allez ajouter dans Vagrantfile et dans la partie provision

echo "Serveur web1" > /var/www/html/index.html (sur le serveur web n°1)

echo "Serveur web2" > /var/www/html/index.html (sur le serveur web n°2)

- # Vagrant provision

- Vous allez ensuite accéder sur le Load balancer : vagrant ssh lb1

Il faut ensuite activer haproxy dans le fichier /etc/default/haproxy : ENABLED=1

(4)

et aussi l'activer dans le fichier /etc/init.d/haproxy : ENABLED=1

Editer le fichier /etc/haproxy/haproxy.cfg

listen lb1 votre_adresse_ip_public:80

#web mode http

#stat haproxy stats enable stats hide-version stats refresh 30s stats show-node

stats auth admin:admin stats uri /stats

#mode de balancement balance roundrobin

#options

option httpclose

#Les serveurs WEB

server web1 192.168.33.11:80 check server web2 192.168.33.12:80 check

Redémarrer le service apache 1. /etc/init.d/haproxy restart

Vous pouvez maintenant accéder à l’interface de statistiques de HaProxy via l’addresse: http://adresse_ip_lb1/stats avec le login/password admin/admin

Noureddine.GRASSA

(5)

On voit ci-contre que le répartiteur de charge Haproxy a pris en charge les deux serveurs WEB

Vous pouvez maintenant accéder à votre page web via

l’adresse : http://adresse_ip_lb faites plusieurs fois F5 qu’est ce que vous remarquez ?

(6)

Partie 2 :

Maintenant vous allez créer deux pages Web sur le premier serveur web dans deux emplacements.

#vagrant ssh web1

• mkdir /var/www/html/site1

• mkdir /var/www/html/site2

• mkdir /var/www/html/logs

• echo " bienvenue sur mon site N°1 " > /var/www/html/site1/index.html

• echo " bienvenue sur mon site N°2 " > /var/www/html/site2/index.html Editer le fichier /etc/apache2/sites-available/000-default.conf (voici les lignes à ajouter à la fin du fichier)

NameVirtualHost *

<Virtualhost *>

ServerName sitepolytech1.com ServerAlias www.sitepolytech1.com DocumentRoot /var/www/html/site1

Customlog /var/www/html/logs/site1.log combined Errorlog /var/www/html/logs/site1.log

<Files “index.html”>

Order Deny, Allow Allow from ALL

</Files>

</VirtualHost>

Noureddine.GRASSA Polytech

(7)

# Créer de même un virtualhost pour sitepolytech2.com dans le fichier /etc/apache2/sites-available/default

• Redémarrer le service apache - /etc/init.d/apache2 restart

• Coté Client

Editer le fichier /etc/hosts sous Linux

Ou C:\Windows\System32\drivers\etc\hosts sous Windows et ajouter 192.168.33.11 sitepolytech1.com

192.168.33.11 sitepolytech2.com

Tester l’accès au sitepolytech1 respectivement sitepolytech2 depuis votre navigateur sur le serveur WEB N°1

Bon Travail

(8)

Protéger votre site Web par un mot de passe

htaccess - Creér un répertoire private dans /var/www - Ajouter 2 fichiers index.html et .htaccess - Editer le fichier .htaccess et ajouter

AuthUserFile /etc/apache2/.htpasswd AuthGroupFile /dev/null

Authname « zone privee » Authtype Basic

Require valid-user

Créer un user capable d’accèder à cette zone privée #sudo htpasswd –cmd /etc/apache2/.htpasswd toto

Editer le fichier /etc/apache2/site-available/default et modifier

<Directory /var/www/private>

Options Indexes FollowSymLinks MultiViews AllowOverride AuthConfig

Order allow,deny

</Directory>

Noureddine.GRASSA

Références

Documents relatifs

Un serveur HTTP ou d´ emon HTTP ou HTTPd (pour HTTP daemon) ou (moins pr´e- cis´ement) serveur Web, est un logiciel servant des requˆetes respectant le protocole de commu-

— http://SERVEUR/cgi-bin/ : répertoire d’exécution des scripts CGI pointant vers /usr/lib/cgi-bin/ ; Ce serveur est également configuré pour exécuter les scripts PHP

Repository index (OBR metadata (standard + custom)) Installed Bundles on the

Sécurité côté client Introduction Failles de sécurité Abus de confiance Capture d’informations Sécurité côté serveur Références... 21

Sécurité côté client Introduction Failles de sécurité Abus de confiance Capture d’informations Sécurité côté serveur... Page 4 / 34

− Un pré processeur logique de gestion des servlets (sous forme d’un service Internet) destinée à connecter au service HTTPD permettant de générer les documents HTML

11.4 Deux stratégies différentes de mise en scène d’une même prestation Examinons maintenant brièvement la page web du site du musée de Sologne consacrée à

Activités Élèves • Installer le serveur en python et un premier exemple : ”Hello World !” • Structurer le site web • Intégrer des variables ”python” dans un fichier