Partage de fichiers avec FileZ
Sommaire
I. Présentation
FileZ est une application web développée par l’Université d’Avignon et des Pays de Vaucluse qui permet de déposer et gérer des fichiers destinés à être partagés grâce à une URL unique.
Site de l’éditeur ici.
II. Fonctionnalités
Fonctionnalités
- Authentification modulaire : CAS+LDAP, LDAP only, BDD, ou vos propres classes PHP
- URL courtes (ex: filez.univ-avignon.fr/x42ni1)
- Barre de progression d’upload (Utilisation non obstructive du javascript)
- Formulaire d’installation
- Protection des fichiers par mot de passe
- Envoi d’emails
- Tâches cron
- Quota
III. Au préalable
Pour installer Filez il vous faut :
- un serveur Linux sous Debian/Ubuntu/...
- un serveur SSH, pour accéder au serveur depuis Putty (outils plus agréable que l’utilisation de la console linux)
- Mysql-server, pour la gestion des comptes fichiers
- Php5-mysql, php5-ldap, php5-dev
- Pecl,
- apache2, pour l'interface WEB de Filez
- git-core, pour une installation depuis GitHub.
Remarque : l’utilisation du nom Rapin est à titre d’exemple.
IV. Installation de Filez
- Téléchargement du paquet d'installation Filez :
git clone git://github.com/UAPV/FileZ.git /var/www/filez
- Donner les droits d’accès à Apache (serveur Web sous Linux) sur le répertoire « filez » :
chown –R www-data:www-data /var/www/filez
- Création de la base de données pour la gestion des fichiers et des utilisateurs :
mysql -u root -p Enter password: mysql> create database filez; Query OK, 1 row affected (0.00 sec) mysql> GRANT ALL PRIVILEGES ON filez.* TO "filez"@"localhost" IDENTIFIED BY "filezmdp"; Query OK, 0 rows affected (0.00 sec) mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.00 sec) mysql> USE filez mysql> CREATE TABLE `filez`.`db_users` ( `uid` SERIAL NOT NULL , `login` VARCHAR( 20 ) NOT NULL , `password` VARCHAR( 40 ) NOT NULL , `givenname` VARCHAR( 255 ) NOT NULL , `sn` VARCHAR( 255 ) NOT NULL , `mail` VARCHAR( 255 ) NOT NULL ) ENGINE = MYISAM ; mysql> exit Bye
- Modification du Virtual host :
- Afin d'activer le module, il faut utiliser la commande « a2enmod » (Apache 2 Enable Module) suivi du nom du module et mod_rewrite pour permettre la réécriture des URLs. Enfin pour appliquer les changements, un redémarrage du service « apache2 » est nécessaire :
a2enmod rewrite apache2ctl restart
- Premier accès à l’interface Filez via l'adresse IP du serveur (http://localhost)
Nous avons des alertes concernant plusieurs prérequis dont :
Upload_max_filesize : Taille maximum d'un fichier étant partagé.
Upload_tmp_dir : Chemin d'accès au répertoire temporaire des fichiers partagés.
- Ces paramètres peuvent être modifiés ultérieurement en éditant le fichier « .htaccess » présent dans /var/www/filez. Il est important de vérifier l’existence du répertoire temporaire, sinon, il faut le créer et lui attribué les droits suivants :
drwxrwxr-x 2 www-data www-data 4096 10 Janv 17:04 tmp
- La page suivante permet d'accéder à la configuration de FileZ (pour l'authentification utiliser "Database").
- Une fois la configuration complétée, il faut cliquer sur « Check configure and install ! » pour poursuivre l'installation :
V. Création utilisateur
- PhpMyAdmin (interface web permettant d'administrer des bases de données) va permettre de créer simplement les comptes utilisateurs :
aptitude install phpmyadmin
- Pour accéder à l'interface web de PhpMyAdmin il suffit d'accéder à l'adresse suivante : http://localhost/phpmyadmin, de renseigner votre nom d'utilisateur et mot de passe que vous avez prédéfinit lors de l'installation de ce dernier. Puis d'insérer une nouvelle entrée dans la BDD FileZ :
VI. Interface utilisateur
- Ajout d'un fichier avec comme argument, le temps de validité du lien correspondant au jour à partir duquel il doit être accessible et si l'on souhaite le protéger par un mot de passe :
- Liste des fichiers téléchargés sur le serveur pour le compte de l'utilisateur (ici : user1). Le bouton "Partager" va créer un lien, permettant de télécharger le ou les fichiers hébergés sur le serveur, que l'on peut donner :
Bonjour,
Pouvez-vous me dire s’il est possible d’avoir un seul lien pour plusieurs fichiers sans avoir au préalable à créer un fichier zip ?
En vous remerciant,
Cordialement,
Bonjour,
A ma connaissance Filez permet uniquement le partage de fichiers.
Cordialement.
Bonjour, je suis sous linux (ubuntu 16.04) et je me suis decidé pour un projet de serveur, d’opté pour filez.
Mais je tombe sur une erreur. En effet, lorsque je tente de crée la base de donnée pour la gestion des fichiers et des utilisateurs la syntax n’est pas reconnu.
ERROR 1604 (42000): You have an error in your SQL syntax; check the manual that correspond to your Mysql server version for the right syntax user to use near ‘ ‘filez’.’db_users’ (
‘uid’ SERIAL NOT NULL ,
‘login’ VARCHAR( 20 ) NOT NULL ,’ at line 1
Pouvez-vous, si possible, m’éclairer sur cette erreur ?
Cordialement.
Bonjour,
sauriez-vous si il existe un équivalent en FTPS
Merci
Bonjour,
Après réception de fichier, il est demandé au destinataire de saisir le mot de passe, alors qu’aucun mot de passe n’a été saisi lors de l’envoi par l’expéditeur (rarement mais cela est arrivé pour 2 expéditeurs différents). comment corriger ce bug, qui n’est pas systématique ?
L’envoi avec mot de passe fonctionne normalement.
merci,
Antoine