pydio

 

Présentation

 

Pydio (Put Your Data In Orbit) est une solution open-source de partage de fichiers.  Il a été conçu par une startup française.

Ce logiciel permet d’accéder et de synchroniser ses données depuis n’importe où. Il permet aussi le travail en collaboration sur ses fichiers.

Vous pouvez donc grâce à Pydio héberger dans votre datacenter par exemple un serveur sur lequel les utilisateurs pourront déposer leurs fichiers et les partager avec des personnes extérieures.

Jusqu’à présent Pydio possédait une version Core en PHP mais depuis peu Pydio possède une nouvelle version basée sur le principe de cellules (Cell) entièrement récrite en GoLang (GO), un puissant langage serveur développé et utilisé par Google.

Les cellules sont donc des espaces pour le partage et la collaboration que les utilisateurs peuvent librement créer avec un chat dédié dans l’application.

On accède aux données directement à partir d’un navigateur web ou à l’aide de l’application mobile.

 

 

Pydio existe en version Home et Entreprise. La version Entreprise comporte un support de niveau 3 en cas de problème ainsi que plusieurs fonctionnalités avancées d’authentification, de sécurité et de haute disponibilité ainsi que des fonctionnalités de conformité pour entreprises.

 

 

 

Installation

 

L’installation de Pydio peut se faire de plusieurs manières. Nous allons voir ici 2 méthodes pour faire l’installation, à savoir l’installation Core et l’installation Cells.

 

 

Pydio Core

 

Pour cette première méthode nous allons donc utiliser un serveur Linux Debian 9. Vous pouvez récupérer les sources à cette adresse : https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/

Lorsque l’installation de linux est effectuée et que votre serveur est prêt, connectez-vous à celui-ci en SSH.

Nous allons tout d’abord ajouter les sources de pydio avec les commandes suivantes :

echo "deb https://download.pydio.com/pub/linux/debian/ stretch main" > /etc/apt/sources.list.d/pydio.list

wget -qO - https://download.pydio.com/pub/linux/debian/key/pubkey | apt-key add -

 

 

 

Ensuite nous allons activer le support https et mettre à jour le repository avec les nouvelles entrées.

apt-get install apt-transport-https 

apt-get update

 

 

 

Finalement nous allons pouvoir installer pydio avec les commandes suivantes :

apt-get install pydio 

apt-get install pydio-all 

apt-get install php-xml

 

 

 

Nous allons ensuite installer une base de donnée MySQL qui nous servira à stocker toutes les informations de Pydio.

Entrez la commande suivante pour installer MySQL :

apt-get install mysql-server php7.0-mysql

 

 

Lorsque l’installation est terminée, connectez-vous à la base de donnée avec la commande suivante :

mysql -u root –p

 

 

Nous allons ensuite créer la base de donnée qui sera utilisée par le programme :

CREATE DATABASE pydio;

 

 

Nous allons après cela créer un utilisateur qui aura les droits sur cette base de données :

CREATE USER "pydio"@"localhost" IDENTIFIED BY "password";

 

 

Finalement nous lui attribuons donc les droits sur la base de données :

GRANT ALL PRIVILEGES ON pydio.* TO "pydio"@"localhost";

 

 

Lorsque l’installation est terminée, lancer votre navigateur et aller à l’adresse de votre serveur soit avec le nom DNS ou l’adresse IP dans le sous-répertoire pydio :

http://[nom_DNS]/pydio

ou

http://[adresse_IP]/pydio

 

 

Vous aurez sur cette page tout une liste de point que le système va vérifier pour voir vous avez tout le nécessaire d’installer pour que l’applicatif puisse se lancer sans problèmes.

Il peut y avoir des messages de « warning » vous indiquant que certains paramètres doivent être configurées mais qui ne sont pas forcément bloquant pour le fonctionnement de l’application mais qui peuvent l’être dans le cas d’utilisation spécifiques de l’application.

Si vous avez des erreurs qui empêchent l’utilisation du programme, corrigez ces différents points et ensuite lorsque vous êtes prêt à passer à l’étape suivante cliquez sur le bouton CONTINUE TO PYDIO INSTALLATION.

 

 

