Apache (serveur HTTP)


Services réseau


DRA-WEB      


Durée
      5 jours

 



Objectif

Pouvoir mettre en place un serveur Apache, en assurer la configuration détaillée ainsi que son administration pour toutes les phases d'exploitation.

Description

Fleuron du logiciel libre, disponible gratuitement, le serveur Apache diffuse plus de 60% des sites Web. Réputé pour sa robustesse et sa grande polyvalence, il a la faveur aussi bien des plus importantes sociétés que des apprentis webmestres. Il trouve sa place tant sur Internet que dans les intranets.

Prérequis

Maîtrise d'un UNIX en tant qu'utilisateur et connaissance des réseaux TCP/IP.

Public

Personnes en charge de l'administration réseau.

Sujets abordés

  • Notions essentielles sur TCP/IP
    • Adressage IP
      • attribution (public / privé)
    • Ports (well-known ports)
      • protocoles majeurs (SMTP, POP, IMAP, FTP, HTTP)
    • Rôles des ONG (ICANN)
    • Résolution de nom
      • configuration client
      • annuaires
        • DNS
          • enregistrement d'un nom de domaine public
          • configuration / vérification
        • DHCP
    • Prospective (IPv6)
  • Serveur Web
    • Survol du protocole HTTP
    • Dialogue client (navigateur) / serveur Web
      • simulation (telnet, netcat, openssl, lynx)
        • de client
        • de serveur
    • Clients
      • navigateurs
        • en mode graphique
        • en mode texte (lynx, links, …)
      • orientés transferts (wget, curl, pavuk, …)
        • automates (notion de webclients)
    • Approfondissement du protocole HTTP
    • Enrichissement du protocole HTTP avec WebDAV
  • Le serveur Apache
    • Historique en quelques mots
    • Positionnement et serveurs alternatifs
      • Caudium / Roxen
      • Stronghold
      • tux (KHTTP)
      • serveurs sous forme de librairies spécialisées avec certains langages (Perl, Python, …)
      • serveurs "intégrés" comme ceux de Filemaker, Oracle, Zope/Plone, etc.
      • serveurs "périphériques" comme Webstar pour 4D
    • Les différentes branches
      • version 1.3.X
      • version 2.X
    • Installation
      • téléchargement des sources
        • site officiel httpd.apache.org
        • source alternative www.apachetoolbox.com
        • compilation
      • depuis les binaires
        • paquetages (propres à chaque Unix)
    • Documentation électronique
      • locale
      • en ligne
    • Invocation
      • démon
      • méta-démon
      • scripts
        • apachectl
        • spécifique à l'Unix utilisé
      • actions disponibles
        • lancement,
        • arrêt,
        • status,
        • vérification de syntaxe,
        • changement de configuration,
        • etc.
    • Vérification de l'exécution
      • apachectl
      • ps / netstat / lsof (ou sockstat)
    • Configuration
      • portée des directives
        • globales
        • sites (URLs)
        • dossiers
        • fichiers
      • mode de fonctionnement (processus / threads)
        • mécanismes d'anticipation
          • prefork
          • thread-based
      • administration déléguée (fichiers de type .htaccess)
        • fonctionnement (héritage et raffinement)
      • gestion de la localisation (langues de travail des internautes)
    • Modularité
      • activation de module
      • définitions conditionnelles
      • liste des modules disponibles
        • avalisés par le groupe de travail Apache
        • modules tiers
      • étude des modules les plus importants
    • Présentation des dossiers (détails de mise en page)
    • Sites "utilisateurs"
    • Serveurs virtuels
      • basés sur l'adresse IP
      • basés sur le nom de machine
      • serveurs virtuels en nombre ("Mass Virtual Hosting")
    • Outils de configuration
      • Webmin
  • Rapports d'activité
    • Configuration des journaux
      • chemins
      • informations enregistrées
    • Outils d'analyse
      • wusage
      • analog
      • webalizer
      • awstats
        • IPgéolocalisation
      • WebTrends (commercial)
    • Outils d'avertissement
      • Swatch (Simple WATCHer)
    • Gestion des journaux
      • résolution de noms (logresolve)
      • rotation (rotatelogs, logrotate)
      • compression
  • Contenu dynamique
    • Côté serveur
      • méthodes
        • GET
        • POST
        • PUT
      • Server Side Includes (SSI)
      • CGI
        • principe
        • limitations
        • minimisation des risques avec suExec
        • activation et configuration dans Apache
      • interpréteurs embarqués
        • PHP
          • configuration
          • vérification
        • Perl
        • Python
    • Gestion de formulaires
    • Accès aux bases de données
      • Exemples
        • PHP et MySQL
        • Perl et PostgreSQL
    • Côté client (survol)
      • Java
      • Javascript
      • Flash
  • Performances
    • Vérification
      • ab
      • Flood
      • Perl::ApacheBench
      • httperf
      • SSLswamp
    • Optimisation
      • désactivation de la résolution de nom
      • désactivation de l'horodatage "access time"
      • durée de vie des connexions et des processus
      • gestion des caches
        • données
        • CGI (FastCGI)
        • SSL
      • compression à la volée
      • limitation de la profondeur
      • limitation des directives "coûteuses" (AllowOverride, Rewrite, …)
      • proxy et reverse-proxy
      • combinaison de serveurs
  • Contrôle d'accès / sécurité / protection / authentification
    • Minimisation des risques
      • identité des processus Apache
      • réduire la signature du serveur
    • Contrôle d'accès
      • orienté utilisateurs
        • authentification
          • passage en revue des différentes sources possibles :
            • fichiers locaux (htpasswd - fichiers et commande -, PAM, …)
            • fichiers distants (cookies)
            • annuaires (LDAP, NDS, SaMBa, …)
            • bases de données (db, dbm, MySQL, PostgreSQL, …)
            • spécifiques (anonyme, personnalisé, …)
      • orienté machines/réseaux
    • SSL
      • concepts et mise en oeuvre
      • chiffrage
        • génération de clefs
      • certificats
        • génération
      • certification
        • auto-certification
        • obtention auprès d'un tiers-certificateur
      • matériels spécialisés
    • Filtrage au niveau applicatif
      • mandataires HTTP
        • module proxy Apache
        • Squid
  • Exploitation avancée
    • Gestion de bande passante
      • mod_bandwidth
      • mod_throttle
    • Répartition de charge
      • round-robin (DNS)
      • clustering
    • Tolérance de panne ("failover server")
  • Documentation / Information
    • Sites Web
    • Bibliographie

 

Nos formations
Nous demander un devis pour cette formation

Nous contacter