Ceci est une ancienne révision du document !
Zendto - Partage de fichiers
Zendto est un logiciel qui permet de partager facilement des fichiers. Il permet de gérer les accès, de chiffrer les fichiers et d'envoyer les liens par mail.
Installation
Zendto n'est pas présent dans les dépôts Debian, mais un dépôt officiel existe pour le récupérer.
Récupérez les clés de signature :
wget -O - https://zend.to/files/zendto.gpg.asc | sudo apt-key add -
Installez le dépôt :
wget https://zend.to/files/zendto-repo.deb sudo dpkg -i zendto-repo.deb
Mettez à jour la liste de paquets :
sudo aptitude update
Puis installez Zendto :
sudo aptitude install zendto
Configuration de la base de donnée
Zendto ne créé pas la base de données, il va falloir l'importer avec le fichier fourni.
Commencez par lancer mysql :
sudo -u root mysql
Créez la base de données :
CREATE DATABASE zendto;
Créez l'utilisateur pour la base (modifier le mot de passe) :
GRANT ALL PRIVILEGES ON zendto.* TO zendto@localhost IDENTIFIED BY 'motdepasse';
Quittez mysql :
exit
ouvrez le dump de la base de données :
sudo nano /opt/zendto/sql/zendto.MySQL
Dans le bloc “Struttura della tabella `recipient`”, remplacez :
CREATE TABLE IF NOT EXISTS `recipient` ( `rowID` INT(11) NOT NULL AUTO_INCREMENT, `dID` INT(11) NOT NULL COMMENT 'References rowID in dropoff table', `recipName` VARCHAR(32) NOT NULL, `recipEmail` text NOT NULL, KEY `dID` (`dID`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Recipient data';
par
CREATE TABLE `recipient` ( `dID` INT(11) NOT NULL COMMENT 'References rowID in dropoff table', `recipName` VARCHAR(32) NOT NULL, `recipEmail` text NOT NULL, `rowID` INT(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`rowID`), KEY `dID` (`dID`) ) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=latin1 COMMENT='Recipient data';
Importez la base de données (remplacez le mot de passe par celui utilisé précédemment) :
mysql --user=zendto --password='motdepasse' zendto < /opt/zendto/sql/zendto.MySQL
Vous aurez une erreur après l'import mais l'import a fonctionné.
Configuration de Zendto
Ouvrez le fichier /opt/zendto/config/preferences.php.
Activez mysql en remplaçant :
define('SqlBackend', 'SQLite3');
par
define('SqlBackend', 'MySQL');
Configurez l'accès à la base de données plus bas. Vous devez avoir comme suit (remplacez le mot de passe) :
// Next 4 lines needed for MySQL operation 'MySQLhost' => 'localhost', 'MySQLuser' => 'zendto', 'MySQLpassword' => 'motdepasse', 'MySQLdb' => 'zendto',
Modifiez la ligne “serverRoot” pour indiquez votre sous-domaine qui permettra d'accéder à Zendto
Changez la langue en français en remplaçant :
'language' => 'en_US',
par
'language' => 'fr_FR',
Pour être conforme au RGPD, remplacez :
'cookieGDPRConsent' => FALSE,
par
'cookieGDPRConsent' => TRUE,
Si vous ne souhaitez pas que des personnes non-identifiées puisse uploader des fichiers, remplacez :
'allowExternalUploads' => TRUE,
par
'allowExternalUploads' => FALSE,
Configurez la partie mail dans “E-mail settings.”
Ajoutez un utilisateur admin (appelez-le comme vous voulez) à la ligne 'authAdmins' (virez 'admin1','admin2','admin3').
Générez une valeur de pour la ligne 'cookiesecret' avec la commande suivante :
/opt/zendto/sbin/genCookieSecret.php
Créez un utilisateur avec la commande suivante (utilisez le même nom d'utilisateur que vous avez mis dans 'authAdmins') :
sudo /opt/zendto/bin/adduser /opt/zendto/config/preferences.php 'nom utilisateur' 'adresse mail' 'vrai nom' 'organisation'
Configuration Apache2
Créez le fichier de configuration zendto.domaine.fr.conf dans /etc/apache2/sites-available (remplacez domaine.fr par votre domaine) et collez-y les lignes suivantes en adaptant le domaine, l'adresse mail et l'emplacement des fichiers SSL :
<VirtualHost *:80> ServerName zendto.domaine.fr ServerAdmin adresse mail Redirect / https://zendto.domaine.fr/ </VirtualHost> <VirtualHost *:443> DocumentRoot /opt/zendto/www ServerName zendto.domaine.fr ServerAdmin adresse mail LogLevel warn CustomLog ${APACHE_LOG_DIR}/zendto.access.log combined ErrorLog ${APACHE_LOG_DIR}/zendto.error.log <IfModule mod_ssl.c> SSLEngine on SSLCertificateFile /etc/letsencrypt/live/domaine.fr/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/domaine.fr/privkey.pem Header set Content-Security-Policy "script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; connect-src 'self'; media-src 'self'; child-src 'self'; object-src 'self'; form-action 'self'; img-src 'self' * data:" </IfModule> <Directory /opt/zendto/www> Require all granted </Directory> </VirtualHost> # modern configuration, tweak to your needs SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1 SSLCipherSuite ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256 SSLHonorCipherOrder on SSLCompression off SSLSessionTickets off # OCSP Stapling, only in httpd 2.3.3 and later SSLUseStapling on SSLStaplingResponderTimeout 5 SSLStaplingReturnResponderErrors off SSLStaplingCache shmcb:/var/run/ocsp(128000)
Activez le fichier avec la commande :
sudo a2ensite zendto.domaine.fr.conf
Puis, relancez Apache2 :
sudo systemctl reload apache2
Vous pouvez maintenant accéder à Zendto à l'adresse zendto.domaine.fr.