====== Zendto - Partage de fichiers ======
[[https://zend.to/|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ée 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 indiquer 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').
Passez la ligne 'adminLoginsMustBeLocal' à False pour que les admins puissent avoir n'importe quel hébergeur mail.
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 d'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 et l'emplacement des fichiers SSL :
ServerName zendto.domaine.fr
Redirect / https://zendto.domaine.fr/
DocumentRoot /opt/zendto/www
ServerName zendto.domaine.fr
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/zendto.access.log combined
ErrorLog ${APACHE_LOG_DIR}/zendto.error.log
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:"
Require all granted
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.