Serveur Web Apache 2007/2008. Département RESEAUX & Télécommunications



Documents pareils
SERVEUR HTTP Administration d apache

Module 7 : Configuration du serveur WEB Apache

TP Service HTTP Serveur Apache Linux Debian

CYBERGATE -TP-APACHE_2.DOC

Installation d un hébergement Web à domicile

2011 Hakim Benameurlaine 1

UE5A Administration Réseaux LP SIRI

SERVEUR WEB LINUX LAMP. Raymond RAZAFIMAMONJY Administration LINUX / UNIX Chapitre 15

Les serveurs WEBUne introduction

Travaux Pratiques Introduction aux réseaux IP

WEBMESTRE : CONCEPTION DE SITES ET ADMINISTRATION DE SERVEURS WEB

Faire fonctionner symfony sous wamp et windows avec des vhost. Installation de wamp

Préparation d un serveur Apache pour Zend Framework

TD4 - Supervision et métrologie des réseaux. 1 Supervision des applications et services réseaux et des ressources locales

Table des matières Hakim Benameurlaine 1

Configuration du serveur Web Apache. Master 1 STIC-Informatique 1

TP HTTP. Université Pierre Mendès France U.F.R. Sciences de l Homme et de la Société Master IC²A

Serveur Subversion Debian GNU/Linux

Utilisation de l espace personnel (Serveur DATA)

FTP : File TRansfer Protocol => permets d envoyer des gros fichiers sur un serveur (ou de télécharger depuis le serveur)

Installation et configuration d Apache sous Linux RedHat 7.1. Pascal AUBRY Ambroise DIASCORN IFSIC Université de Rennes 1

Présentation Serveur Apache et pour RePeGlio

Installation d OwnCloud 8.0 sous Debian Avec connexion des utilisateurs active directory et mise en place de HTTPS

TP réseaux 4 : Installation et configuration d'un serveur Web Apache

Le serveur Web : Apache

BTS SIO SISR3 TP 1-I Le service Web [1] Le service Web [1]

Dans l'épisode précédent

Installation et présentation du serveur Apache

Différentes installations sur un serveur Windows 2000 ou 2003.

GUIDE D INSTALLATION DE L APPLICATION GECOL SUR

REPARTITION DE CHARGE LINUX

Tutoriel compte-rendu Mission 1

Procédure d'installation du serveur Apache HTTPD pour Windows

Serveur Web Apache - SSL - PHP Debian GNU/Linux

INSTALLATION APACHE POUR WINDOWS (XP OU 2000)

Apache 2.4 Installation et configuration

Serveur de partage de documents. Étude et proposition d'une solution afin de mettre en place un serveur de partage de documents.

WEBMESTRE : CONCEPTION DE SITES ET ADMINISTRATION DE SERVEURS WEB

TP création et publication d'un site web statique

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

Réaliser un inventaire Documentation utilisateur

Administration Linux - Apache

Comment avoir le logiciel? Le serveur web APACHE peut être téléchargé gratuitement du site web de APACHE:

ADF Reverse Proxy. Thierry DOSTES

Appropriation d'un serveur Apache

Mandataires, caches et filtres

Maîtriser Apache. Benjamin Drieu. version

Travaux Pratiques Introduction aux réseaux IP

Administration réseau sous Linux

Serveurs et environnements de développement. Serveur Web

Procédure d'installation

Aubert Coralie, Ruzand Brice GTR 2002 Bonvarlet Manuel, Desroches Alexandre, Magnin Cyril DRT Notice technique 1

L installation du module Webmail nécessite également quelques prérequis, à savoir :

Hébergement de site web Damien Nouvel

Linux et le Shell. Francois BAYART. Atelier du samedi 20 Novembre

CAHIER DES CHARGES SITE WEB : Steve Mind Magicien Close-up & Mentaliste - 1 -

A. Laisser le navigateur Web choisir l'encodage approprié...35 B. Changer le jeu de caractères utilisé par défaut par le Serveur Web Apache2...

Installation Installation. Windows. Tout-en-un. Un livre de Wikilivres.

Autorité de certification

Transfert de fichiers (ftp) avec dreamweaver cs5 hébergement et nom de domaine. MC Benveniste

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

Comment mettre en ligne un site WordPress local

Installation UpdatEngine serveur (CentOs apache2 / MySQL)

AC PRO SEN TR «services TCP/IP : WEB»

Service WEB, BDD MySQL, PHP et réplication Heartbeat. Conditions requises : Dans ce TP, il est nécessaire d'avoir une machine Debian sous ProxMox

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

Protection d'un serveur Apache

Les Serveurs sous Linux

CRÉER SON SITE INTERNET. Créer son site Internet. Méd de Roanne. FG 16/09/08

