Guide pratique de mise en œuvre d’un serveur WebDAV sous Apache avec LDAP et SS

Guide pratique de mise en œuvre d’un serveur WebDAV sous Apache avec LDAP et SSL Version française du Apache based WebDAV Server with LDAP and SSL Saqib Ali Développement XML/XHTML distant <saqib CHEZ seagate POINT com> Adaptation française: Denis Berhaut Relecture de la version française: Vincent Loupien Préparation de la publication de la v.f.: Jean-Philippe Guérard Version : 4.1.2.fr.1.1 30 janvier 2006 1 Historique des versions Version 4.1.2.fr.1.1 2006-01-30 JPG Correction de mise en forme sur une suggestion de Bernard Siaud. Version 4.1.2.fr.1.0 2004-12-20 DB, VL, JPG Première traduction française Version 4.1.2 2003-10-17 SA Ajout de la section d’optimisation SSL Version 4.1.1 2003-09-29 SA Mise à jour de la section SSL suite à des commentaires de lecteurs Version 4.1.0 2003-09-02 SA Mise à jour de la section SSL suite à des commentaires de lecteurs Version 4.0.2 2003-08-01 SA Mises à jour mineures de la ligne de commande de configuration d’Apache /dev/random référencée dans la section SSL. Version 4.0.1 2003-07-27 SA Ajout d’informations dans la section SSL Version 4.0 2003-06-29 SA Mise à jour du guide pratique pour Apache 2.0. De plus, conversion du source en XML. Résumé Ce document constitue le guide pratique de mise en œuvre d’un serveur WebDAV Apache utilisant LDAP pour l’authentification et SSL pour le chiffrement. Table des matières 1. Introduction [p 3] 1.1. À propos de ce document [p 4] 1.2. Contributions au document [p 4] 1.3. Qu’est-ce qu’Apache ? [p 4] 1.4. Qu’est-ce que WebDAV ? [p 4] 1.5. Qu’est-ce que PHP ? [p 5] 1.6. Qu’est-ce que mySQL ? [p 5] 1.7. Que nous faut-il ? [p 5] 1.8. Considérations [p 5] 2. Pré-requis [p 6] 2.1. Éléments essentiels [p 6] 2 2.2. Apache 2.0.46 [p 6] 2.3. OpenSSL [p 6] 2.4. La bibliothèque iPlanet LDAP [p 6] 2.5. mod_auth_ldap [p 6] 2.6. Le moteur de base de données mySQL [p 6] 2.7. PHP [p 6] 3. Installation [p 7] 3.1. Pré-requis [p 7] 3.2. mySQL [p 8] 3.3. Apache 2.0 [p 8] 3.4. mod_auth_ldap [p 9] 3.5. CERT DB for LDAPS:// [p 9] 3.6. PHP [p 9] 4. Configurer et installer les services WebDAV [p 10] 4.1. Modifications au fichier /usr/local/apache/conf/httpd.conf [p 10] 4.2. Créer un répertoire pour DAVLockDB [p 10] 4.3. Donner l’accès à DAV [p 11] 4.4. Créer un répertoire nommé DAVtest [p 11] 4.5. Redémarrer Apache [p 12] 4.6. Test de conformité au protocole du serveur WebDAV [p 12] 5. Administration du serveur WebDAV [p 13] 5.1. Limiter les accès aux partages de DAV [p 13] 5.2. Limiter l’accès en écriture à des partages DAV [p 14] 6. Mettre en œuvre et utiliser SSL pour protéger le trafic HTTP [p 15] 6.1. Introduction à SSL [p 15] 6.2. Certificats de test [p 18] 6.3. Certificats destinés à la production [p 18] 6.4. Génération d’un CSR [p 18] 6.5. Installation de la clé privée et du certificat du serveur [p 20] 6.6. Annulation de la phrase de passe pour la clef privée RSA [p 22] 6.7. Réglage des performances SSL [p 22] A. Outils d’évaluation de performances HTTP/HTTPS [p 24] B. Solutions matérielles basées sur le chiffrement SSL [p 24] C. Autorités de certification [p 24] Glossaire de termes PKI [p 24] 1. Introduction L’objectif de ce document est de configurer un serveur d’applications Apache avec mySQL, PHP et WebDAV, qui utilise LDAP pour l’authentification. La documentation fournira aussi des détails sur le chiffrement des transactions LDAP. N.B. : Si vous rencontrez des problèmes en installant Apache ou un quelconque de ses modules n’hésitez pas à contacter l’auteur en anglais à <saqib CHEZ seagate POINT com> N’hésitez pas à faire parvenir tout commentaire relatif à la version française de ce docu- ment à <commentaires CHEZ traduc POINT org> en précisant le titre et la version du document. 3 1.1. À propos de ce document J’ai commencé à écrire ce document en 2001. Un grand nombre de mises à jour et de rajouts ont été faits depuis. Je remercie tous ceux qui m’ont soumis des mises à jour et des corrections. Le code source XML DocBook de la plus récente version française de ce document à l’adresse : ftp://ftp.traduc.org/pub/traduc.org/doc-vf/HOWTO/telecharge- ment/sgml/Apache-WebDAV-LDAP-HOWTO.xml. Vous trouverez la plus récente version française de ce document à l’adresse : http://www.traduc.org/docs/howto/lecture/Apache-WebDAV-LDAP-HOWTO.html. La code source au format XML de la version originale ce document est disponible à http://www.xml-dev.com/xml/Apache-WebDAV-LDAP-HOWTO.xml. La dernière version originale de ce document est disponible à http://www.xml-dev.com:8080/tldp/http://cvsview.tldp.org/index.cgi/*checkout*/LDP/howto/docbook/Apache-WebDAV-LDAP-HOWTO.xml. 1.2. Contributions au document Si vous désirez contribuer à la version originale de ce guide pratique, vous pouvez télécharger le code source XML de http://www.xml-dev.com/xml/Apache-WebDAV-LDAP-HOWTO.xml, et envoyer le fichier source modifié à <saqib CHEZ seagate POINT com> AVEC VOTRE NOM DANS LA LISTE D’AUTEURS ET DANS L’HISTORIQUE DES VERSIONS :) Cela sera plus facile pour moi de contacter la personne en cas de mises à jour ou de corrections. Je vous remercie. 1.3. Qu’est-ce qu’Apache ? Le serveur HTTP Apache est un serveur HTTP open-source pour systèmes d’exploitation modernes comme UNIX et Windows NT. Il fournit des services HTTP conformes aux standards HTTP actuels. Le serveur Web Apache peut être téléchargé librement de http://httpd.apache.org/ 1.4. Qu’est-ce que WebDAV ? WebDAV signifie Web enabled Distributed Authoring and Versioning, c’est-à-dire gestion de publica- tion et de configuration sur Internet. Il fournit un environnement partagé aux utilisateurs pour éditer/gérer leurs fichiers sur les serveurs Web. Techniquement, DAV est une extension du protocole http. Voici une brève description des extensions fournies par DAV : Protection contre l’écrasement : mécanisme de verrouillage et de déverrouillage pour éviter les problèmes de synchronisation de mises à jour. Le protocole DAV supporte les accès exclusifs et parta- gés. Propriétés : méta-données (titre, sujet, créateur, et cætera) Gestion des attributs de fichiers : copier, renommer, déplacer et supprimer des fichiers 4 Contrôle d’accès : limitation d’accès à des ressources diverses. Généralement, DAV considère qu’un contrôle d’accès est déjà en place, et ne fournit pas de mécanisme d’authentification robuste. Gestion des versions : contrôle de versions des documents. Le contrôle des versions n’est pas encore mis en œuvre. 1.5. Qu’est-ce que PHP ? PHP (acronyme récursif pour Processeur Hypertexte PHP) : c’est un langage de scripts open source à usage général qui est particulièrement adapté au développement Web et qui peut être associé à du HTML. On peut se procurer PHP de http://www.php.net 1.6. Qu’est-ce que mySQL ? MySQL, la base de données SQL open source la plus populaire, est développée, distribuée, et mainte- nue par MySQL AB On peut télécharger le moteur de base de données de MySQL de http://www.mysql-fr.com/ 1.7. Que nous faut-il ? Les outils nécessaires sont : i) un compilateur C, c-à-d GCC ii) un serveur Web Apache 2 iii) le module LDAP pour Apache iv) les fichiers de la bibliothèque iPlanet LDAP lib v) le moteur SSL vi) PHP vii) Le moteur de base de données mySQL N.B. : tous ces paquets sont libres, téléchargeables sur Internet. 1.8. Considérations Nous considérons que vous avez déjà installé les éléments suivants dans votre système. i) gzip or gunzip — disponibles à http://www.gnu.org/home.fr.html 5 ii) gcc et GNU make — disponibles à http://www.gnu.org/home.fr.html 2. Pré-requis Il est nécessaire de télécharger et de compiler différent paquets. Ce document expliquera le processus de compilation, mais vous êtes sensés savoir installer à partir du code source. 2.1. Éléments essentiels Il vous faudra une machine sous Solaris ou Linux et un compilateur GCC. Vous aurez aussi besoin de GNU gzip et de GNU tar. 2.2. Apache 2.0.46 Apache est le serveur HTTP, et on l’utilisera pour faire tourner le serveur Web applicatif. Téléchargez les sources d’Apache 2.0.46 depuis http://www.apache.org/dist/httpd/. 2.3. OpenSSL Il vous faudra télécharger OpenSSL de http://www.openssl.org/source/. Téléchargez la dernière version. L’installation d’OpenSSL sera utilisée pour compiler mod_ssl avec Apache à l’aide des bibliothèques SSL, et pour gérer les certificats SSL sur le serveur Web. Téléchargez les sources d’OpenSSL compressées par gzip dans /tmp/downloads 2.4. La bibliothèque iPlanet LDAP Téléchargez le SDK de iPlanet LDAP de http://wwws.sun.com/software/down- load/products/3ec28dbd.html. Nous utiliserons le SDK d’iPlanet LDAP, parce qu’il comprend les bibliothèques pour ldaps:// (LDAP over SSL) : 2.5. mod_auth_ldap Nous utiliserons mod_auth_ldap pour compiler le support LDAP avec Apache. Téléchargez mod_auth_ldap de http://www.muquit.com/muquit/soft- ware/mod_auth_ldap/mod_auth_ldap_apache2.html 2.6. Le moteur de base de données mySQL Téléchargez les exécutables mySQL pour votre plate-forme de http://www-fr.mysql.com/down- loads/index.html 2.7. PHP Téléchargez les sources de PHP de http://www.php.net/downloads.php 6 3. Installation Nous nous occuperons d’abord des quelques pré-requis, puis nous procéderons à l’installation princi- pale. 3.1. Pré-requis Pour installer le serveur d’application, nous avons besoin des bibliothèques SSL et LDAP. Le moteur SSL est lui aussi nécessaire pour gérer les certificats SSL dans Apache 2.x 3.1.1. Le SDK iPlanet LDAP Devenez root à l’aide de la commande su : $ su - Créez le répertoire /usr/local/iplanet-ldap-sdk.5. Copiez le répertoire ldapcsdk5.08-Linux2.2_x86_glibc_PTH_OPT.OBJ.tar.gz de /tmp/downloads vers /usr/local/iplanet-ldap-sdk.5. # mkdir /usr/local/iplanet-ldap-sdk.5 # cp /tmp/downloads/ldapcsdk5.08-Linux2.2_x86_glibc_PTH_OPT.OBJ.tar /usr/local/iplanet-ldap-sdk.5 # cd /usr/local/iplanet-ldap-sdk.5 # tar -xvf ldapcsdk5.08-Linux2.2_x86_glibc_PTH_OPT.OBJ.tar À présent, tous les fichiers de la bibliothèque iPlanet LDAP devraient se trouver dans le bon réper- toire. 3.1.2. Le moteur OpenSSL Ensuite, il nous faut installer le moteur OpenSSL OpenSSL est uploads/Litterature/ apache-webdav-ldap-howto.pdf

  • 23
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager