Blog ENI : Toute la veille numérique !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
Du 22 au 24 novembre : Accès 100% GRATUIT à  
la Bibliothèque Numérique ENI. Je m'inscris !
  1. Supports de cours
  2. Apache 2.4 - Installation et configuration - Version en ligne

Apache 2.4 Installation et configuration - Version en ligne

Informations

  • Consultable en ligne immédiatement après validation du paiement et pour une durée de 10 ans.
  • Version HTML
Livres rédigés par des auteurs francophones et imprimés à Nantes

Caractéristiques

  • HTML
  • ISBN : 978-2-7460-9691-2
  • EAN : 9782746096912
  • Ref. ENI : LNRIM2.4APA
Ce support s'adresse à tout administrateur système souhaitant découvrir Apache, ainsi qu'à ceux qui l'utilisent dans ses versions précédentes et préparent la mise à jour de ce serveur web vers la version 2.4. Depuis 1996, et malgré une augmentation significative de solutions délivrant les mêmes services, Apache reste le serveur web le plus utilisé sur Internet. Il est employé dans différents...
  • Niveau Initié à Confirmé
  • Parution juin 2015
Ce support s'adresse à tout administrateur système souhaitant découvrir Apache, ainsi qu'à ceux qui l'utilisent dans ses versions précédentes et préparent la mise à jour de ce serveur web vers la version 2.4.

Depuis 1996, et malgré une augmentation significative de solutions délivrant les mêmes services, Apache reste le serveur web le plus utilisé sur Internet. Il est employé dans différents contextes grâce à sa grande modularité. Dans sa dernière version, de nombreuses optimisations ont été apportées en termes de performance et de sécurité, de nouveaux modules ont été intégrés élargissant les possibilités de configuration (industrialisation, traitement de données, utilisation de variables, etc.).

Dans ce livre, avec une approche pratique basée sur des exemples de configuration, vous apprendrez à effectuer des installations et configurations sur mesure en fonction des besoins fonctionnels, tels que l'hébergement de sites internet dynamiques avec PHP-FPM, la fonction de Reverse Proxy ou encore de Load Balancer. L'optimisation de service et de sécurité est également traitée avec notamment des exemples de solutions à mettre en place pour se prémunir de potentielles menaces dans le cadre d'une exposition sur Internet.

Pour finir, vous effectuerez l'installation complète d'une plate-forme LAMP spécifique à des CMS Open Source comptant parmi les références du marché, tels qu'eZ Publish et WordPress.

Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr pour la réalisation des installations de ce dernier chapitre (Apache, MySql et PHP).


Les chapitres du livre :
Avant-propos – Introduction – Installation d'Apache sous Linux – Configuration de base d'Apache – Configuration avancée – Gestion des logs sous Apache – Apache en tant que serveur web dynamique – Apache en tant que serveur reverse proxy – Notions de sécurité – Optimisation du service Apache – Les outils d'Apache – Cas pratiques

Téléchargements

Avant-propos
  1. 1. Introduction
  2. 2. À qui cet ouvrage s'adresse-t-il ?
  3. 3. Niveau de compétences requis
  4. 4. Structure de cet ouvrage
Introduction
  1. 1. Présentation du protocole HTTP
    1. 1.1 Introduction
    2. 1.2 La communication
      1. 1.2.1 Les méthodes utilisées par le client
      2. 1.2.2 Les en-têtes HTTP
      3. 1.2.3 La réponse HTTP
  2. 2. Présentation d'Apache
    1. 2.1 Qu'est-ce qu’un serveur web ?
    2. 2.2 Apache
    3. 2.3 Historique des versions stables d'Apache HTTP Server et événements marquants
  3. 3. Nouveautés de la version 2.4
    1. 3.1 Améliorations du noyau
    2. 3.2 Nouveaux modules
    3. 3.3 Améliorations des modules
    4. 3.4 Améliorations et nouveaux outils Apache
    5. 3.5 Modification des paramètres de compilation et d'activation des modules par défaut
    6. 3.6 Modifications des syntaxes de configuration
