[Debian 8] Installer un cloud personnel : Pydio 6 (version Apache2)

Pydio est un logiciel libre pour disposer de son cloud personnel, tout comme le ferait Cozy Cloud ou encore un ownCloud.

Pydio est le nouveau nom de AjaxExplorer – ce serveur vous permet d’avoir un serveur de stockage de fichiers en tout genre, avec quelques outils complémentaires (visionneuse de photos, lecteur audio/vidéo, éditeur de textes…).
J’ai fais le choix de Pydio pour plusieurs raisons :

  • Microsoft régresse sur son système OneDrive, notamment avec le stockage qui descend de 15 Go à 5 Go (!)
  • Je souhaite disposer d’un cloud réellement personnel et privé pour certains de mes fichiers
  • Envie de tester cette nouvelle version de Pydio qui semble prometteuse… 🙂

Avant d’installer Pydio en tant que tel, vous devez disposer d’un serveur web, qu’il soit avec Apache2 ou nginx. Vous pouvez suivre ces articles pour installer votre serveur web :

[su_note note_color= »#c7e9f2″]Précision de Delage (Merci ! ;)) Il faut aussi installer les paquets « mcrypt » pour PHP – Ce sont les utilitaires vous permettant de gérer les algorithmes de chiffrement pour les scripts web L’installation se fait via cette commande : apt install mcrypt php7.0-mcrypt[/su_note]

Il y a deux possibilités pour installer Pydio : installation via les dépôts de paquets officiels, ou alors via une archive à récupérer sur SourceForge. Sachez qu’en passant par les dépôts officiels, vous devrez créer un compte utilisateur sur le site Pydio. Je vais traiter dans cette documentation l’installation via l’archive, non pas par les dépôts.

L’archive se récupère à cette adresse : https://sourceforge.net/projects/ajaxplorer/files/pydio/stable-channel/6.4.1/ (version 6.4.1 au 08/06/2016)

cd /tmp && wget https://sourceforge.net/projects/ajaxplorer/files/pydio/stable-channel/6.4.1/pydio-core-6.4.1.tar.gz && tar xzvf pydio-core-6.4.1.tar.gz

Il faut extraire l’archive via « tar », et copier/coller le dossier dans le serveur web :

mkdir -p /var/www/pydio && cp -R pydio-core-6.4.1/* /var/www/pydio

Ne pas oublier d’y attribuer les droits pour que le dossier puisse être accessible et utilisable non seulement par le serveur mais aussi par vous et vos clients :

chmod -R 0755 /var/www/pydio && chown -R www-data:www-data /var/www/pydio

Le dossier et ses droits sont prêts, il faut configurer votre serveur web.
Pour cet article, j’utilise Apache2.4, dont voici le fichier « /etc/apache2/sites-available/pydio.conf » :

<VirtualHost *:80>
        ServerAdmin contact@computerz.solutions
        DocumentRoot /var/www/pydio

        <Directory />
           AllowOverride All
        </Directory>

        <Directory data/>
           AllowOverride None
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/error-pydio.log
        CustomLog ${APACHE_LOG_DIR}/access-pydio.log combined
</VirtualHost>

Comme vous pouvez le constater, il s’agit d’un fichier de configuration relativement simple pour Apache.
Vous devez aussi activer des modules complémentaires sur Apache2 pour que le système puisse être fonctionnel :

a2enmod rewrite && a2ensite pydio.conf

N’oubliez pas de redémarrer votre serveur web lorsque vous avez créé votre fichier de configuration.

Avant dernière étape, la configuration de PHP. Il faut modifier les fichiers « php.ini » pour que Pydio puisse être pleinement utilisable et ce, de façon « propre ».

nano /etc/php/7.0/apache2/php.ini
Remplacer "output_buffering = 4096" par "output_buffering = Off"
date.timezone : Europe/Paris

Avant le lancement de la page web, il faut configurer les « locales » de votre serveur sur Pydio – si cette configuration n’est pas effectuée, il se peut que vous ayez des problèmes dans les traductions et les saisies dans l’interface web en général. Pour se faire, effectuer auparavant cette commande dans votre terminal :

echo $LANG

Selon le retour, vous saurez qu’elle est la langue utilisée dans votre serveur Linux – dans mon cas, il s’agit de « en_GB?UTF-8 ».
Il faut ajouter la valeur récupérée de cette variable dans un fichier de configuration PHP :

nano /var/www/pydio/conf/bootstrap_conf.php
define("AJXP_LOCALE", "en_GB.UTF-8");

Une dernière étape de préparation est à effectuer – le serveur SQL.
Pour pouvoir fonctionner, vous devez créer une base de données. Dans cet article, j’ai utilisé MariaDB.

Connectez-vous en tant que root sur votre serveur SQL (mysql -u root -p) et saisissez votre mot de passe.
Il faut créer une base de données et un utilisateur :

CREATE DATABASE pydio;
GRANT ALL PRIVILEGES ON pydio.* TO 'pydio'@'localhost' IDENTIFIED BY 'mot_de_passe_top_secure';
FLUSH PRIVILEGES;

Vous pouvez quitter le serveur SQL une fois que la base de donnée est créée.


Tout est désormais prêt à l’emploi ! Ouvrez votre navigateur et saisissez l’adresse IP de votre serveur web / futur cloud personnel – la page ci-dessous devrait alors s’afficher :

Les droits de mon dossier « /var/www/pydio/data » sont trop élevés, notamment à cause du « chmod -R 0755 » effectué précédemment. Ce n’est pas une erreur critique, le système fonctionnera quand même, il faut juste penser à régler ce problème de droits !

Dès le départ, vous pouvez choisir la langue d’installation du serveur Pydio. J’ai préféré l’utilisation du français pour me faire au système ; Lorsque je l’aurai bien en main, je re-tenterai l’expérience cette fois-ci en anglais. Une fois votre choix fait, cliquez sur le bouton « Démarrer l’assistant » pour initier l’installation.

La première étape consiste dans la création d’un utilisateur (qui aura les droits Administrateurs) pour votre Pydio. Vous devez y saisir le nom de connexion, le nom qui sera affiché « publiquement », son mot de passe (bien entendu « fort ») – deux autres options sont disponibles :

  • Le titre de l’application
  • Le message d’accueil lors du lancement du serveur

La seule limite, c’est votre imagination… 🙂

Par la suite, vous devrez connecter Pydio à votre serveur SQL et donc, sa base de données.

Le bouton « Test connexion » est à utiliser avant de passer à l’étape suivante de l’installation – Vous saurez si la configuration est effectuée correctement et si l’application / serveur web peut communiquer avec sa base données (donc le serveur SQL).
Si tout est correct et que la connexion s’effectue, vous pouvez cliquer sur le bouton avec les deux chevrons  » >> ».

Enfin, une dernière étape sera à franchir avant le lancement de l’installation :

Les « options avancées » concerne l’encodage, l’envoi d’e-mails de notification et la langue utilisée dans votre Pydio. Les options sélectionnées dans l’image ci-dessus ont été mises par défaut.

Le fichier « .htaccess » n’a pas été créé par l’application elle-même – Ce n’est pas un gros problème en soi, il suffit de faire un copié/collé de ce qui est saisi dans le panneau et de créer le fichier à la racine du dossier Pydio (« /var/www/pydio/ » pour cet exemple).
Lorsque la copie est terminée et le fichier créé, il faut rafraichir la page web et… :

Une fois les identifiants saisis dans le formulaire à gauche, vous arriverez sur l’interface principale que voici :

Votre nouveau cloud personnel est prêt !! Prochaines étapes, découvrir l’interface, importer vos documents, mettre en place la synchronisation entre votre PC et le serveur… et encore bien d’autres choses à explorer 🙂

Julien H

Passionné depuis toujours par l'informatique, je transforme ma passion en expertise. J'utilise quotidiennement les outils et systèmes Microsoft. Je ne délaisse pas mon côté ouvert, notamment via l'utilisation des OS Debian et Archlinux. L'infosec m'ouvre les yeux sur les enjeux actuels et futurs de l'IT.

4 commentaires

  1. Nano is evil ! But Debian is good…
    Ça fait plaisir de voir que tu « touches » encore à Linux 🙂

    1. Bonjour Olivier ! Nano is… Docker on Windows !
      Eh oui, j’ai quelques VM qui tournent avec Debian ou ArchLinux ! 🙂 Tous mes serveurs « persos » sont sous Linux, peut-être est-ce « à cause » d’un bon formateur qui m’a initié et fait plonger dedans en 2012/2013 😀
      Je regarde un peu du côté de CentOs en ce moment, pour voir ce qui se fait… mais sans grande conviction pour l’instant !

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Fermer
Fermer