Cours Introduction - Systèmes/Services - Unix



Documents pareils
Les serveurs WEBUne introduction

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

Table des matières Hakim Benameurlaine 1

INSTALLATION APACHE POUR WINDOWS (XP OU 2000)

Installation d un hébergement Web à domicile

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

Module 7 : Configuration du serveur WEB Apache

SERVEUR HTTP Administration d apache

Dans l'épisode précédent

REPARTITION DE CHARGE LINUX

Serveur Subversion Debian GNU/Linux

Procédure d'installation

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

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

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

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

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

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

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

Installation GLPI-OCSNG-SSL Linux Debian Sarge

Préparation d un serveur Apache pour Zend Framework

Apache 2.4 Installation et configuration

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

UE5A Administration Réseaux LP SIRI

Réaliser un inventaire Documentation utilisateur

Le serveur web Apache

Maîtriser Apache. Benjamin Drieu. version

2011 Hakim Benameurlaine 1

Hébergement de site web Damien Nouvel

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

Serveur Web Apache - SSL - PHP Debian GNU/Linux

CDS Invenio Installation et configuration de base

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

Architectures web/bases de données

CYBERGATE -TP-APACHE_2.DOC

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

L3 informatique TP n o 2 : Les applications réseau

Tutoriel compte-rendu Mission 1

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

GUIDE D INSTALLATION DE L APPLICATION GECOL SUR

Présentation Serveur Apache et pour RePeGlio

TP Service HTTP Serveur Apache Linux Debian

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

Sécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin

Installation UpdatEngine serveur (CentOs apache2 / MySQL)

WEBMESTRE : CONCEPTION DE SITES ET ADMINISTRATION DE SERVEURS WEB

Expérience d un hébergeur public dans la sécurisation des sites Web, CCK. Hinda Feriani Ghariani Samedi 2 avril 2005 Hammamet

WEB APPLICATION FIREWALL AVEC APACHE ET MOD_SECURITY

APACHE 2.4. Installation et configuration. Nicolas MARTINEZ

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

Impression sous Linux

Serveurs et environnements de développement. Serveur Web

Services Réseaux - Couche Application. TODARO Cédric

1. La plate-forme LAMP

Petit guide pour l installation de CVW sous Linux

Module BD et sites WEB

Installation du serveur WEB Apache ( MySQL, PHP) sous Debian 7.

Administration Linux - Apache

Solution d inventaire automatisé d un parc informatique et de télédistribution OCS INVENTORY NG. EHRHARD Eric - Gestionnaire Parc Informatique

Installation et présentation du serveur Apache

Outils de traitements de logs Apache

Projet de Semestre. Page Web Didactique de Visualisation d Algorithme. Université de Genève - semestre de printemps 2012

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

Web statique : client-serveur. Web et LAMP. Discussion HTTP. Caractéristiques du HTTP

BTS SIO Dossier BTS. PURCHLA Romain

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.

Hébergement de sites Web

Travaux Pratiques Introduction aux réseaux IP

GUIDE D INSTALLATION. Portaneo Enterprise Portal version 4.0

Mandataires, caches et filtres

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

But de cette présentation. Proxy filtrant avec Squid et SquidGuard. Serveur proxy. Serveur proxy. Hainaut P

Vulnérabilités et solutions de sécurisation des applications Web

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

WEBMESTRE : CONCEPTION DE SITES ET ADMINISTRATION DE SERVEURS WEB

Chapitre 1 Windows Server

Les différentes méthodes pour se connecter

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

Manuel d'exploitation de l'application Vitamin version 1.0

Application Web et J2EE

SECURIDAY 2012 Pro Edition

SUPERVISION DE RÉSEAU AVEC NAGIOS

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

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

Guide d installation JMap 5.0

Un exemple d'authentification sécurisée utilisant les outils du Web : CAS. P-F. Bonnefoi

Le serveur Web : Apache

Déploiement d OCS 1.02 RC2 sous Debian Etch 64

Installation sur un serveur personnel

Raspberry pi : Développer une petite application web sur Raspberry

Programmation Internet Cours 4

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

Côté Labo : le service Web

Programmation Web. Introduction

Hébergement WeboCube. Un système performant et sécurisé. Hébergement géré par une équipe de techniciens

Le serveur HTTPd WASD. Jean-François Piéronne

Séquence 8 - Bases des réseaux - suite Jean.Saquet@info.unicaen.fr, Gaetan.Richard@info.unicaen.fr

Transcription:

Cours Introduction - Systèmes/Services - Unix Cours 5 : Serveurs et configuration Le Cocq Michel lecocq@ipgp.fr Licence de Sciences et Technologies - Mention Informatique 16 Février 2016

Rappel plan général Introduction au système UNIX - mardi 12.01.2016 Services, processus, signaux - jeudi 14.01.2016 Scripting shell mardi 19.01.2016 Applications Client/Serveur et Web jeudi 11.02.2016 Serveurs et configuration mardi 16.02.2016 Systèmes/Services - Unix 16 Février 2016 2 / 22

