[FRsAG] Gestion de configuration de postes/serveurs Windows et Linux

Denis Cardon dcardon at tranquil.it
Mar 2 Juil 19:58:29 CEST 2019


Bonjour Claude,

> <Historique et contexte>
>
> <tldr>
> Configurer postes de travail et serveurs Windows et Linux via des
> scripts PowerShell/Bash c'est bof.
> </tldr>

je trouve que tu as bien résumé les problèmes liés à la gestion de 
postes de travail et pourquoi les outils destinés aux serveurs ne sont 
pas forcément adapté.

L'outil WAPT [1] (disclaimer: je suis un des devs) correspond assez bien 
à tes besoins (à part la partie support client Ubuntu qui devrait arrivé 
d'ici l'année prochaine). En quelques lignes, WAPT :

* fonctionne en mode pull (pas de port ouvert en local)
* utilise uniquement les standard du web (https, json, websocket, etc.) 
donc proxy friendly
* utilise des paquets auto-contenu au format ZIP signé (similaire aux 
apk android) pour les logiciels, les configurations et les profils de postes
* intègre un environnement python self-contained pour écrire les scripts 
d'installation (pas de pseudo langage à apprendre)
* ouvre une websocket vers le serveur pour attendre les instructions
* pré-télécharge en cache les maj pour les installer à l'extinction du 
poste (fonctionnement par défaut)
* a son modèle de sécurité basé sur de la cryptographie asymétrique, 
avec la clef privée conservée sur le poste de l'adminsys (ie. même si 
ton serveur est owné, tes postes ne seront pas directement vulnérable)

Bref, gérer des postes clients Windows c'est pas simple et pas rigolo, 
mais avec un outil comme WAPT ça redevient supportable (c'est un client 
qui me l'a dit un jour).

Tu vas te dire que c'est trop beau... WAPT est un outil écrit par des 
adminsys pour des adminsys. Des fois on est jamais mieux servi que par 
soit même :-)

Bonne soirée,

Denis

[1] https://www.wapt.fr/fr/doc/

>
> En charge d'un parc hétérogène de postes de travail Windows (7, 8, 10)
> et de quelques Ubuntu je suis à la recherche d'un unique outil me
> permettant d'appliquer des règles de configuration (compte
> Administrateur/root, logiciels/packages installés, etc.) sur les postes
> Et comme je gère aussi des serveurs Linux : l'outil servira également à
> ça (en ré-utilisant certaines règles des poste Ubuntu).
>
> Actuellement, vu qu'on (re-)installe beaucoup plus de postes Windows que
> d'Ubuntu : on a déjà un script PowerShell basé sur Boxstarter[1] et
> Chocolatey mais il a les lacunes suivantes :
>
> * Doit être mis à jour quand Microsoft change certains comportements de
>   Windows (gestion des certificats, des utilisateurs, etc.).
> * N'a pas de moyen d'être re-exécuté pour défaire ce qu'un utilisateur
>   aurait changé (ou Windows lors d'une MAJ) ou pour appliquer/déployer
>   un changement de configuration (modification de la longueur de mot de
>   passe, nouveau logiciel, etc.).
>
> Cet outil dédié Windows donc s'occupe de :
> * la configuration Windows (certificats, politiques mot de passe, etc.)
> * la configuration de la session utilisateur d'un nouvel arrivant
> * l'installation des logiciels (via Chocolatey)
> * la configuration des logiciels (typiquement Firefox et Thunderbird)
> Mais pas de l'installation de l'OS (ce qui nous convient pour l'instant)
> (Pour Linux on a différents scripts Bash similaires.)
>
> Tout ça prends du temps à maintenir et est difficilement transmissible à
> un remplaçant.
>
> Donc je suis à la recherche d'un vrai outil pour faire tout ça.
>
> </Historique et contexte>
>
> <Besoin>
>
> J'apprécie un outil gérant l'idempotence et où la configuration est
> plutôt en mode déclaratif (l'état que je veux avoir) via un pseudo
> langage éventuellement, tout en laissant la possibilité d'exécuter des
> scripts brut (Bash, PowerShell, etc.).
>
> Le parc n'est pas énorme donc la rapidité d'exécution n'est pas un
> critère principal.
> Par contre il y a des portables qui peuvent donc être injoignables par
> moment.
>
> Les postes de travail ont tous OpenSSH mais sous Windows[2] il a
> tendance à se faire désactiver/casser (moins depuis certaines versions)
> donc je préfère un outil ayant son propre agent (en pull et/ou en push).
>
> Pour l'instant j'hésite entre Chef[3] et Rudder[4] mais j'ai
> l'impression que le premier a plus de fonctionnalités/connecteurs que le
> premier mais perdu son interface graphique (Chef Manage)...
>
> Lors de mes recherches je suis notamment tombé sur cet article :
> « Ansible, Chef, Puppet… Pourquoi ça ne juste marche pas :( »[5]
> de septembre 2014 qui compare 3 outils selon l'approche d'un sysadmin
> qui veut que le code représente fidèlement les relations entre les
> serveurs et logiciels (tels qu'elles sont mentalement dans la tête de
> l'équipe de sysadmin).
>
> Il souligne que les 3 outils ont des problèmes liés aux rôles, à
> l'héritage et la composition qui font que l'outil seul ne suffit pas à
> se représenter de manière logique les fonctions/relations de chaque
> composants.
> C'est une approche qui me parle et je partage l'avis de l'auteur.
>
> Cependant, c'était il y 4,5 ans et les outils ont certainement évolués
> depuis (confirmé par les commentaires).
>
> Est-ce que vous auriez des avis (ou comparatifs récents) sur ces points là ?
>
> Merci d'avance
>
> </Besoin>
>
> En information complémentaire : l'inventaire du parc est "tenu" dans
> GLPI[6] (avec FusionInventory[7]) qui reste notre référentiel.
>
> [1]: https://boxstarter.org
> [2]: https://chocolatey.org/packages/openssh
> [3]: https://www.chef.io
> [4]: https://www.rudder.io
> [5]:
> https://blog.imirhil.fr/2014/09/30/ansible-chef-puppet-pourquoi-ca-ne-marche-pas.html
> [6]: https://glpi-project.org
> [7]: http://fusioninventory.org
>

-- 
Denis Cardon
Tranquil IT
12 avenue Jules Verne (Bat. A)
44230 Saint Sébastien sur Loire (FRANCE)
tel : +33 (0) 240 975 755
http://www.tranquil.it

Tranquil IT recrute! https://www.tranquil.it/nous-rejoindre/
Samba install wiki for Frenchies : https://dev.tranquil.it
WAPT, software deployment made easy : https://wapt.fr


Plus d'informations sur la liste de diffusion FRsAG