COURS 5 Mettre son site en ligne! Exporter son site avec WordPress Duplicator Installer un logiciel FTP Faire le suivi des visites de son site avec

TP01: Installation de Windows Server 2012

Gérer ses environnements de développement avec Vagrant RMLL 2012

NOTE: Pour une meilleure sécurisation, nous vous recommandons de faire l installation des outils web à l intérieur d un serveur virtuel.

InstallatIon et configuration d une Infrastructure réseau sans-fil. Avec. Interface de gestion utilisateurs

Pratique et administration des systèmes

APACHE 2.4. Installation et configuration. Nicolas MARTINEZ

Installation GLPI-OCSNG-SSL Linux Debian Sarge

DNS, FTP, WEB et DHCP : Mise en œuvre de serveurs sous Linux

TP n 2 : Installation et administration du serveur ProFTP. Partie 1 : Fonctionnement du protocole FTP (pas plus de 15min)

SQUID Configuration et administration d un proxy

LAMP : une nouvelle infrastructure LAMP. Une architecture modulaire. Installation

MANUEL D INSTALLATION D UN PROXY

Apache PHP4.0.2+MySQL

Le serveur web Apache

1. La plate-forme LAMP

DOCUMENTATION ADMINISTRATEUR

installer_un_serveur_debian - Documentation Ubuntu Francophone Installation complète d'un serveur web sous Debian 6.0

1. Warm up Activity: Single Node

BTS SIO Dossier BTS. PURCHLA Romain

Exemple : vous voulez tester votre site en local avant de l uploader via FTP chez votre hébergeur externe.

CDS Invenio Installation et configuration de base

Le projet d'annuaire LDAP à Rennes 1. - Raymond Bourges - Gérard Delpeuch

IP & Co. 1. Service DHCP. L'objectif de ce TP est de voir l'ensemble des services élémentaires mis en oeuvre dans les réseaux IP.

Installation sur un serveur personnel

Ce TP consiste à installer, configurer et tester un serveur DNS sous Linux. Serveur open source : bind9 Distribution : Mandriva

Titre: Version: Dernière modification: Auteur: Statut: Licence:

POVERELLO KASONGO Lucien SIO 2, SISR SITUATION PROFESSIONNELLE OCS INVENTORY NG ET GLPI

table des matières Administration système

Disque Dur Internet «Découverte» Guide d utilisation du service

Transcription:

Département RESEAUX & Télécommunications Serveur Web Apache 2007/2008 INTRODUCTION Le réseau Internet s'est développé considérablement ces dernières années. Pour les entreprises, il est devenu essentiel de pouvoir communiquer sur ce réseau, que ce soit par l intermédiaire de la messagerie ou par son serveur Web. Plusieurs possibilités sont offertes : passer par une société hébergeant le site web et le nom de domaine, ou effectuer toutes les opérations pour disposer du serveur dans ses locaux. Mais, quelque soit la solution choisie, les mêmes concepts sont utilisés. Nous allons dans ce TP installer et paramétrer un serveur Web. Puis montrer les possibilités et les protections envisageables. Lors de prochains TP, nous créerons des sites Web dynamiques et des sites sécurisés par SSL. PLAN DU RESEAU,PREINSTALLATION Le plan du réseau est le même que le TP DNS. Vous pouvez reprendre le schéma général, il est identique. Il est nécessaire d avoir un DNS pour utiliser de façon optimum un serveur Web. Le DNS est le DNS du TP précédant. Remontez ce DNS si besoin. Les noms sont toujours gw et pc1 sur le domaine bx.gtr.iut. Les adresses sont 192.168.X.254 et 192.168.X.1. Faire les tests nécessaires pour montrer le bon fonctionnement. Sur le poste de droite, vérifier que le package apache est installé : par exemple, en utilisant «Applications», «Ajouter/Enlever des logiciels». Ajoutez l alias www pour le poste de droite dans la configuration du DNS. Relancez le daemon named et vérifier que tout fonctionne correctement. INSTALLATION DU SERVEUR WEB Un serveur Web attend des requêtes sur l un des ports de la machine, et répond au besoin à ces requêtes en distribuant aux clients des fichiers (au format html, gif, jpg, etc). Le protocole mis en jeu se nomme http. Pour qu une machine soit serveur Web, il faut qu elle soit serveur http. Il existe de nombreuses versions de serveurs Web, distribuées gratuitement ou payantes (voir cours). Les plates-formes sont les différents UNIX et Windows. Sur Centos 5, avec l image ghost de départ, nous avons une version Apache 2.2.3. Lancez là avec la commande service httpd start. Montrez le bon fonctionnement depuis un navigateur sur le poste de gauche de l adresse http://www.bx.gtr.iut Module M3 - Serveur Web 1/5