Installation d'Apache sous Linux
  1. 1. Distribution Linux Debian
    1. 1.1 Modification des sources d'installation
    2. 1.2 Installation d'Apache
    3. 1.3 Localisation des fichiers de configuration
    4. 1.4 Gestion du service Apache
  2. 2. Distribution Linux CentOS
    1. 2.1 Localisation des fichiers de configuration
    2. 2.2 Gestion du service Apache
  3. 3. Compilation depuis les sources
    1. 3.1 Téléchargement des sources
    2. 3.2 Configuration de la compilation
    3. 3.3 Création d'un layout d'installation personnalisé
    4. 3.4 Compilation et vérifications de fonctionnement
    5. 3.5 Création du script de démarrage
    6. 3.6 Activation du service au démarrage
    7. 3.7 Ajouter les binaires dans le path
    8. 3.8 Modifier le path pour sudo
    9. 3.9 Gestion du service Apache
Configuration de base d'Apache
  1. 1. Fichiers de configuration
    1. 1.1 Syntaxe des fichiers de configuration
    2. 1.2 Fichiers .htaccess
    3. 1.3 Fichier MIME
  2. 2. Première configuration
    1. 2.1 Création du compte utilisateur d'Apache
    2. 2.2 Modification du compte utilisateur d'Apache
    3. 2.3 Premier fichier de configuration
    4. 2.4 Tests et affinage de la configuration
  3. 3. Directives Core
    1. 3.1 Directives globales
      1. 3.1.1 ServerRoot
      2. 3.1.2 ServerName
      3. 3.1.3 ServerAlias
      4. 3.1.4 ServerAdmin
      5. 3.1.5 ServerSignature
      6. 3.1.6 ServerTokens
      7. 3.1.7 LoadModule
      8. 3.1.8 DocumentRoot
      9. 3.1.9 Error
      10. 3.1.10 ErrorLog
      11. 3.1.11 ErrorLogFormat
      12. 3.1.12 LogLevel
      13. 3.1.13 ErrorDocument
      14. 3.1.14 Include
      15. 3.1.15 UseCanonicalName
      16. 3.1.16 UseCanonicalPhysicalPort
      17. 3.1.17 TimeOut
      18. 3.1.18 KeepAlive
      19. 3.1.19 MaxKeepAliveRequests
      20. 3.1.20 KeepAliveTimeout
      21. 3.1.21 HostnameLookups
      22. 3.1.22 AccessFileName
      23. 3.1.23 AllowOverride
    2. 3.2 Directives de type bloc
      1. 3.2.1 <Directory>
      2. 3.2.2 <DirectoryMatch>
      3. 3.2.3 <Files>
      4. 3.2.4 <FilesMatch>
      5. 3.2.5 <Location>
      6. 3.2.6 <LocationMatch>
      7. 3.2.7 <VirtualHost>
      8. 3.2.8 <If>
      9. 3.2.9 <IfDefine>
      10. 3.2.10 <IfModule>
    3. 3.3 Directives MPM
      1. 3.3.1 PidFile
      2. 3.3.2 Port d'écoute et protocole
      3. 3.3.3 ServerLimit
      4. 3.3.4 ThreadLimit
      5. 3.3.5 ThreadsPerChild
      6. 3.3.6 MaxRequestWorkers (anciennement MaxClients)
      7. 3.3.7 StartServers
      8. 3.3.8 MaxSpareServers (MPM Prefork)
      9. 3.3.9 MinSpareServers (MPM Prefork)
      10. 3.3.10 MaxSpareThreads
      11. 3.3.11 MinSpareThreads
  4. 4. Modules
    1. 4.1 mod_unixd (unixd_module)
      1. 4.1.1 User
      2. 4.1.2 Group
      3. 4.1.3 ChrootDir
      4. 4.1.4 Suexec
    2. 4.2 mod_authz_core (authz_core_module)
      1. 4.2.1 Require
      2. 4.2.2 RequireAll
      3. 4.2.3 RequireAny
      4. 4.2.4 RequireNone
    3. 4.3 mod_authn_core (authn_core_module)
      1. 4.3.1 AuthName
      2. 4.3.2 AuthType
      3. 4.3.3 AuthnProviderAlias
    4. 4.4 mod_auth_basic (auth_basic_module)
      1. 4.4.1 AuthBasicProvider
      2. 4.4.2 AuthBasicAuthoritative
      3. 4.4.3 AuthBasicProvider
      4. 4.4.4 AuthBasicUseDigestAlgorithm
    5. 4.5 mod_authn_file (authn_file_module)
      1. 4.5.1 AuthUserFile
    6. 4.6 mod_authz_user (authz_user_module)
    7. 4.7 mod_mime (mime_module)
      1. 4.7.1 AddCharset
      2. 4.7.2 AddLanguage
      3. 4.7.3 AddEncoding
      4. 4.7.4 AddHandler
      5. 4.7.5 AddType
      6. 4.7.6 AddInputFilter
      7. 4.7.7 AddOutputFilter
      8. 4.7.8 DefaultLanguage
      9. 4.7.9 RemoveCharset
      10. 4.7.10 RemoveEncoding
      11. 4.7.11 RemoveHandler
      12. 4.7.12 RemoveInputFilter
      13. 4.7.13 RemoveOutputFilter
      14. 4.7.14 RemoveLanguage
      15. 4.7.15 RemoveType
      16. 4.7.16 TypesConfig
    8. 4.8 mod_negotiation (negotiation_module)
      1. 4.8.1 ForceLanguagePriority
      2. 4.8.2 LanguagePriority
    9. 4.9 mod_log_config (log_config_module)
      1. 4.9.1 CustomLog
      2. 4.9.2 LogFormat
      3. 4.9.3 TransferLog
    10. 4.10 mod_dir (dir_module)
      1. 4.10.1 DirectoryIndex
      2. 4.10.2 DirectoryIndexRedirect
      3. 4.10.3 DirectorySlash
      4. 4.10.4 FallbackResource
    11. 4.11 mod_rewrite (rewrite_module)
      1. 4.11.1 RewriteBase
      2. 4.11.2 RewriteCond
      3. 4.11.3 RewriteEngine
      4. 4.11.4 RewriteMap
      5. 4.11.5 RewriteRule
    12. 4.12 mod_alias (alias_module)
      1. 4.12.1 Alias
      2. 4.12.2 AliasMatch
      3. 4.12.3 Redirect
      4. 4.12.4 RedirectMatch
      5. 4.12.5 RedirectPermanent
      6. 4.12.6 RedirectTemp
      7. 4.12.7 ScriptAlias
      8. 4.12.8 ScriptAliasMatch
  5. 5. Cas concret : création de l’environnement applicatif d’un site web
    1. 5.1 Fichier de configuration principal d'Apache httpd.conf
    2. 5.2 Fichier de configuration modules.conf
    3. 5.3 Fichier de configuration globale server.conf
    4. 5.4 Fichier de configuration du MPM Event mpm-event.conf
    5. 5.5 Répertoire applicatif et son fichier de configuration