Plan du cours 6 : Serveurs et configuration 1 Serveur Web 2 Votre propre serveur HTTP en python 3 Apache 4 Apache utilisation 5 Apache Configuration Systèmes/Services - Unix 16 Février 2016 3 / 22

Serveur Web Présentation Qu est-ce qu un serveur web? logiciel servant des requêtes sur le protocole HTTP développé pour le World Wide Web. un ordinateur sur lequel tourne un serveur HTTP est un serveur Web. serveur web peut aussi désigner le logiciel en lui même. Systèmes/Services - Unix 16 Février 2016 4 / 22

Serveur Web Présentation Les serveurs HTTP les plus utilisés sont : Apache : HTTP serveur de la Apache Software Foundation. IIS : Internet Information Services de Microsoft (IIS) Sun ONE : Sun Microsystems Systèmes/Services - Unix 16 Février 2016 5 / 22

Serveur Web Présentation Un serveur HTTP est à l écoute des connections sur un port donné. Le port standard pour un serveur HTTP est le numéro 80. Le client d un serveur HTTP est le navigateur Internet. A chaque requête qu il reçoit le serveur présente à l utilisateur la page demandée. Examples quand dans un navigateur internet un internaute saisit l adresse http://www.google.fr/, il envoit une requête au serveur HTTP de l entreprise Google qui transfère des données (une page au format HTML) qui sont interprétées et affichées par votre navigateur. Sur certains serveurs le port d écoute n est pas 80 mais par exemple 1234. Dans ce cas on accèdera au serveur par l adresse suivante : http://www.site.com:1234/. Systèmes/Services - Unix 16 Février 2016 6 / 22

Serveur Web Que peut faire un serveur web? Servir une page (fichier) en ajoutant des entêtes appropriés Exécuter un script et renvoyer le résultat comme une page. CGI (traitement de formulaires, etc). Interpréter des instructions encodées dans des tags HTML Vérifier la machine d origine : gestion d autorisations suivant provenance Vérifier un mot de passe et un login : autorisations suivant utilisateur Systèmes/Services - Unix 16 Février 2016 7 / 22

Serveur Web Que peut faire un serveur web? suite Reconnaître les entêtes de requêtes et servir des pages différentes suivant le client ou ses préférences Avoir des pages différentes selon le navigateur (browser) Parler la langue demandée Voir http://www.apache.org/docs/content-negotiation.html Lister des répertoires Voir http://www.apache.org/docs/mod_dir.html Encrypter les données et sécuriser les transactions protocole https Voir http://www.apache-ssl.org Systèmes/Services - Unix 16 Février 2016 8 / 22

Serveur Web Que peut faire un serveur web? suite et fin Répondre différemment suivant le nom de la machine Une même machine peut porter plusieurs adresses IP (interfaces virtuelles) une seule machine avec une seule carte réseau et une seule adresse IP peut héberger plusieurs serveurs WWW virtuels par exemple : répondre à http://www.toto.fr et http://www.tata.fr en renvoyant des pages différentes et en maintenant des logs et des configs propres à chaque serveur virtuel Systèmes/Services - Unix 16 Février 2016 9 / 22

Votre propre serveur HTTP Python Un petit serveur web en python, rapidement pour pouvoir partager ponctuellement des fichiers. Examples python -c import SimpleHTTPServer;SimpleHTTPServer.test() Lance un petit serveur http sur le port 8000, partageant les fichiers du répertoire courant. Pointez vôtre navigateur sur http://127.0.0.1:8000/ et vous servira le fichier index.html si il existe, sinon il listera le répertoire courant. Systèmes/Services - Unix 16 Février 2016 10 / 22

Apache Principales caractéristiques Ecrit en C (portable), plate forme UNIX (ou Linux) recommandée Multi-processus / multi-thread (daemon httpd) Configuration très flexible Architecture modulaire Comment obtenir Apache? inclu dans la plupart des distributions linux (httpd) sources et binaires sur http://www.apache.org/dist/httpd première version décembre 1995 dernière version : Apache 2.2 Systèmes/Services - Unix 16 Février 2016 11 / 22

Apache Modules compilés (statiques) ou liés dynamiquement (.so ou.dll) permettent d ajouter des fonctionalités, exemples: mod_speling : correction des URL erronées mod_ssl : gestion SSL (https) mod_cgi : gestion protocole CGI mod_alias : définition d alias (URL) etc... plusieurs dizaines de modules directives de configuration spécifiques à chaque module l API des modules est documentée: on peut définir de nouveaux modules (en langage C) si besoin. Systèmes/Services - Unix 16 Février 2016 12 / 22

Apache Les répertoires importants /usr/loca/bin/httpd : l exécutable Apache /etc/apache : les fichiers de configuration httpd.conf /www : le site web /var/log/apache/logs : les journaux Systèmes/Services - Unix 16 Février 2016 13 / 22

