How to Install and Secure Egroupware
Total Page:16
File Type:pdf, Size:1020Kb
Comment installer et sécuriser eGroupWare Version 0.4 Ce document est publié sous: Creative Commons Attribution-ShareAlike License Toute extension ou réponse à ce document sont les bienvenues. Veuillez contacter son auteur. Auteur: Reiner Jung Droits d’auteur: Reiner Jung Contact: [email protected] Traduction française: Antoine Theytaz Contact: [email protected] Projet: eGroupWare Date de publication 13-Jan-05 Reiner Jung Install and Secure eGroupWare Page 2 of 68 Index Index 3 1 Checklist d’installation pour eGroupWare 6 2 Comment faire une installation rapide 7 3 Migration de votre installation de phpGroupWare vers eGroupWare 1 3 4 Mise à jour d’eGroupWare 1 4 4 .1Mise à jour de l’installation eGroupWare 1 4 4 .2Adaptation de votre configuration vers une nouvelle version de header.inc.php 1 4 5 Instructions d’installation 1 5 5 .1Téléchargement des paquetages 1 5 5 .2Pourquoi les paquetages signés GPG et les md5sum sont-ils nécessaires ? 1 5 5 .2.1Installation de la clé GPG pour tar.gz.gpg, tar.bz2.gpg et zip.gpg 1 5 5 .2.2Vérification de la clé GPG 1 5 5 .2.3Installez la clé GPG pour les paquetages RPM 1 7 5 .3Comment faire pour valider un paquetage? 1 7 5 .4Installation des paquetages sur votre serveur 1 9 5 .4.1Recomposition de paquetages RPM avec d’autres chemins 1 9 5 .4.2Installation d’un paquetage non signé sur votre serveur 1 9 5 .4.3Installation d’un paquetage signé GPG sur votre serveur 1 9 5 .4.4Installation depuis CVS 2 0 6 Sécurité de base du serveur 2 1 6 .1La plateforme du serveur 2 1 6 .1.1Vérification de votre serveur pour les services et ports ouverts 2 1 6 .1.1.1Ports qu’eGroupWare a besoin pour fonctionner 2 1 6 .1.1.2Le scanneur de ports 2 2 6 .1.1.3Affichage du résultat d’un scanneur de ports 2 2 6 .1.1.4Désactivation des services non nécessaires 2 2 6 .1.2Désinstallation des logiciels non nécessaires de votre serveur 2 3 6 .1.3Vérifications locales pour les signes d’un rootkit 2 3 6 .1.3.1Extrait de l’affichage du résultat d’un chkrootkit 2 4 6 .1.3.2Installation du RPM chkrootkit 2 4 6 .1.3.3Installation du chkrootkit depuis le fichier tar.gz 2 5 6 .1.4Administration sécurisée de votre serveur 2 5 6 .1.4.1Connexion à votre serveur à travers une session sécurisée 2 6 6 .1.4.2Travailler avec des paires de clés SSH 2 6 6 .1.4.2.1Création d’une paire de clés sécurisée 2 7 6 .1.4.2.2Copie de votre clé publique sur le serveur 2 7 6 .1.4.2.3L’outil ssh-add 2 7 6 .1.4.2.4Sécurisation de votre client SSH 2 8 6 .1.4.2.5Sécurisation de votre SSHD 2 8 6 .1.5Installation de logiciels pour surveiller les journaux de votre serveur 2 8 Reiner Jung Install and Secure eGroupWare Page 3 of 68 6 .1.6Environnement de détection d’intrusion 2 9 6 .1.6.1Installation de AIDE 2 9 6 .1.6.2Le fichier de configuration AIDE aide.conf 2 9 6 .1.6.3Création d’un fichier cronjob pour lancer AIDE automatiquement 3 1 6 .1.6.4Exemple de rapport AIDE 3 3 6 .1.6.5Création d’une nouvelle base de données après modifications 3 4 6 .1.7Sécurité des services (daemons) 3 4 6 .1.8Pare-feu 3 4 6 .2Sécurité des Application Internet 3 5 6 .2.1Installation de ModSecurity 3 5 6 .2.2Configuration de base 3 5 6 .2.3Test de ModSecurity 3 7 6 .2.4Exemple de journal de ModSecurity 3 7 6 .3Optimisation et sécurisation du serveur Apache web 3 8 6 .3.1Modules recommandés 3 8 6 .3.2Autres options de configuration Apache 3 9 6 .4Turck MMCache 3 9 6 .4.1Prérequis 3 9 6 .4.1.1Préliminaires pour RedHat Enterprise Linux 3 3 9 6 .4.2Compatibilité 4 1 6 .4.3Installation rapide 4 1 6 .4.4Interface Web 4 2 6 .5Sécurisation de votre installation PHP 4 3 6 .6Création d’un certificat de serveur Web 4 4 6 .6.1Joindre “CA Cert “ 4 5 6 .6.2Création de votre requête de signature de certificat 4 5 6 .6.2.1Modification du fichier openssl.cnf 4 5 6 .6.2.2Création de la clé serveur et de la requête de signature 4 6 6 .6.2.3Envoi de la requête de signature à votre autorité de certification 4 7 6 .6.2.4Installation du certificat serveur. 4 7 6 .7Le service web 4 8 6 .8Le service SQL 4 8 7 Configuration d’eGroupWare 5 0 7 .1Création de votre base de données 5 0 7 .2Comment démarrer la configuration? 5 1 7 .3Vérification de l’installation eGroupWare 5 1 7 .4Création de votre header.inc.php 5 2 7 .5Administration Installation / Configuration 5 3 7 .5.1Etape 1 – Gestion simplifiée des applications 5 3 7 .5.2Etape 2 – Configuration 5 4 7 .5.2.1Création du répertoire d’accueil des fichiers 5 4 7 .5.2.2Edition de la configuration actuelle 5 5 7 .5.3Etape 3 – Compte Administrateur 5 7 Reiner Jung Install and Secure eGroupWare Page 4 of 68 7 .5.4Etape 4 – Gestion linguistique 5 8 7 .5.5Etape 5 – Gestion avancée des applications 5 8 8 Connectez-vous à eGroupWare 5 8 9 Dépannage 5 9 9 .1Oubli du mot de passe de l’administrateur 5 9 9 .2L’Administrateur ou un autre utilisateur est bloqué 5 9 9 .3Erreur base de données : lock(Array, write) failed 5 9 9 .4Vérification des permissions de fichiers 5 9 9 .5Ne peut pas continuer dans Vérification de l’installation page (1) 6 0 9 .6Ne peut pas continuer dans Vérification de l’installation page (2) 6 0 9 .7[WINDOWS] fudforum/3814******9): Permission denied 6 0 9 .8Sitemgr: mkdir(./sitemgr-link): Permission denied 6 1 1 0Références 6 2 1 1A faire et Journal des changements 6 5 1 1.1A faire pour ce document 6 5 1 1.2Journal des changements pour ce document 6 5 1 2Contributeurs à ce document 6 7 1 3Termes et conditions 6 8 Reiner Jung Install and Secure eGroupWare Page 5 of 68 1 Checklist d’installation pour eGroupWare Ceci vous donnera une vue d’ensemble rapide de ce dont vous avez besoin pour eGroupWare. Vous n’avez pas besoin d’un compilateur pour installer eGroupWare car celui-ci n’est composé que de PHP, d’HTML et de fichiers d’images. Ce dont vous avez besoin pour Logiciel exemple Vérifiez vos prérequis eGroupWare Vous avez besoin d’un système Linux, Unix, *BSD d’exploitation comme suit: MAC WIN NT / 2000 / XP eGroupWare requiert un serveur web. IIS Ici quelques exemples: Roxen Apache 1.3 ou 2.0 eGroupWare requiert une base de MYSQL données: MS-SQL PostgreSQL Si vous désirez envoyer des emails avec Postfix eGroupWare, alors vous avez besoin d’un Sendmail serveur SMTP comme: Exim Si vous voulez utiliser eGroupWare comme Cyrus client de messagerie POP ou IMAP vous Courier avez besoin du service correspondant Dovecot comme: eGroupWare requiert PHP: PHP > 4.1 requis. PHP > 4.2 recommandé. Reiner Jung Install and Secure eGroupWare Page 6 of 68 2 Comment faire une installation rapide Ceci va vous donner une courte introduction sur les étapes de configuration d’eGroupWare. Les installations eGroupWare peuvent être faites en moins de 10 minutes. Si vous voulez avoir une description plus détaillée sur l’installation et la sécurité, lisez les pages « Sécurité de base du serveur » . 1) Téléchargez les paquetages eGroupWare depuis la zone de téléchargement de Sourceforge. En ce moment les paquetages eGroupWare sont fournis au format zip, tar.gz, bz2 et rpm. 2) [LINUX] Installez les paquetages dans le répertoire correspondant au répertoire racine de votre service web ou un autre répertoire que vous aimeriez utiliser. Le paquetage RPM sera automatiquement installé dans le répertoire /var/www/html [root@server tmp]# rpm –ivh eGroupWare-x.x.xx.xxx-x.rpm Pour installer n’importe quel autre type de paquetage eGroupWare, allez dans le répertoire racine de votre service web et extrayez le paquetage. [root@server tmp]# cd /var/www [root@server www]#tar xzvf eGroupWare-x.x.xx.xxx-x.tar.gz [WINDOWS] En utilisant un programme comme Winzip, dézippez le fichier dans n’importe quel dossier se trouvant dans votre serveur web. En d’autres termes, le répertoire que vous choisissez doit être accessible depuis Internet. Soyez certain de conserver la structure des dossiers quand vous décompressez le fichier zip et votre installation ressemblera à quelque chose comme: D:\websites\yourwebsite\eGroupware\(tous les fichiers du zip eGroupWare). Reiner Jung Install and Secure eGroupWare Page 7 of 68 3) [LINUX] Modifiez les permissions de vos fichiers de votre installation eGroupWare. - Votre compte administrateur doit avoir les permissions de lecture et d’écriture - Le compte sous lequel le service web fonctionne doit avoir un accès en lecture seule. Votre service web n’a besoin de droit en écriture que pour le répertoire fudforum [WINDOWS] maintenant vous devez spécifier les “permissions” correctes pour les fichiers eGroupWare. Reiner Jung Install and Secure eGroupWare Page 8 of 68 Le compte administrateur a au moins besoin des permissions en lecture et écriture (Read and Write). Le compte web a besoin de la permission en lecture (Read). Reiner Jung Install and Secure eGroupWare Page 9 of 68 Pour FUDFORUM seulement – le compte web a besoin de read et write 4) Vérifiez que votre service web ainsi que la base de données soient démarrés.