Premières configurations Ceci installe apache dans plusieurs répertoires : la documentation est sous /usr/doc/apache.., les exécutables sous /usr/sbin/, les fichiers de configuration sous /etc/apache, et le site géré sous /var/www. Un script de démarrage est ajouté : /etc/rc.d/rc.httpd. Le daemon httpd doit être lancé automatiquement au boot. Quel est le répertoire dans lequel se trouvent les fichiers de configuration? Editez le fichier de configuration httpd.conf avec gedit par exemple. Repairez les paramètres suivants : ServerRoot StartServers et MaxClients Listen 80 User et Group : apache. Pourquoi ces valeurs? ServerName, que vous devez modifier pour une résolution fonctionnant à tous les démarrages. DocumentRoot. DirectoryIndex (~ ligne 390) HostnameLookups (que va-t-il se passer si l on met On?) Errorlog (ligne 471 environ) CustomLog (ligne 513 environ) Visualisez les logs et les éventuels messages d erreurs. Si des erreurs apparaissent, cela doit être parce que apache ne résout pas le nom et l adresse de la machine. Où se situe la page vue par défaut dans le navigateur? Montrez à ce stade le bon fonctionnement. La gestion des droits Les droits généraux Dans le fichier de configuration, les lignes suivantes (290 environ) <Directory /> Options FollowSymLinks Ces lignes permettent de donner un paramétrage général à tous les répertoires distribués par le serveur Web. Pour comprendre les différentes options, il faut consulter l aide. Dans le gestionnaire de logiciels, aouter les manuels d apache. Les aides sont alors disponibles sous l URL http://localhost/manual. Que signifie alors les options FollowSymLinks et AlloOverride None? On rencontre ensuite (ligne 305 et suivantes) le paramétrage du répertoire racine des documents: <Directory "/var/www/html"> Options Indexes FollowSymLinks Order allow, deny Allow from all Il est important de bien comprendre le paramètre Indexes pour gérer l affichage d un répertoire et pour les droits d accès la ligne Order. Consultez l aide pour comprendre ces paramètres. Cela sera très utile pour la suite de ce TP. Module M3 - Serveur Web 2/5

Ce paramètre Order indique l ordre préférentiel et quelles sont les machines autorisées ou interdites de lecture des fichiers d un répertoire. L explication complète se trouve à l url http://localhost/manual/mod/mod_authz_host.html#order En particulier, dans les deux cas Deny, Allow et Allow, Deny, il vous faut bien comprendre quelle clause sera prise en compte par défaut si aucune correspondance n est trouvée pour un client. Les répertoires des utilisateurs La directive suivante est UserDir. C est le nom du répertoire qui doit exister chez les utilisateurs pour pouvoir être vu par apache, donc à travers le web. En général, on retrouve la valeur public_html. Conservez cette valeur. Attention, il vous faut décommenter la ligne 361 (environ) pour que cela fonctionne, et créer le répertoire adéquat dans le home directory de l utilisateur pour lequel vous montrerez le bon fonctionnement de la clause Userdir en utilisant http://www.bx.gtr.iut/~etud1. Dessous, on rencontre, commenté par défaut, la protection des répertoires utilisateurs. C est ici qu il faut modifie si l on veut modifier des droits d accés aux pages personnelles. Ne rien modifier ici. La directive suivante est le nom par défaut des pages web des répertoires. On rencontre très souvent le nom index.html DirectoryIndex index.html index.html.var Vous pouvez ajouter un autre nom, par exemple index.php dans le cas ou votre site héberge des pages php et que les pages par défaut se nomment index.php sur certains répertoires. Ligne 397 : nom du fichier de gestion des accès à un répertoire : en général.htaccess. Ne modifiez pas la valeur. Si vos utilisateurs ont besoin de protéger l accès à leur répertoire, ils devront alors créer un fichier.htaccess dans ce répertoire. Voir syntaxe plus loin. AccessFileName :.htaccess. Repairez dessous comment sont bloqués en lecture les fichiers commençant par «.ht». Les alias Comment rendre visible à travers http un répertoire qui n est pas sous la racine /var/www/html? en utilisant les alias! Un exemple est présenté lignes 538 et suivantes. Créez un répertoire nommé testweb sous le répertoire /usr/local. Il ne devrait pas être visible car il est «au dessus» de la racine des documents. Pour le rendre visible, créez un alias sur ce répertoire : Alias /testweb "/usr/local/testweb" Définissez ensuite les directives du répertoire, par exemple: <Directory "/usr/local/testweb"> Options Indexes Order allow,deny Allow from all Réponse au nom de domaine et résolution des noms pour les logs Vérifiez depuis le poste hébergeant le serveur Web et le poste de gauche que les URL s suivantes fonctionnent: http://www.bx.gtr.iut http://www.bx.gtr.iut/~prof1 http://www.bx.gtr.iut/testweb Module M3 - Serveur Web 3/5