Configuration avancée
  1. 1. Modules et fonctionnalités avancés
    1. 1.1 mod_setenvif
      1. 1.1.1 BrowserMatch
      2. 1.1.2 BrowserMatchNoCase
      3. 1.1.3 SetEnvIf
      4. 1.1.4 SetEnvIfExpr
      5. 1.1.5 SetEnvIfNoCase
    2. 1.2 mod_headers
      1. 1.2.1 Header
      2. 1.2.2 RequestHeader
    3. 1.3 mod_expires
      1. 1.3.1 ExpiresActive
      2. 1.3.2 ExpiresByType
      3. 1.3.3 ExpiresDefault
    4. 1.4 mod_sed
      1. 1.4.1 InputSed
      2. 1.4.2 OutputSed
    5. 1.5 mod_macro
      1. 1.5.1 Macro
      2. 1.5.2 Use
      3. 1.5.3 UndefMacro
    6. 1.6 mod_session
      1. 1.6.1 Session
      2. 1.6.2 SessionEnv
      3. 1.6.3 SessionExclude
      4. 1.6.4 SessionInclude
    7. 1.7 mod_session_cookie
      1. 1.7.1 SessionCookieName
      2. 1.7.2 SessionCookieRemove
    8. 1.8 mod_request
    9. 1.9 mod_unique_id
    10. 1.10 mod_auth_form
      1. 1.10.1 AuthFormProvider
      2. 1.10.2 AuthFormUsername
      3. 1.10.3 AuthFormPassword
      4. 1.10.4 AuthFormLocation
      5. 1.10.5 AuthFormLogoutLocation
  2. 2. Installation de modules supplémentaires
    1. 2.1 mod_session_crypto
      1. 2.1.1 SessionCryptoCipher
      2. 2.1.2 SessionCryptoPassphrase
      3. 2.1.3 SessionCryptoPassphraseFile
      4. 2.1.4 Installation
      5. 2.1.5 Compilation des librairies APR et APR-util
      6. 2.1.6 Recompilation d'Apache
    2. 2.2 mod_security
      1. 2.2.1 Installation
      2. 2.2.2 Activation du module
  3. 3. Cas concret : hébergement de plusieurs sites web sur un même serveur à partir de modèles de configuration
