SysPass Update 3.0.5.19020701

De EjnTricks

Cet article présente la mise à jour de sysPass en version 3.0.5.19020701.

Hand-icon.png Votre avis

Nobody voted on this yet

 You need to enable JavaScript to vote


Download-icon.png Téléchargement

L'application est téléchargée, en version 3.0.5.19020701, dans le répertoire /var/opt/syspass.


System-Install-icon.png Installation

L'application va être installée sous /var/opt/syspass, avec modification de l'emplacement racine pour être 3.0.5.19020701.

#sudo tar --transform 's/^sysPass-3.0.5.19020701/3.0.5.19020701/' -C /var/opt/syspass -xzvf /var/opt/syspass/3.0.5.19020701.tar.gz

Le fichier téléchargé peut être supprimé.

#sudo rm /var/opt/syspass/3.0.5.19020701.tar.gz


Dependencies.gif Dépendances

Le paquet téléchargé ne contient pas les différentes dépendances et il est nécessaire de les récupérer à l'aide de l'outil composer, qu'il faut exécuter à la racine de l'application.

#cd /var/opt/syspass/3.0.5.19020701
#sudo php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

Une fois téléchargé, il faut l'exécuter afin de construire un fichier composer.phar. Dans la documentation officielle de sysPass, une vérification est réalisée sur la signature du fichier composer-setup.php. Ceci n'est pas réalisé dans le cadre de cette mise à jour.

#sudo php composer-setup.php
All settings correct for using Composer
Downloading...

Composer (version 1.9.1) successfully installed to: /var/opt/syspass/3.0.5.19020701/composer.phar
Use it: php composer.phar

Une fois la génération terminée, l'outil n'est plus nécessaire et il faut démarrer le téléchargement des librairies.

#sudo php -r "unlink('composer-setup.php');"
#sudo php composer.phar install --no-dev

Un warning est affiché au démarrage indiquant qu'il n'est pas recommander d'effectuer la commande en root. Comme les permissions sont modifiées par la suite, le message peut être ignoré.

A noter que les dépendances sont fournies sur GitHub à travers une archive vendor.tar.gz. Il est possible de la télécharger et d'extraire le contenu dans le répertoire vendor de l'instance.


Icon File Owner.png Propriétaire fichiers

L'installation a été réalisée avec le compte root. Il est préférable de donner la propriété au compte de démarrage du serveur web, soit www-data dans le cadre de cette installation.

#sudo chown -R www-data:www-data /var/opt/syspass/3.0.5.19020701


Icon ACL.png Sécurisation

Les droits mis en place seront uniquement pour le compte d'exécution du serveur Web, soit www-data dans le cadre de cette installation.

#sudo chmod -R go-rwx /var/opt/syspass/3.0.5.19020701


Icon-Configuration-Settings.png Configuration

Lors de l'installation, le fichier de configuration a été externalisé dans le répertoire /var/opt/syspass/common/config. Il faut référencer cette configuration dans la nouvelle version. Attention, le répertoire était à l'emplacement config à la racine de l'instance pour les précédentes versions. Il est à présent sous app/config

#sudo rm -rf /var/opt/syspass/3.0.5.19020701/app/config
#sudo ln -s /var/opt/syspass/common/config /var/opt/syspass/3.0.5.19020701/app/config
#sudo chown -h www-data:www-data /var/opt/syspass/3.0.5.19020701/app/config


Lock-icon.png Permissions compte base de données

Suite à l'installation, les droits d'accès du compte MySql ont été réduits. Afin de s'assurer qu'aucun problème n'aura lieu, les permissions sont temporairement augmentées pour la mise à jour, en cas de modification du schéma.

mysql> REVOKE ALL ON syspass.* FROM 'syspass'@'localhost';
Query OK, 0 rows affected (0.00 sec)

mysql> GRANT ALL ON syspass.* TO 'syspass'@'localhost';
Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)


Configuration-icon.png Publication Apache

Puis le lien /var/opt/syspass/installed doit être mis à jour afin de pointer sur cette nouvelle version.

#sudo rm /var/opt/syspass/installed
#sudo ln -s /var/opt/syspass/3.0.5.19020701 /var/opt/syspass/installed
#sudo chown -h www-data:www-data /var/opt/syspass/installed


Lors du premier accès, l'utilisateur doit déclencher la mise à jour.


Le code de sécurité doit être récupéré depuis le fichier config.xml, soit à l'emplacement /var/opt/syspass/3.0.5.19020701/app/config/config.xml, depuis la balise upgradeKey.

Attention, il est nécessaire de cocher la case Effectuer une sauvegarde complète de sysPass pour pouvoir démarrer la mise à jour. Il n'y a pas de sauvegarde réalisée, c'est juste pour rappeler à l'utilisateur de réaliser une sauvegarde avant de procéder à la mise à jour.

En cliquant sur le bouton Mise à jour, une confirmation est demandée.


Lock-icon.png Permissions compte base de données post install

La mise à jour étant en échec les droits du compte sur la base de données sont diminués, après avoir restauré les fichiers de configuration. Dans le cadre de cette mise à jour, cela n'était pas nécessaire. Les commandes suivantes sont exécutées.

mysql> REVOKE ALL ON syspass.* FROM 'syspass'@'localhost';
Query OK, 0 rows affected (0.00 sec)

mysql> GRANT SELECT, INSERT, UPDATE, DELETE ON syspass.* TO 'syspass'@'localhost';
Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)


Delete-file-icon.png Purge de fichiers

Le paquet téléchargé correspond aux sources directement. Il y a donc quelques fichiers inutiles, ceux propres à GitHub par exemple.

#sudo rm /var/opt/syspass/3.0.5.19020701/.gitignore
#sudo rm -rf /var/opt/syspass/3.0.5.19020701/.github
#sudo rm /var/opt/syspass/3.0.5.19020701/.travis.yml
#sudo rm /var/opt/syspass/3.0.5.19020701/composer.phar
#sudo rm /var/opt/syspass/3.0.5.19020701/composer.lock
#sudo rm -rf /var/opt/syspass/3.0.5.19020701/tests


Warning-icon.png Permissions répertoire configuration

Attention, il est nécessaire de donner les permissions 750 sur le répertoire de configuration, sinon un message d'erreur est affiché.

#sudo chmod 750 /var/opt/syspass/common/config

Mais les permissions des fichiers dans le répertoire ne sont pas modifiées.


Viewer icon.png Voir aussi

Documentation officielle: https://github.com/nuxsmin/sysPass/releases/tag/3.0.5.19020701