SysPass Update 3.0.0.18126201
Cet article présente la mise à jour de sysPass
en version 3.0.0.18126201
.
Attention, le passage en version 3.0.X
entraîne quelques modifications. Le répertoire de configuration est déplacée au sein de l'instance et il est nécessaire d'utiliser composer pour compléter l'instance avec les différentes dépendances.
Sommaire
- 1 Votre avis
- 2 Téléchargement
- 3 Installation
- 4 Dépendances
- 5 Propriétaire fichiers
- 6 Sécurisation
- 7 Configuration
- 8 Permissions compte base de données
- 9 Publication Apache
- 10 Permissions compte base de données post install
- 11 Purge de fichiers
- 12 Permissions répertoire configuration
- 13 Bug accès ressources
- 14 Voir aussi
Votre avis
Nobody voted on this yet
|
|
Téléchargement
L'application est téléchargée, en version 3.0.0.18126201, dans le répertoire /var/opt/syspass
.
#sudo wget -P /var/opt/syspass https://github.com/nuxsmin/sysPass/archive/3.0.0.18126201.tar.gz
Installation
L'application va être installée sous /var/opt/syspass
, avec modification de l'emplacement racine pour être 3.0.0.18126201
.
#sudo tar --transform 's/^sysPass-3.0.0.18126201/3.0.0.18126201/' -C /var/opt/syspass -xzvf /var/opt/syspass/3.0.0.18126201.tar.gz
Le fichier téléchargé peut être supprimé.
#sudo rm /var/opt/syspass/3.0.0.18126201.tar.gz
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.0.18126201 #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.0.18126201/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 Do not run Composer as root/super user! See https://getcomposer.org/root for details Loading composer repositories with package information Installing dependencies from lock file Package operations: 28 installs, 0 updates, 0 removals - Installing ademarre/binary-to-text-php (dev-master 5d98d17): Cloning 5d98d17be1 from cache - Installing paragonie/random_compat (v9.99.99): Downloading (100%) - Installing defuse/php-encryption (v2.2.1): Downloading (100%) - Installing doctrine/lexer (v1.0.1): Downloading (100%) - Installing doctrine/inflector (v1.2.0): Downloading (100%) - Installing doctrine/collections (v1.4.0): Downloading (100%) - Installing doctrine/cache (v1.6.2): Downloading (100%) - Installing doctrine/annotations (v1.4.0): Downloading (100%) - Installing doctrine/common (v2.7.3): Downloading (100%) - Installing psr/http-message (1.0.1): Downloading (100%) - Installing guzzlehttp/psr7 (1.4.2): Downloading (100%) - Installing guzzlehttp/promises (v1.3.1): Downloading (100%) - Installing guzzlehttp/guzzle (6.3.3): Downloading (100%) - Installing klein/klein (v2.1.2): Downloading (100%) - Installing psr/log (1.0.2): Downloading (100%) - Installing monolog/monolog (1.24.0): Downloading (100%) - Installing psr/container (1.0.0): Downloading (100%) - Installing php-di/phpdoc-reader (2.1.0): Downloading (100%) - Installing php-di/invoker (2.0.0): Downloading (100%) - Installing nikic/php-parser (v4.1.0): Downloading (100%) - Installing symfony/polyfill-util (v1.10.0): Downloading (100%) - Installing symfony/polyfill-php56 (v1.10.0): Downloading (100%) - Installing jeremeamia/superclosure (2.4.0): Downloading (100%) - Installing php-di/php-di (6.0.5): Downloading (100%) - Installing phpmailer/phpmailer (v6.0.5): Downloading (100%) - Installing phpseclib/phpseclib (2.0.12): Downloading (100%) - Installing roave/security-advisories (dev-master 74a42b8) - Installing symfony/debug (v3.4.18): Downloading (100%) Generating autoload files
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é.
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.0.18126201
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.0.18126201
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.0.18126201/app/config #sudo ln -s /var/opt/syspass/common/config /var/opt/syspass/3.0.0.18126201/app/config #sudo chown -h www-data:www-data /var/opt/syspass/3.0.0.18126201/app/config
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)
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.0.18126201 /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.0.18126201/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.

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)
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.0.18126201/.gitignore #sudo rm -rf /var/opt/syspass/3.0.0.18126201/.github #sudo rm /var/opt/syspass/3.0.0.18126201/.travis.yml #sudo rm /var/opt/syspass/3.0.0.18126201/composer.phar #sudo rm /var/opt/syspass/3.0.0.18126201/composer.lock #sudo rm -rf /var/opt/syspass/3.0.0.18126201/tests
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.
Bug accès ressources
Sur cette version, il y a un bug d'accès à certaines ressources, mais ce n'est critique. Ceci peut être constaté en ouvrant les outils de développement des navigateurs pour constater les accès provoquant une erreur 404
.
Afin d'y remédier, le plus simple est de mettre en place des liens symboliques.
#sudo mkdir -p /var/opt/syspass/3.0.0.18126201/inc #sudo chown www-data:www-data /var/opt/syspass/3.0.0.18126201/inc #sudo chmod 700 /var/opt/syspass/3.0.0.18126201/inc #sudo ln -s ../app/modules/web/themes /var/opt/syspass/3.0.0.18126201/inc/themes #sudo chown -h www-data:www-data /var/opt/syspass/3.0.0.18126201/inc/themes
Voir aussi
Documentation officielle: https://github.com/nuxsmin/sysPass/releases/tag/3.0.0.18126201
https://syspass-doc.readthedocs.io/en/3.0/installing/debian9.html