Gestion des logs sous Apache
  1. 1. Activation et configuration
    1. 1.1 Journaux d'erreur
      1. 1.1.1 Utilisation de LogLevel
      2. 1.1.2 Utilisation de ErrorLogFormat
    2. 1.2 Module mod_log_config
      1. 1.2.1 Utilisation de la directive LogFormat
    3. 1.3 Module mod_logio
    4. 1.4 Logs Apache au format JSON
  2. 2. Rotation
    1. 2.1 Rotation avec Logrotate
    2. 2.2 Rotation avec rotatelogs
      1. 2.2.1 Rotation basée sur un intervalle de temps
      2. 2.2.2 Rotation basée sur une taille de fichier
  3. 3. Centralisation
    1. 3.1 Principe
    2. 3.2 Serveur Rsyslog
      1. 3.2.1 Installation de Rsyslog
      2. 3.2.2 Configuration du serveur Apache
      3. 3.2.3 Configuration du client Rsyslog
      4. 3.2.4 Configuration du serveur Rsyslog central
  4. 4. Outil d'interprétation et de statistiques : AWStats
    1. 4.1 Installation
    2. 4.2 Configuration d'Apache
    3. 4.3 Configuration d'AWStats
Apache en tant que serveur web dynamique
  1. 1. Introduction
  2. 2. PHP avec Apache en MPM Prefork
    1. 2.1 Installation de PHP
      1. 2.1.1 Installation avec le gestionnaire de paquets Debian
      2. 2.1.2 Installation depuis les sources
    2. 2.2 Activation et configuration du module PHP
      1. 2.2.1 Activation du module PHP
      2. 2.2.2 Configuration d'Apache pour PHP
  3. 3. PHP avec Apache en MPM Worker
    1. 3.1 Installation de PHP
    2. 3.2 Configuration d'Apache en MPM Worker
    3. 3.3 Installation d'Apache en MPM Worker (depuis les sources)
    4. 3.4 Installation et configuration de mod_fcgid
      1. 3.4.1 Installation du module
      2. 3.4.2 Configuration du module
  4. 4. PHP avec Apache en MPM Event
    1. 4.1 Installation de PHP-FPM
      1. 4.1.1 Distribution Linux Ubuntu/Debian
      2. 4.1.2 Installation depuis les sources
    2. 4.2 Installation Apache en MPM Event
    3. 4.3 Activation et configuration de mod_proxy_fcgi
  5. 5. Installation de MySQL
    1. 5.1 Distribution Ubuntu et Debian/Linux
    2. 5.2 Distribution CentOS/Red Hat
Apache en tant que serveur reverse proxy
  1. 1. Introduction
  2. 2. Mise en place d'un reverse proxy
    1. 2.1 Activation du module
    2. 2.2 Configuration du module mod_proxy
      1. 2.2.1 ProxyPass
      2. 2.2.2 ProxyPassReverse
      3. 2.2.3 ProxyAddHeaders
      4. 2.2.4 ProxyVia
      5. 2.2.5 ProxyPassMatch
      6. 2.2.6 ProxyPassReverseCookieDomain
      7. 2.2.7 ProxyPassReverseCookiePath
      8. 2.2.8 ProxyPreserveHost
  3. 3. Mise en place d'un reverse proxy/load balancer
    1. 3.1 Activation du module
    2. 3.2 Configuration du module mod_proxy_balancer
      1. 3.2.1 Répartition de charge
      2. 3.2.2 Pondération dans la répartition de charge
    3. 3.3 Serveur de secours
      1. 3.3.1 En cas d'indisponibilité de services
      2. 3.3.2 En cas d'erreur applicative/code HTTP
    4. 3.4 Répartition de charge avec abonnement utilisateur (stickyness)
    5. 3.5 Interface de gestion Load Balancer Manager
