notre solution

Transcription

notre solution
Documentation serveurs web apache
PPE2
Miramont Julian
Contents
1 : Comparaison apache/IIS ................................................................................ 3
1.1 : Apache .................................................................................................... 3
1.2 : IIS ............................................................................................................ 4
1.3 Conclusion ................................................................................................. 4
2 : configuration de ZEN Load-balancer.............................................................. 6
2.1 : Creation d’une ferme .............................................................................. 6
2.2 : Configuration de la ferme : ...................................................................... 8
2.3 : Ajout des deux serveurs Web : .............................................................. 11
3 : Installation du serveur Apache .................................................................... 11
4 : Serveur FTP ................................................................................................. 11
4.1 : Installation ............................................................................................ 11
4.2 : Configuration ........................................................................................ 12
5 : Tests ............................................................................................................ 13
1 : Comparaison apache/IIS
Apache et IIS (Internet Information Services) sont de loin les deux plates-formes de serveurs
web les plus courants. Nous allons voir les avantages et inconvénients des deux platesformes.
1.1 : Apache
Le serveur Web Apache http est une application d’Apache Software Foundation. Ce logiciel
est distribué gratuitement et la licence est open-source, ce qui signifie que les utilisateurs
peuvent modifier le code à leur guise.
Bien qu’Apache fonctionne sur tous les principaux systèmes d’exploitation, il est le plus
souvent utilisé sur Linux.
Apache est le leader sur le marché du serveur Web, et a une excellente réputation, ce qui
peut nous donner confiance pour le choix d’Apache pour les serveurs Web.
Niveau performance, Apache est légèrement plus performant que IIS, Mais apache est
toujours freiné par de deux ses principales caractéristiques : Apache est un serveur basé sur
les processus.
Dans un serveur basé sur les processus, chaque connexion simultanée nécessite un thread
séparé, ce qui entraîne une surcharge significative. Un serveur asynchrone, d'autre part, est
piloté par les événements et traite les demandes en une seule ou très peu de discussions.
1.2 : IIS
IIS (Internet Information Services) est le serveur web l'offre de Microsoft.
C’est un produit de logiciel fermé et supporté uniquement par Microsoft.
Il existe une version Lite appelé IIS Express qui a été installable comme un serveur autonome
freeware de Windows XP SP3 partir. Mais cette version ne supporte que HTTP et HTTPS.
Solide fonction, des améliorations de performances et de sécurité au cours des années ont
fait que IIS est constamment améliorée et gagné du terrain et des parts de marché sur
Apache, d'environ 21% en 2010 à environ 32% au février 2014.
Pourtant, la comparaison de la sécurité IIS Apache peut ne pas être juste de IIS.
La vulnérabilité de IIS peut aussi être largement attribué à son parent de système
d'exploitation, puisque la plupart des objectifs de logiciels malveillants sont sur Windows.
Comme Apache, IIS utilise également des extensions Web externes pour mettre en œuvre
certaines fonctionnalités. Par exemple publication FTP, demande d'application de routage,
des services de médias et de la réécriture d'URL sont toutes les nouvelles fonctionnalités
introduites dans IIS 7.5 via des extensions.
IIS est rapporté comme étant légèrement derrière Apache en termes de performances.
Cependant, ces résultats sont entachés parce que l'environnement du système
d'exploitation sous-jacent ne peut être égal pour fixer une base égale. IIS est
inextricablement liée avec Windows (par exemple IIS peut facilement passer et recevoir des
threads de processus du système d'exploitation Windows), et Apache ne peut tout
simplement pas fonctionner aussi bien là-bas.
1.3 Conclusion
Apache et IIS ont leurs avantages et inconvénients, comme indiqué ci-dessus. Déterminer
lequel utiliser est déterminée par plusieurs facteurs : IIS doit être livré avec Windows, mais
Apache n'a pas le soutien des entreprises grand nom, Apache a une excellente sécurité, mais
ne propose pas un excellent support de .NET de IIS. Et ainsi de suite. Le choix final pourrait
bien être un compromis qui sera déterminé selon les besoins.
Voici un tableau récapitulatif :
Caractéristique
IIS
Apache
OS supportés
Fenêtres
Linux, Unix, Windows, Mac
OS
Support aux utilisateurs et
correctifs
Le soutien des entreprises
Soutien communautaire
Coût
Gratuit, mais livré avec
Windows
Entièrement gratuit
Développement
Fermé, exclusif
Open source
Sécurité
Excellent
Bien
Performance
Bien
Bien
Part de marché
32%
42%
2 : Configuration de ZEN Load-balancer
2.1 : Création d’une ferme
Pour accéder à l’interface d’administration entrer l’adresse suivante dans votre navigateur :
https://172.31.0.3:444
Login : admin
Password : admin
Pour créer une nouvelle ferme, dans l'onglet « Manage » puis cliquer sur « Farms »
Une fois sur cette page, cliquer sur ;
« Add new Farm » :
Entrée le nom de la ferme ici et choisir « TCP » comme profile :
Ensuite sélectionner l'IP et écrire le port
2.2 : Configuration de la ferme :
Entrée les infos comme l'image ci-dessous (Le nom de la ferme ainsi que l'IP que vous
souhaitez) :
Décochez l'option « Enable client ip adress persistence through memory ».
Vous avez la possibilité d’installer un module complémentaire « Farmguardian » qui
détectera les erreurs des serveurs.
Explication de chaque ligne :
-Load Balance Algorithm :
-
-
Round Robin : Chaque client est distribué a tour de rôle sur les deux serveurs.
Hash : Chaque client ce voit attribué un numéro. Chaque serveurs dispose également
d'un numéro. Avec cette méthode un utilisateur et toujours distribué vers le même
serveur
Weight : Les clients seront distribués en fonction de la charge de chaque serveur
(poids).
Priority : Les clients sont automatiquement distribués sur le serveur prioritaire.
Enable client ip adress persistence through memory : quelque soit l'algorithme de
load balancing un client qui a toujours la même adresse IP sera distribué sur le même
serveur web.
Max number of clients memorized in the farm : Cette valeur est utile que si on
utilise l'option du dessus. Elle permet de définir un nombre maximum de client sur le
serveur.
Backend response timeout : C'est le temps de réponse maximum du serveur.
Max number of simultaneous connections for the virtual IP :Ce paramètre spécifie
le nombre simultanée de connections a la ferme.
Max number of real ip servers : C'est le nombre maximum de serveur dans la ferme.
Add X-Forwarded-For header to http request : Cette option active la redirection
d’entête http afin que le serveur web connaisse l'adresse IP du client.
Frecuency to check resurrected backends : Cette valeur, en seconde, est la période
pour qu'un serveur ne soit plus en blacklist.
Use farmguardian to check backend servers :Permet de personnaliser le monitoring
des serveurs en utilisant ces propres commandes.
2.3 : Ajout des deux serveurs Web :
En bas de la page, cliquer sur Add Real Server :
Il nous faudra ensuite mettre les informations nécessaires :
-
L’adresse réseau.
Le port.
Le nombre maximum de connexions.
Le poids du serveur.
Sa priorité par rapport aux autres serveurs.
On utilisera les valeurs de l’exemple ci-dessus.
3 : Installation du serveur Apache
Se référer au tutoriel vu en cours « Tutoriel Installation Apache sous DEBIAN - Version
simple ».
4 : Serveur FTP
Le besoin est de créer deux serveurs FTP¨, un sur chaque serveur Web, pour envoyer des
fichiers tel que le fichier de configuration de la page Web.
4.1 : Installation
Pour installer le package, rien de plus simple, il nous faut utiliser une ligne de commande
« apt-get install proftpd » et accepter l’installation du nouveau package. L’installation se
fera automatiquement.
4.2 : Configuration
On peut modifier le fichier de configuration avec cette commande :
nano /etc/proftpd/proftpd.conf
Voici les paramètres à changer pour une utilisation standard :
ServerName : le nom NETBIOS de votre serveur ftp.
Le « DefaultRoot » : sert à définir le dossier d’accueil de l’administrateur FTP, il ne pourra pas accéder
aux dossiers parents du dossier choisit. Ici, on choisit /var/www.
En dessous de « Anonymous -ftp » : Renseigner l'utilisateur qui aura accès au FTP :
NB : Notre serveur n’étant pas SSL, on aura un message d’avertissement à chaque fois qu’on
relancera le serveur, à cause du module memcache. Ce message étant indésirable, on peut retirer ce
module comme ceci :
-
Écrire sur le terminal : nano /etc/proftpd/modules.conf .
Et commentez la ligne : LoadModule mod_tls_memcache.c .
ATTENTION : Il faut également donner les droits à notre utilisateur FTP sur le dossier WWW, avec la
commande qui suit :
chmod -R 777 /var/www
Il faudra se connecter avec l’utilisateur adminftp pour donner les drotis sur le dossier.
C’est tout pour la configuration des serveurs Web.
5 : Tests
On peut effectuer certains tests pour vérifier que les serveurs Web sont bien fonctionnels, et
que le Load Balancer fonctionne bien. On pourra aussi tester les deux serveurs FTP.
-
Load Balancer : Pour tester Le Load Balancer, il faut se connecter à un des deux
serveurs Web (par exemple https://172.31.0.2). Une fois sur le site, maintenir la
touche F5 pour actualiser rapidement le site.
Cela a pour but de demander d’accéder au site une multitude de fois en peu de
temps, et le Load Balancer est sensé nous faire passer d’un site à l’autre. Il suffira
donc de regarder l’adresse URL tout en actualisant la page.
Si nous passons bien d’une URL à l’autre, le test est OK.
-
Administration Load Balancer : Pour tester l’administration du Load Balancer, il nous
faut ouvrir un navigateur avec l’URL d’administration https://172.31.0.1:444 .
Si le site d’administration apparaît, le test est OK.
-
Fail Over : Pour tester le Fail Over, il nous faudra éteindre un serveur Web. Le
deuxième serveur est sensé prendre le relai. Si on est bien redirigé sur l’autre page
web, le test est OK.
-
Serveur FTP : Pour tester le serveur FTP, il nous faudra utiliser FileZilla (qui est un
client FTP). Si avec ce logiciel on peut se connecter au serveur et transférer des
fichiers, le test est OK.