Apache start / stop / restart lancer apache : /etc/init.d/httpd start stop apache : /etc/init.d/httpd stop apachectl : Apache HTTP Server Control Interface start Start the Apache httpd daemon. stop Stops the Apache httpd daemon. restart Restarts the Apache httpd daemon. fullstatus Displays a full status report from mod_status. status Displays a brief status report. graceful Gracefully restarts the Apache httpd daemon. graceful-stop Gracefully stops the Apache httpd daemon. configtest Run a configuration file syntax test. Systèmes/Services - Unix 16 Février 2016 14 / 22

Apache Configuration Fichier httpd.conf (RedHat/Fedora: /etc/httpd/conf/httpd.conf) Principales options: ServerName : définit le nom du serveur monserveur.org port TCP (défaut 80) Listen 80 Répertoire où ce trouve le serveur ServerRoot "/etc/httpd" fichier où le serveur écrira le PID du processus /var/run/httpd.pid e Cocq Michel (Licence de Sciences et Technologies Cours Introduction - Mention -Informatique) Systèmes/Services - Unix 16 Février 2016 15 / 22

Apache Configuration (suite) Modules à charger LoadModule ldap_module modules/mod_ldap.so Inclusion d autre fichiers de configuration Include conf.d/*.conf Utilisateur unix utilisé par le daemon (sécurité) User apache Group apache Bien choisir les droits associés à l utilisateur apache (propriétés des fichiers et répertoires) Répertoire racine (pages HTML à servir) DocumentRoot "/var/www/html" Ainsi, http://serveur/page.html sera associé au fichier /var/www/html/page.html Systèmes/Services - Unix 16 Février 2016 16 / 22

Apache Configuration (répertoires) Options associées à chaque répertoire servi <Directory "/var/www/html"> Options Indexes FollowSymLinks # controle d accès Order allow,deny Allow from all </Directory> Examples repertoire secret réservé à une machine: <Directory "/var/www/html/secret"> Order allow,deny Allow from ma.machine.org Deny from all </Directory> Systèmes/Services - Unix 16 Février 2016 17 / 22

Apache Configuration (index) Que faire lorsque le client demande un répertoire? (et non un fichier) http://mon.beau-site.org/ (pas de nom de fichier) Directive DirectoryIndex DirectoryIndex index.html Voir aussi l option Indexes Systèmes/Services - Unix 16 Février 2016 18 / 22

Apache Configuration (logs) Logs d accès et d erreurs configurables ErrorLog logs/error_log LogLevel warn LogFormat "%h %l %u %t %r %>s %b" common CustomLog logs/access_log common 193.101.94.101 - - [21/Nov/2004:17:18:47 +0100] "GET /robots.txt HTTP/1.1" 200 87 "-" "Mozilla/4.0 (compatible; MSIE 5.0; Windows95) VoilaBot BETA 1.2 (http://www.voila.com/)" 195.101.94.101 - - [21/Nov/2004:17:18:58 +0100] "GET /Departement/Visite/Bureaux/O211 HTTP/1.1" 200 6173 "-" "Mozilla/4.0(compatible; MSIE 5.0; Windows 95) VoilaBot BETA 1.2 (http://www.voila.com/)" 81.65.74.2 - - [21/Nov/2004:17:19:07 +0100] "GET /favicon.ico HTTP/1.1" 200 1406 "-" "Mozilla/4.0 (compatible; MSIE 6.0; WindowsNT 5.1)" 218.175.198.189 - - [21/Nov/2004:17:20:28 +0100] "GET /img/logogtr HTTP/1.0" 200 1091 "http://www-gtr.iutv.univ-paris13.fr/equipe" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)" 83.254.108.216 - - [21/Nov/2004:17:20:57 +0100] "GET /Cours/Mat/Communication/DocSyntheses/synthese0 HTTP/1.1" 200 20903 "-""Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; FREE; SV1;.NET CLR 1.0.3705)" 217.175.187.189 - - [21/Nov/2004:17:21:37 +0100] "GET /Departement/Formation HTTP/1.0" 200 6921 "http://www-gtr.iutv.univ-paris13.fr/equipe" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)" Systèmes/Services - Unix 16 Février 2016 19 / 22

Apache Configuration (alias) La directive Alias permet de redéfinir certaines URL Examples Alias /icons/ "/var/www/icons/" Alias /error/ "/var/www/error/" Pour les scripts (CGI), utiliser ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" Pour des ré-écriture plus complexes, voir le module mod_rewrite et sa directive RewriteRule Systèmes/Services - Unix 16 Février 2016 20 / 22

Apache Configuration (cgi) On repère habituellement les scripts CGI par leur extension (ex. ".cgi") ou leur répertoire. Configurations simples typiques Scripts dans un répertoire ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" <Directory "/var/www/cgi-bin"> AllowOverride None Options None Order allow,deny Allow from all </Directory> Ou bien traiter les fichiers.cgi comme des scripts CGI AddHandler cgi-script.cgi Systèmes/Services - Unix 16 Février 2016 21 / 22

Apache (pour en savoir plus...) Après ce bref survol, consulter: apache.org : documentations, logiciels Apache, la référence par Ben Peter Laurie, O Reilly Apache 2.0, guide de configuration Linux, Charles Aulds, Eyrolles 2003. Systèmes/Services - Unix 16 Février 2016 22 / 22