Notions de sécurité
  1. 1. Introduction
  2. 2. Permissions de répertoire
  3. 3. Chroot d'Apache
    1. 3.1 Installation d'Apache dans le chroot
    2. 3.2 Configuration d'Apache et VirtualHost
  4. 4. Protection d’accès
    1. 4.1 Autorisation d'accès
      1. 4.1.1 Contrôle d'accès en fonction du réseau
      2. 4.1.2 Contrôle d'accès en fonction de variables
    2. 4.2 Authentification Basic et Digest
      1. 4.2.1 Module mod_auth_basic
      2. 4.2.2 Module mod_auth_digest
    3. 4.3 Les fournisseurs d'authentification
      1. 4.3.1 Authentification par fichier de mot de passe
      2. 4.3.2 Authentification à la manière des sites FTP anonymes
      3. 4.3.3 Authentification avec une base de données MySQL
  5. 5. Protection contre les attaques et limitation du trafic
    1. 5.1 Protection contre les attaques de type "déni de service"
      1. 5.1.1 Ajustement du paramétrage d'Apache
      2. 5.1.2 Module mod_reqtimeout
      3. 5.1.3 Module mod_security
    2. 5.2 Protection contre des attaques diverses et variées
      1. 5.2.1 Jeux de règles de base
      2. 5.2.2 Jeux de règles orientés application
      3. 5.2.3 Jeux de règles orientés spam et usurpation d'identité
    3. 5.3 Limitation de trafic
      1. 5.3.1 Module Apache mod_ratelimit
  6. 6. Protocole de sécurisation SSL/TLS
    1. 6.1 Présentation et historique
    2. 6.2 Utilisation avec Apache
      1. 6.2.1 Génération de certificats
      2. 6.2.2 Activation du module mod_ssl
      3. 6.2.3 Configuration du module mod_ssl
Optimisation du service Apache
  1. 1. Introduction
  2. 2. Gestion des ressources (matérielles, système, réseau)
    1. 2.1 Mémoire vive
      1. 2.1.1 Charger les modules strictement nécessaires
      2. 2.1.2 Limiter les ressources consommées par Apache
    2. 2.2 Stockage/disques durs
      1. 2.2.1 Directives FollowSymLinks et SymLinksIfOwnerMatch
      2. 2.2.2 Directive AllowOverride
      3. 2.2.3 Directive DirectoryIndex
      4. 2.2.4 Optimiser ou éliminer l’écriture de logs
Les outils d'Apache
  1. 1. Introduction
  2. 2. apachectl
  3. 3. ab
  4. 4. apxs
  5. 5. dbmmanage
  6. 6. fcgistarter
  7. 7. htcacheclean
  8. 8. htdigest
  9. 9. htdbm
  10. 10. htpasswd
  11. 11. httxt2dbm
  12. 12. logresolve
  13. 13. rotatelogs
Cas pratiques
  1. 1. Introduction
  2. 2. Environnement et contexte d'installation
    1. 2.1 Prérequis système
    2. 2.2 Apache
    3. 2.3 MySQL
  3. 3. Hébergement d'un CMS PHP
    1. 3.1 CMS eZ Publish
    2. 3.2 Prérequis du CMS
    3. 3.3 Préparation du système
    4. 3.4 Installation de PHP avec les prérequis
    5. 3.5 Configuration d'Apache
    6. 3.6 Création de la base de données et du compte utilisateur MySQL
    7. 3.7 Installation d'eZ Publish
  4. 4. Utilisation de plusieurs versions de PHP sur un même serveur Apache
    1. 4.1 CMS WordPress
    2. 4.2 Prérequis de WordPress
    3. 4.3 Installation de PHP
    4. 4.4 Préparation du système
    5. 4.5 Configuration d'Apache
    6. 4.6 Création de la base de données et du compte utilisateur MySQL
    7. 4.7 Installation de WordPress
    8. Index

Nos nouveautés

voir plus