Ajoutez un enregistrement de type A dans votre DNS, pointant le nom de domaine. Votre site web doit alors répondre sur l URL http://bx.gtr.iut (comme le fait par exemple Google et http://google.fr). Modifiez ensuite la clause HostnameLookups en mettant On. Montrez le bon fonctionnement de l Alias /testweb, de l URL ci-dessus, et de la résolution inverse des noms de clients. PROTECTION PAR DOMAINES PROTECTION PAR UTILISATEURS Protection par domaine Sur le modèle de testweb, créez un répertoire domaine. Placez un document html valide dedans. Réalisez une protection par domaine du répertoire /domaine : autoriser l accès à toutes les machines de votre domaine et empêcher tous les autres domaines à accéder à ce répertoire. Pour cela, il faut que la résolution inverse (vue précédemment) fonctionne correctement, sinon les clients ne seront pas reconnus par leurs noms. Protection par mot de passe Deux cas peuvent être rencontrés. Protection dans httpd.conf : Si vous avez accès en écriture au fichier httpd.conf (donc si vous hébergez votre serveur), vous pouvez alors l éditer et ajouter une protection par utilisateur dans la déclaration du répertoire adéquat. Protéger le répertoire testweb. Créez les comptes tp1 et tp2 dans un fichier mo2passe sous /etc, en utilisant la commande htpasswd --h pour comprendre le fonctionnement de la commande. Réalisez une protection par utilisateur du répertoire /user (seul tp1 peut entrer). Pour cela, il faut utiliser les clauses AuthName, AuthType, AuthUserFile et require user en s aidant de l exemple suivant : <Directory /usr/local/exemple/> Options Indexes AuthType Basic AuthUserFile /etc/apachepassword AuthName Veuillez vous identifier <Limit GET> require user toto </Limit> Faire valider le fonctionnement de cette protection. Montrez également avec wireshark le codage en Base64 du mot de passe. (Il vous suffit de repairer la trame et de la visualiser, puis déplier le contenu dans la fenêtre du milieu de wireshark jusqu à voir Authorization : basic, puis Credentials. Montrer que vous décodez le mot de passe. Protection par fichier.htaccess : Lorsque son site est hébergé sur un serveur d une société spécialisée (provider), en général, il est impossible d avoir accès au fichier httpd.conf. Vous pouvez alors protéger l accès à tel ou tel répertoire en utilisant un fichier.htaccess, et en inscrivant dedans les quelques lignes gérant l authentification. Créer un répertoire secret sous htdocs. Modifier le fichier httpd.conf pour qu un fichier.htaccess puisse être utilisé dans /var/www/html et contrôle l accès de ce répertoire et des sous-répertoires (C est la clause AllowOverride et la valeur All qui permettra l utilisation d un.htaccess dans le répertoire considéré). Placez dans secret un document index.html. Il doit être visible dans un navigateur. Module M3 - Serveur Web 4/5

Créez ensuite ce fichier.htaccess dans secret, et placez les lignes suivantes : AuthName «Identifiez vous!» AuthUserFile /var/www/html/secret/.rep/.htpasswd AuthGroupFile /dev/null AuthType Basic <Limit GET POST> require valid-user </Limit> Il faut à présent créer le répertoire.rep et placer le fichier.htpasswd dedans. Créez le répertoire, puis à l aide de la commande htpasswd c /var/www/html/secret/.rep/.htpasswd toto, vous allez ajouter l utilisateur toto avec le mot de passe titi par exemple. Vérifier. Montrez que l accés au répertoite secret est bloqué par Apache. A t on accès au sous répertoire.rep par Apache? Que faut-il faire? Faites le et montrez le bon fonctionnement de votre second.htaccess. SERVEURS VIRTUELS Les techniques de serveurs virtuels permettent d héberger sur la même machine et avec le même serveur httpd plusieurs sites Web. Il existe deux types de virtuals hosts. Prenez connaissance de ces deux techniques grâce au manuel en ligne d apache. Vous allez utilisez la technique des serveurs virtuels par nom, qui ne consomme qu une seule adresse IP. Cette technique est souvent utilisée par les hébergeurs. Par exemple, free héberge vos pages sous le site virtuel http://prenom.nom.free.fr. Réalisez la configuration suivante : http://asc.bx.gtr.iut pointe sur le répertoire /var/lib/apache/htdocs http://www.bx.gtr.iut pointe sur le répertoire /var/lib/apache/htdocs/manual http://prof1.bx.gtr.iut pointe sur le répertoire public_html de l utilisateur prof1 Montrez le bon fonctionnement des serveurs virtuels. Module M3 - Serveur Web 5/5