Dans la fenêtre suivante vous devez tout d’abord sélectionner la langue que vous voulez utiliser.

 

Cliquez ensuite sur START WIZARD.

 

 

Dans l’étape numéro 1, vous devez entrer le titre que vous voulez donner à l’application ainsi que le message de bienvenue.

Cliquez ensuite sur le bouton NEXT.

 

 

Dans l’étape 2 vous devez entrer le nom d’utilisateur de l’administrateur ainsi que son mot de passe.

Après avoir renseigner le nom d’utilisateur de l’administrateur et configuré son mot de passe cliquez sur le bouton NEXT.

 

 

Dans l’étape 3, nous allons entrez les informations relatives à la base de données que l’on a créé précédemment.

 

Vous devez entrer plusieurs informations :

  • Database: Sélectionnez le type de base de donnée. Nous avons installé une base de donnée MySQL donc nous sélectionnons ce type de base.
  • Host : Entrez l’adresse du serveur sur lequel la base de données est installée. Dans notre exemple nous l’avons installée sur le même serveur donc nous entrons localhost.
  • User : Indiquer l’utilisateur qui aura les droits pour aller écrire dans la base de données. Dans notre exemple, nous avons créé précédemment l’utilisateur pydio.
  • Password: Entrez le mot de passe de l’utilisateur que vous avez configuré lors de la création de l’utilisateur.

 

 

Lorsque vous avez entré toutes les informations requises, cliquez sur le bouton TEST DB CONNECTION pour vérifier que la configuration est correcte et que l’accès à la base de données se fait correctement.

 

Vous arrivez à l’étape 4.

Vous avez plusieurs valeurs à régler comme par exemple l’encodage que vous devez configurer en fonction de vos paramètres régionaux configurés sur le serveur. Dans notre exemple nous allons donc configurer l’encodage en fr_FR.UTF-8.

Ensuite vous avez plusieurs paramètres que vous pouvez laisser telles quels ou bien modifier en fonction de vos besoins. Par exemple, on voit que l’URL a été automatiquement détectée.

Cliquez finalement sur le bouton INSTALL PYDIO.

 

 

Lorsque l’installation est terminée vous aurez un petit encadré vous indiquant que l’installation a été effectuée.

 

 

Vous serez alors automatiquement redirigé vers la page d’accueil de votre site.

 

 

 

Pydio Cells

 

Nous allons donc dans cette variante installer la version Pydio Cells. Cette version tout comme la précédente s’installe sur un serveur Linux. Nous allons dans cette exemple utiliser la version 9 de Debian.

Récupérer donc les sources de la distribution Linux et installer votre serveur.

Après avoir terminé l’installation connectez-vous à votre serveur.

 

Nous allons tout d’abord créer un utilisateur qui va nous servir à exécuter l’applicatif.

Utilisez la commande suivante pour créer un utilisateur nommé par exemple « pydio » :

useradd -m pydio

 

Ensuite tout comme pour la version Core, nous avons besoin d’une base de données pour stocker les informations de Pydio. Pour cela nous allons installer une base de données MySQL en local sur le serveur.

Lancer la commande suivante tout d’abord pour récupérer les sources de MySQL :

wget https://repo.mysql.com/mysql-apt-config_0.8.9-1_all.deb

 

Et ensuite la commande suivante sélectionnez la version de MySQL :

dpkg -i mysql-apt-config_0.8.9-1_all.deb

 

Une fenêtre va s’ouvrir :

Comme on le voit, le paramètre sélectionné est mysql-5.7, ce qui correspond à ce que l’on veut installer. Si vous appuyez sur Enter vous pouvez si vous le souhaitez changer la version à installer.

Descendez avec les flèches pour sélectionner « Ok » et appuyer sur Enter.

 

Lancer la commande suivante pour mettre à jour le repository :

apt update

 

Ensuite exécuter la commande suivante pour installer MySQL :

apt install mysql-server

 

Ensuite lorsque la base de donnée est installée, connectez-vous à la base de données :

mysql –u root –p

 

Créez un utilisateur « pydio » :

CREATE USER 'pydio'@'localhost' IDENTIFIED BY '<votre_password>';

 

Création de la base de données :

CREATE DATABASE cells;

 

