diff --git a/content/articles/2021/installation_agent_fusioninventory_macos/index.md b/content/articles/2021/installation_agent_fusioninventory_macos/index.md new file mode 100644 index 0000000..2782873 --- /dev/null +++ b/content/articles/2021/installation_agent_fusioninventory_macos/index.md @@ -0,0 +1,91 @@ +Title: Installation facile de l'agent Fusion Inventory sur MacOS +Category: sysadmin +Tags: GLPI, fusioninventory, script, pl-fr +Date: 2021-01-12 22:38 +Cover: assets/backgrounds/article_fusioninventory.jpg + + +Dans le cadre de la gestion d'un parc informatique, j'ai mis en place +[GLPI][l_glpi] pour inventorier les machines et gérer les incidents. J'utilise +aussi le plugin [Fusion Inventory][l_fusioninv] pour la remontée automatique +des machines. + +Le client *Fusion Inventory* pour Windows **s'installe assez simplement**; un +assistant permet de remplir les différents champs nécessaires à son paramétrage. +Il est tout autre sous *MacOS* : il faut modifier le fichier `agent.cfg` +**directement dans le package** d'installation avant de le lancer. + +J'ai donc développé un script afin de faciliter le plus possible son +installation. Il est disponible sur mon [dépôt git personnel][l_gitperso] et une +copie est disponible sur [Github][l_github]. + +## Quoi qu'il fait le truc? + +Il télécharge automatiquement l'installeur MacOS de *Fusion Inventory* en +version `pkg` depuis les *"releases"* sur Github et modifie le fichier +`agent.cfg` en fonction des paramètres fournis en ligne de commande par +exemple : + +```shell +sudo ./install.sh -s https://glpi.exam.ple -u agent -p pass -t prodution +``` + +L'agent installé se connectera sur le serveur `https://glpi.exam.ple`, comme +l'accès au plugin est protégé par un mot de passe l'agent sera configuré pour +utiliser l'identifiant `agent` et le mot de passe `pass`. L'étiquette +`production` sera définie. + +### Les différents arguments du script + +```shell +./install.sh -t -t -s -u -p -h -v +``` + + * `-s --server` : adresse du plugin GLPI Fusion Inventory + * `-u --user` : nom d'utilisateur (authentification par `.htaccess` ou proxy) + * `-p --password` : mot de passe (authentification par `.htaccess` ou proxy) + * `-t --tag` : ajouter un tag (il est possible d'en mettre plusieurs en répétant + -t) + * `-h` : afficher l'aide et quitter + * `-v` : afficher la version et quitter + +## Personnaliser les valeurs par défaut + +Il est possible de personnaliser les valeurs par défaut. Il suffit pour ça +d'ouvrir le script `install.sh` avec votre éditeur de texte favori et de +modifier les lignes 30 à 33 : + +```bash +default_tags="web production" +default_password="My@gentP4ssw0rd" +default_user="agent" +default_server="https://agent.server.com" +``` + +Les valeurs spécifiées en ligne de commande **remplaceront celles par défaut** + +## Pour finir + +J'utilise ce script régulièrement pour **installer et mettre à jour** Fusion +Inventory sur les ordinateurs *Apple* de mon parc, il fonctionne aussi sur MacOS +Big Sur et sur même ceux à base de puces M1. + +Bien entendu il est très simple de le rendre compatible avec des machines Linux, +j'espère d'ailleurs en proposer une version rapidement. + +Pour ce qui est de Windows, il est tout à fait possible d'automatiser +l'installation de l'agent avec un script Powershell de la même manière. + +## À l'avenir + +Je prévois d'ajouter la possibilité d'ajouter des fonctions à exécuter avant et +après l'installation pour jouer avec l'API de GLPI et exécuter des actions une +fois la machine inventoriée. + +[l_glpi]:https://glpi-project.org/ +[l_fusioninv]:http://fusioninventory.org +[l_gitperso]:https://git.epha.se/ephase/fi_installer_macos +[l_github]:https://github.com/ephase/fi_installer_macos + +*[GLPI]:Gestion Libre de Parc Informatique +*[API]:Application Programming Interface