ownCloud ******** OwnCloud est un soft qui permet de mettre à disposition très rapidement un environnement cloud comprenant - stockage et partage de fichiers (getion de quotas possible) - carnet d'adresses - calendrier - gestionnaire de tâches - synchronisation avec les smartphones - synchronisation des préférences de Mozilla Firefox - édition de fichiers ODT (OpenDocument Text) en ligne - Galerie d'images, qui permet de visualiser ses photos et de les classer en albums. Il nécessite - un serveur web (apache ou ngix) - php - une base de donnée (sqlite, postgresql, mysql, ...) .. note:: si il y a moins de 10 utilisateurs une base sqlite est largement suffisante Installation ============ Nous allons procéder à une installation sous debian .. code-block:: bash apt-get update apt-get upgrade .. code-block:: bash apt-get install apache2 php5 php5-gd php5-sqlite php5-curl php5-json php5-common php5-intl php-pear php-apc php-xml-parser libapache2-mod-php5 curl libcurl3 libcurl3-dev sqlite Modification du fichier de configuration du site par défaut d'apache (/etc/apache2/sites-available/default) .. code-block:: bash AllowOverride All .. note:: il est possible de créer une configuration spécifique pour cet application (cf doc Apache) Afin de pouvoir transférer de gros fichier nous modifions le fichier /etc/php5/apache2/php.ini .. code-block:: bash upload_max_filesize = 2G post_max_size = 2G On active la réécriture d’Apache .. code-block:: bash a2enmod rewrite a2enmod headers et on redémarre le serveur apache .. code-block:: bash /etc/init.d/apache2 restart Nous allons maintenant télécharger ownclouf et l'installer sur le serveur apache par défaut .. code-block:: bash cd wget http://download.owncloud.org/community/owncloud-7.0.2.tar.bz2 tar xvf owncloud-7.0.2.tar.bz2 mv owncloud /var/www cd /var/www chown -R www-data:www-data owncloud On peut finir l'installation en ce connectant sur http://127.0.0.1/owncloud Afin d'optimiser owncloud qui fait par défaut à chaque chargement de page des tâches de fond, on peut configurer via crontab que ces tâches soient réalisées toutes les 5 minutes, par exemple, par le système lui même .. code-block:: bash crontab -e .. code-block:: bash */5 * * * * php -f /var/www/owncloud/cron.php Sécurisation de la connexion à owncloud ======================================= Nous créons un nnouvel virtualhost .. code-block:: bash vi /etc/apache2/sites-available/owncloud.https .. code-block:: bash NameVirtualHost *:443 # Hôte virtuel qui écoute sur le port HTTPS 443 DocumentRoot /var/www/ # 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 Nous allons maintenant activer le module SSL dans Apache2 pour que celui-ci puisse être utilisé dans nos échanges ownCloud .. code-block:: bash a2enmod ssl On doit ensuite ajouter notre nouveau site aux sites actifs d’Apache2 .. code-block:: bash a2ensite owncloud.https Création du certificat auto-signé: maintenant nous pouvons accéder à Owncloud via le HTTPS, seulement on peut encore passer aussi via le HTTP, nous allons donc le forcer à utiliser le HTTPS. Il faut aller modifier un fichier PHP dans Owncloud pour forcer l’accès en HTTPS. .. code-block:: bash vi /var/www/config/config.php .. code-block:: bash 'force ssl' => true Nous allons ensuite passer à la génération de nos clés, on crée un répertoire pour les clés : .. code-block:: bash cd /etc/apache2/ mkdir CertOwncloud cd CertOwncloud On génère notre clé sur 1024 bits : .. code-block:: bash openssl genrsa -out owncloud.key 1024 Création des ".key" et ".csr" : .. code-block:: bash openssl req -new -key owncloud.key -out owncloud.csr On rempliera ensuite les données du certificat correctement, il est important de noter que l’absence du CommonName pourra générer des erreurs plus tards. On crée ensuite le fichier de certificat : .. code-block:: bash openssl x509 -req -days 365 -in owncloud.csr -signkey owncloud.key -out owncloud.crt On copiera ensuite nos certificats là on tous les certificats sont stockés : .. code-block:: bash cp owncloud.crt /etc/ssl/certs cp owncloud.key /etc/ssl/private Procédez au redémarrage d’Apache2 après avoir vérifié sa configuration .. code-block:: bash apachectl configtest service apache2 restart On pourra ensuite vérifier dans notre navigateur que le HTTPS est bien utilisé en nous rendant sur l’interface web de notre ownCloud https://127.0.0.1/owncloud gestion de libre office dans owncloud ===================================== Il faut installer libreoffice .. code-block:: bash apt-get install libreoffice