Application des droits à la base de données :

GRANT ALL PRIVILEGES ON cells.* to 'pydio'@'localhost';

 

 

Lorsque la base de données est créée et configurée, nous allons installer divers packages PHP avec la commande suivante :

apt install php7.0 php7.0-fpm php7.0-gd php7.0-curl php7.0-intl php7.0-xml

 

Ensuite nous allons configurer le port d’écoute sur le port 9000 qui est le port avec lequel Pydio communique avec fpm :

sed -i '$ a\ listen=9000' /etc/php/7.0/fpm/php-fpm.conf

 

Nous allons ensuite activer fpm

systemctl enable php7.0-fpm

 

Et ensuite le relancer pour qu’il prenne bien en compte les changements :

systemctl restart php7.0-fpm

 

 

 

On va pouvoir ensuite récupérer les sources de Pydio Cells :

wget https://download.pydio.com/pub/cells/release/1.0.1/linux-amd64/cells

 

 

 

Modifier les droits sur le fichier pour qu’il puisse être exécuter par notre utilisateur Pydio :

chmod 777 cells

 

On va switcher ensuite sur l’utilisateur pydio :

 

 

On peut ensuite lancer l’installation de Pydio Cells :

./cells install

 

Lorsque l’on lance l’installation on a le choix d’utiliser l’installation à l’aide du browser ou en ligne de commande.

Dans notre exemple nous allons utiliser la version en ligne de commande, nous allons donc sélectionner à l’aide des flèches « Command line » :

Confirmer en appuyant sur la touche Enter.

 

Ensuite vous devez spécifier l’interface sur laquelle vous voulez que le serveur écoute :

Sélectionnez l’interface et appuyer sur Enter.

 

Il vous indique ensuite l’adresse qui sera donc utilisable pour joindre votre serveur :

Si l’adresse est correcte, appuyer sur Enter.

 

 

Ensuite vous devez sélectionner la méthode SSL à utiliser :

 

Vous avez 3 choix :

  • Soit vous pouvez utiliser un certificat que vous avez au préalable générer pour Pydio
  • Soit vous pouvez générer un certificat auto-signé
  • Soit vous pouvez désactiver SSL

 

En pratique dans un environnement de production il est conseillé d’utiliser un certificat signé par une autorité de certification.

Dans notre exemple nous allons utiliser un certificat auto-signé étant donné que nous sommes dans un contexte de lab.

 

Après avoir fait votre choix, appuyer sur Enter.

 

 

Ensuite vous devez sélectionner la base de donnée à utiliser :

 

Dans notre cas, nous allons utiliser une base de données MySQL et donc nous allons sectionner le premier choix « TCP ». Appuyez ensuite sur Enter.

 

Vous allez avoir ensuite plusieurs paramètres à configurer par rapport à la base de donnée :

 

 

Ensuite le programme devrait détecter automatiquement le port d’écoute pour PHP-FPM :

On voit que le port 9000 à bien été détecté.

Si c’est bon, appuyez sur la touche « y » pour confirmer et ensuite sur Enter.

 

 

Ensuite il faut paramétrer le nom d’utilisateur et le mot de passe de l’administrateur :

 

 

Ensuite, le programme vous demande si vous voulez configurer les paramètres avancés :

Appuyer sur « y » si vous voulez faire des modifications ou sinon sur « N » et ensuite sur Enter pour continuer.

Les paramètres avancés concernent entre autres les différents ports à utiliser pour OpenIdConnect, WebSocket,WebDSAV, etc…

 

Dans notre exemple nous n’allons pas modifier les paramètres avancés.

 

L’installation va se lancer.

 

Lorsque l’installation est terminée, vous pouvez lancer l’application avec la commande suivante :

./cells start

 

 

Vous pouvez ensuite accéder à votre site Pydio à l’adresse :

https://[IP-Serveur]:8080

 

 

 

 

Utilisation

 

Maintenant que nous avons installé Pydio, nous allons voir comment utiliser les différentes fonctions de ce programme.

Nous allons utiliser pour l’exemple la version Pydio Cells.

Connectez tout d’abord à l’interface web de Pydio. Vous arrivez sur la page de login. Entrer le nom utilisateur et mot de passe de l’administrateur que vous avez configuré lors de l’installation.

 

 

