Page 1 sur 1

Installation / Mise à jour automatique du serveur / console

Publié : 08 oct. 2018 - 15:27
par Floflobel
Bonjour,

Je cherche à automatiser complètement l'installation de la partie serveur de WAPT grâce à l'outil Ansible ainsi que sa console d'administration sous Windows. Je possède plusieurs serveurs et les mises à jour de tous les agents, des consoles et des serveurs commencent à représenter une bonne charge de travail.

* Partie serveur:
- Installation: Concernant l'installation, j'ai lu le script python, je vais effectuer l'installation de nginx et postgres grâce à des roles ansible puis, je ferais la configuration (mot de passe admin, secret) dans un role wapt.

- Mise à jour: J'ai commencer à regarder pour effectuer la mise à jour mais je ne vois pas grand chose à vérifier.

Mon seul problème est le fichier de configuration, qui n'est pas généré lors de l'installation ou de la mise à jour. Il semble être généré par un import. Pouvez-vous me le confirmer ? Et avez vous une méthode pour le récupérer depuis un lien ou autre ?

* Partie console d'administration:
J'effectuerais aussi l'installation et les mises à jour grâce à ansible et aux modules windows. Je souhaiterais avoir les paramètres silencieux pour l'installation de l'exécutable "waptsetup-tis.exe".
Une fois la console installée, il nous faut généré un certificat, est-ce possible en ligne de commande ?
Ce certificat qui nous sert à signer nos paquets, nous permet de créer l'installeur "waptagent.exe", est-il possible de le générer en ligne de commande comme un paquet lambda ? Y a t'il des changements dans ce paquet qui sont effectués lorsqu'il est généré depuis la console ?

Ceci me permettrait d'avoir une solution qui pourrait être déployé de manière massive.
Merci pour votre aide !

Re: Installation / Mise à jour automatique du serveur / console

Publié : 09 oct. 2018 - 15:47
par htouvet
Le fichier de configuration de la partie serveur (/opt/wapt/conf/waptserver.ini) est basique.
Le générer avec Ansible doit être assez trivial. Il faut juste générer un server UUID unique et la clé de session aléatoire.
Coté serveur également, penser à générer la paire de clé/certificat pour nginx et initialiser la base de données postgresql.
Les fonctions nécessaires sont dans postconf.py

waptsetup-tis.exe a les mêmes options de lignes de commande silencieuses que waptagent.exe.
Entre autres : https://www.wapt.fr/fr/doc/Configuratio ... cieusement

Lorsqu'on génère un waptagent.exe, en fait on recompile un waptsetup.exe avec des valeurs par défaut propres à l'installation locale. On inclut également le / les certificat(s) autorisé(s) pour les paquets et actions, ainsi que les certificats pour la vérification des connections https.

Pour générer une clé / certificat, openssl (installé avec wapt) fait très bien l'affaire. Il faut juste veiller à ajouter l'attribut "Code SIgning". Cependant, une procédure automatisée ne devrait être chargée que de déployer le certificat, le couple clé privée/certificat ayant été généré une fois pour toute pour identifierl'administrateur.

(En fait, il n'est pas strictement nécessaire de recompiler un waptagent.exe, on peut très bien déployer un waptsetup-tis.exe avec des options de lignes de commande adéquates pour fixer les paramètres repo_url, wapt_server, ajouter les certificats, etc...)