Installation d OwnCloud 8.0 sous Debian Avec connexion des utilisateurs active directory et mise en place de HTTPS FOURNIER VINCENT 29/04/2015 1.2
Ce tutoriel est réalisé sous debian 7.7 avec une synchronisation pour un serveur Windows server 2012 Présentation d OwnCloud OwnCloud est une application OpenSource de stockage en ligne et de gestion de fichiers, on l apparente généralement au très connu Dropbox car owncloud permet de stocker et de synchroniser des fichiers entre un ou plusieurs postes/serveurs et le serveur OwnCloud, remplissant ainsi le rôle de serveur de sauvegarde pour mettre en sécurité les fichiers et de serveur synchronisation Préparation du serveur web Avant d installer l application owncloud, le serveur web doit être préparé. Pour se faire, nous allons installer le serveur web Apache ainsi que PHP et différentes librairies dont OwnCloud a besoin, nous allons saisir les commandes suivantes : apt-get update apt-get install apache2 php5 php5-common php5-gd apt-get install php5-sqlite curl libcurl3 libcurl3-dev php5- curl MySQL s installe automatiquement avec owncloud lors de l installation via apt-get. Maintenant, continuons avec l installation d owncloud et la fin de la configuration de notre serveur. Voici les commandes que l on saisit saisir : Nano /etc/apt/sources.list.d/owncloud.list deb http://download.opensuse.org/repositories/isv:/owncloud:/commu nity/debian_7.0/ / Puis : apt-get update apt-get install owncloud Ici, nous venons d insérer une nouvelle ligne vers le dépôt contenant OwnCloud dans notre fichier sources.list puis nous avons mis à jour nos paquets et installé OwnCloud.
Lors de l installation d OwnCloud, le service de base de données MySQL s installe également, il va alors falloir indiquer deux fois un mot de passe pour l utilisateur root de MySQL : Nous allons ensuite définir le groupe www-data contenant l utilisateur du même nom utilisé par Apache en tant que groupe propriétaire sur les répertoires utiles au fonctionnement d owncloud, nous saisirons pour cela les commandes suivantes : cd /var/www/ chown www-data:www-data -R owncloud/ Ensuite, nous allons passer à la modification des permissions sur ces mêmes répertoires, l option -R permet d avoir une récursivité, c est-à-dire que les changements de droits vont s appliquer à tous les sous-répertoires également : chmod 770 -R owncloud/ Pour qu OwnCloud fonctionne correctement dans Apache, il faut activer les modules rewrite et headers d Apache. Rewrite permet la réécriture d URL, et, headers permet de gérer les en-têtes des requêtes et réponses HTTP : a2enmod rewrite a2enmod headers Afin que le fichier.htaccess soit pris en compte, la directive AllowOverride de votre serveur web doit être définie sur «All» et non sur «None» sinon les fichiers.htaccess sont ignorés. Modifiez le fichier «default» situé dans «/etc/apache2/sites-enabled» afin d obtenir ceci : <Directory> Options -Indexes FollowSymLinks MultiViews AllowOverride ALL Order allow,deny allow from all </Directory Puis, pour finir, nous pourrons redémarrer le serveur Apache : Service apache2 restart L accès depuis le navigateur sur les données du dossier data devrait être interdit (pour vérifier, aller sur http://ip_du_serveur/owncloud/data, à la fin de l installation).
Pour finir, nous accédons à owncloud depuis l interface web pour finir l installation et créer l utilisateur «admin». Puis, allez sur le navigateur web et saisissez l URL «http://ip_du_serveur/owncloud», voici ce que vous pourrez voir : L installation de Owncloud est maintenant terminée. Nous allons maintenant importer des utilisateurs dans owncloud via LDAP L application owncloud intègre un module LDAP qui permet d aller chercher des données dans un annuaire LDAP afin d y importer des données, notamment des comptes utilisateurs.
Dans notre cas, nous allons utiliser un annuaire Active Directory (Microsoft) afin de s y connecter, de lire les données et de les importer au sein d owncloud. La communication entre les deux parties s effectue par l intermédiaire du protocole LDAP, qui utilise le port 389. Pour cela, nous allons créer une nouvelle unité d organisation (OU) qui sera appelée «connecteurldap». Celle-ci sera consacrée aux différents «connecteurs LDAP» Faites clic droit sur la racine de votre domaine puis «Nouveau» et «Unité d Organisation», appelez-la «connecteurldap». Dans cette OU, nous allons créer l utilisateur qui permettra à l application owncloud de se connecter à l annuaire. Faites donc clic droit sur l OU «connecteurldap» puis créer un nouvel utilisateur que vous nommez «owncloud». De plus, dans cet même OU créez le groupe «owncloudgroupe» qui aura pour membres tous les utilisateurs qui seront autorisé à utiliser la plateforme owncloud. Vous devez obtenir ceci : Afin de pouvoir utiliser LDAP avec PHP, vous devez installer le paquet «php-ldap» grâce à la commande suivante : apt-get install php5-ldap Au niveau de la configuration d Apache, le module LDAP doit être activé pour permettre l utilisation des fonctions LDAP en PHP. On utilise donc la commande «a2enmod» qui permet d activer un module, puis on redémarre le serveur Apache pour activer la nouvelle configuration. a2enmod ldap service apache2 restart
L application LDAP doit être activée au sein d owncloud puisque par défaut ce n est pas le cas. Pour cela, connecter vous en admin admin, puis en haut à gauche allez dans application, puis désactivé car celui-ci est désactivé par default. Une fois activée aller en haut à droite dans admin administration
De cette administration on peut gérer le serveur owncloud. Pour relier les utilisateurs aller dans la configuration LDAP : Une fois les informations complétées avec vos données aller dans filtre utilisateur
Puis filtre de login : Et filtre de groupe :
Puis allez dans les options avancées et cocher les cases : Et dans l onglet paramètre du répertoire indiquer vos informations :
Sauvegarder le tout & tester la connexion : Si votre configuration est correcte ce message apparaitra : Ensuite nous allons vérifier que nos utilisateurs de notre active directory ce sont bien synchroniser au serveur owncloud : Allez dans utilisateur On peut voir que nos utilisateurs sont bien synchronisés. Notre Owncloud est maintenant fonctionnel et relié avec notre domaine GSB.local avec l active directory.
Faire en sorte que OwnCloud soit en HTTPS Passer notre Owncloud en HTTPS permettra que l échange entre le serveur et les clients soit crypté Configuration du serveur Apache Étape 1 : Créer un hôte virtuel dans Apache Il faut créer un nouveau fichier owncloud.https (je crois que le nom importe peu) dans le répertoire/etc/apache2/sites-available. On peut utiliser la commande suivante : nano /etc/apache2/sites-available/owncloud.https On le remplit avec le code suivant : NameVirtualHost *:443 # Hôte virtuel qui écoute sur le port HTTPS 443 <VirtualHost *:443> DocumentRoot /var/www/owncloud ServerName domaine.tld # Activation du mode SSL SSLEngine On SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire # On indique ou est le certificat SSLCertificateFile /etc/ssl/certs/owncloud.crt SSLCertificateKeyFile /etc/ssl/private/owncloud.key </VirtualHost> A noter : les variables en rouge sont à compléter avec vos propres paramètres : /var/www/owncloud à remplacer par le dossier du serveur où se trouve votre instance OwnCloud domaine.tld à remplacer par le nom de domaine qui pointera vers votre instance OwnCloud Étape 2 : Activation du module SSL d'apache Il faut activer le module SSL du serveur Apache avec la commande : a2enmod ssl
Ensuite, on ajoute l'instance OwnCloud aux sites actifs d'apache avec la commande : a2ensite owncloud.https Étape 3 : Création du certificat SSL auto-signé Cette étape nécessite plusieurs commandes. D'abord, se déplace dans /etc/apache2 et on crée un dossier (CertOwncloud) pour stocker les clés de cryptage : cd /etc/apache2/ && mkdir CertOwncloud && cd CertOwncloud Ensuite, on génère dans ce dossier une clé de cryptage en 1024 bits. C'est la clé privée : openssl genrsa -out owncloud.key 1024 On crée le fichier.csr à partir du.key. Il contient la clé publique : openssl req -new -key owncloud.key -out owncloud.csr Il faut alors remplir correctement les champs, le CommonName est à remplir avec le nom de domaine de votre OwnCloud. On crée ensuite le certificat en.crt : openssl x509 -req -days 365 -in owncloud.csr -signkey owncloud.key -out owncloud.crt On copie les.crt et.key dans les dossiers du serveur qui vont bien : cp owncloud.crt /etc/ssl/certs cp owncloud.key /etc/ssl/private C'est bon, on vérifie la configuration du serveur Apache, puis on le redémarre : apachectl configtest service apache2 restart Normalement notre OwnCloud est en HTTPS avec un certificat auto-signé, c est-à-dire non validé mais crypte dorénavant les données échangés. Si l on veut forcer le passage au HTTPS, on peut cocher l'option "Forcer HTTPS" dans la partie Administration de notre OwnCloud. Notre installation est maintenant terminée pour Owncloud.