Cliquez ensuite sur Enter.

 

A la première connexion, vous aurez une petite fenêtre qui va s’ouvrir vous permettant de découvrir brièvement les fonctionnalités.

Vous arrivez donc sur la page d’accueil.

 

 

 

 

Paramètres

 

En haut à droite, en cliquant sur les trois petits points vous aurez un menu qui s’ouvre et vous pouvez accéder aux paramètres en cliquant sur Settings.

 

 

 

Créer un stockage

 

Par défaut à l’installation de Pydio, il crée automatiquement des emplacements de stockage utilisable sur le serveur. Pour créer un nouveau stockage allez dans Settings -> Data Management -> Storage.

On peut voir les emplacements de stockage qui ont été créé automatiquement.

Pour en créer un nouveau cliquez sur +DATASOURCE

 

Dans la fenêtre qui s’ouvre, vous avez plusieurs paramètres à configurer.

 

Spécifiez le nom de l’emplacement de stockage ainsi que son emplacement sur le serveur.

Assurez-vous que l’application à le droit d’écrire à l’emplacement que vous sélectionnerez.

Cliquez ensuite sur Save et sur Close.

 

Après un petit moment le temps que l’application initialise l’emplacement, vous pourrez voir votre emplacement qui a été créé et prêt à l’emploi.

 

 

Créer un workspace

 

Un workplace est l’emplacement dans lequel les utilisateurs vont venir déposer leurs fichiers.

Pour en créer un nouveau, allez dans Settings -> Data Management -> Workspaces

Cliquez sur +WORKSPACE

 

Dans la première étape de la fenêtre qui s’ouvre, sélectionnez l’emplacement de stockage sur lequel vous voulez mettre le workspace.

Cliquez ensuite sur Next.

 

 

Dans la seconde étape, vous devez configurer le nom du workspace ainsi que les droits sur ce workspace.

 

Cliquez ensuite sur le bouton CREATE et ensuite sur CLOSE.

 

 

Votre Workspace est créé.

 

 

 

Créer un utilisateur

 

Pour créer un nouvel utilisateur rendez-vous dans Settings -> Identity Management -> People

Cliquer sur le bouton +USER

 

Entrez les informations concernant l’utilisateur.

Cliquez ensuite sur OK.

 

 

 

Dans la fenêtre qui s’ouvre, vous pouvez régler divers paramètres supplémentaires pour l’utilisateur à savoir par exemple, son rôle, son profil ou encore son workspace par défaut.

Lorsque vous avez configuré les paramètres de l’utilisateur, cliquez sur Save et Close.

 

 

Créer un nouveau rôle

 

Vous pouvez créer un nouveau rôle pour définir a quels workspace les utilisateurs qui feront partis de ce rôle ont accès.

Allez dans Settings -> Identity Management -> Roles

Cliquez sur +ROLE

 

Entrez le nom du rôle.

Cliquez sur OK

 

 

 

Autoriser un rôle à avoir accès à un workspace

 

Si vous voulez qu’un rôle puisse avoir l’accès à un workspace allez dans Settings -> Identity Management -> Roles et cliquez sur le rôle que vous voulez modifier.

Allez ensuite dans la section Workspaces Accesses. Vous pouvez ensuite sélectionner les accès que vous voulez donner aux divers workspaces.

 

Cliquez ensuite sur Save et sur Close.

 

 

 

Ajouter un utilisateur à un rôle

 

Pour pouvoir ajouter un utilisateur à un rôle, allez dans Settings -> Identity Management -> People et cliquez sur l’utilisateur que vous voulez modifier.

Allez dans la section Profile & Roles et sélectionnez le rôle à ajouter.

Cliquez ensuite sur Save puis Close.

 

Si on se connecte en tant que John, on peut voir que l’utilisateur à le droit de consulter et d’écrie dans le workspace Mon-Workspace qui est inclus dans le rôle Mon-Role dans lequel on a ajouté l’utilisateur.

 

 

 

 

Créer une cellule

 

Pour créer une nouvelle cellule que l’on va ensuite pourvoir partager avec d’autres utilisateurs, rendez-vous sur la page d’accueil.

Cliquez sur CREATE A CELL.

 

 

 

Dans la fenêtre qui s’ouvre, vous allez devoir indiquer le nom que vous voulez donner à la cellule ainsi qu’une description si vous le souhaitez.

Cliquez ensuite sur Next.

 

Ensuite vous devez sélectionnez les personnes avec qui vous voulez partager cette cellule. Vous pouvez ajouter des personnes individuellement ou ajouter des groupes et ensuite indiquer les droits de ces personnes sur les fichiers de la cellule.

Cliquez ensuite sur Next.

 

 

Vous pouvez ensuite sélectionner un dossier dans lequel partager les fichiers ou laisser Pydio en créer un.

Cliquez sur CREATE CELL NOW!

 

 

Votre nouvelle cellule est créée.

 

 

Si l’on se connecte en tant qu’utilisateur John avec qui on a partagé cette cellule on peut constater que cet utilisateur à bien l’accès à la cellule.

 

 

 

Créer un nouveau fichier

 

Pour créer un nouveau fichier dans une cellule, cliquez sur le bouton NEW et sélectionnez New empty file.

 

 

Entrez le nom du fichier dans la fenêtre qui s’ouvre et cliquez sur OK

 

 

Votre fichier est créé.

 

 

Si vous faites un double clic sur le fichier, vous aurez une fenêtre qui va s’ouvrir dans laquelle vous allez pouvoir modifier le texte de votre fichier et ensuite sauvegarder les modifications directement en cliquant sur la petite icône en forme de disquette.

 

 

Importer un fichier depuis son PC local

 

Pour importer un fichier depuis votre PC local sur votre cellule Pydio cliquez sur le bouton NEW et sélectionnez Upload.

 

 

Dans la fenêtre qui s’ouvre, cliquez sur PICK FILE

 

 

Une nouvelle fenêtre va s’ouvrir avec l’arborescence de votre PC local. Sélectionnez quel fichier vous voulez importer dans l’application.

 

 

Votre fichier est importé dans Pydio.

 

 

 

Partager un fichier

 

Pour partager un fichier avec une personne extérieure par exemple, vous allez pouvoir générer une URL qui sera utilisable depuis n’importe où sur Internet pour accéder au fichier. La connexion étant sécurisée si un certificat SSL est installé, le trafic pour accéder au fichier sera chiffré.

Pour partager un fichier faites un clic droit sur le fichier à partager et sélectionnez Share

 

 

Dans la fenêtre qui s’ouvre, activez le partage public en cliquant sur le petit curseur a côté de « Enable Public Link ».

 

Cela va vous générer une URL que vous pourrez envoyer à quelqu’un en externe pour qu’il puisse accéder au fichier. L’URL doit bien évidemment être accessible depuis l’externe.

Vous pouvez ensuite en-dessous configurer les droits sur le fichier.

Cliquez ensuite sur SAVE.

 

 

Chat dans la cellule

 

Vous avez la possibilité de chatter avec les personnes qui sont dans une cellule.

Pour cela cliquez sur l’icône en forme de bulle de chat à droite dans la cellule.

 

 

 

Vous avez ensuite la possibilité d’envoyer des messages.

 

 

Conclusion

 

Pydio est un outil collaboratif très puissant qui offre beaucoup de possibilités. Son utilisation est très simple et très intuitive. La possibilité pour les personnes de créer des cellules directement permet aux utilisateurs de gérer eux-mêmes leurs cellules et les droits sur les fichiers.

Les fichiers peuvent être accédés depuis l‘extérieur par le biais d’une URL accessible depuis l’extérieur.

On peut aussi accéder aux fichiers directement depuis l’application mobile.

Il convient tout à fait à une utilisation en entreprise avec des fonctionnalités avancées pour la gestion des utilisateurs et des contrôles d’accès.

Il est utilisable gratuitement dans sa version Home.

Un des avantages par rapport à ses concurrents telles que Google Drive est qu’il repose sur une utilisation sur des serveurs en interne et non dans le cloud, ce qui a l’avantage pour les entreprises de conserver les données au sein de l’entreprise en interne et ainsi répondre à la politique de sécurité et de confidentialité des données.