Comment déployer un logiciel au format MSI par GPO ?
Sommaire [-]
I. Présentation
C'est un grand classique que nous allons voir aujourd'hui : l'installation d'un logiciel par GPO. Une opération simple et bien pratique qui va permettre de déployer un logiciel sur les postes et serveurs de votre infrastructure à l'aide d'une stratégie de groupe.
L'avantage de cette solution, c'est que si vous disposez d'un domaine Active Directory, c'est une solution native. Même si ce n'est pas aussi complet qu'une solution tierce, cela rend bien des services. Il existe des logiciels spécialisés dans le déploiement des logiciels : SCCM, WAPT, PDQ Deploy, etc.
Voici deux cas concrets d'utilisation des GPO pour déployer un logiciel :
- Mettre à jour un logiciel sur votre parc informatique
- Installer un nouveau logiciel sur votre parc informatique
Vous utilisez un logiciel sur votre parc et une mise à jour de sécurité vient de sortir ? Une GPO va permettre de faciliter cette opération. Enfin, j'ai envie de dire ça dépend !
Pour déployer un logiciel sur votre parc informatique, il y a deux grands cas de figure :
- Le package d'installation du logiciel est au format "MSI" : vous pouvez le déployer avec une GPO d'installation de logiciel, c'est l'idéal !
- Le package d'installation du logiciel est au format "EXE" : vous pouvez le déployer par GPO en mode silencieux si l'exécutable a les paramètres nécessaires, et il faudra créer un script d'installation vous-même. La GPO de type "Installation de logiciel" prend seulement en charge les packages MSI
Dans ce tutoriel, je vais traiter le cas de l'installation de logiciels au format MSI.
II. Créer un partage pour stocker le fichier MSI
Dans un premier temps, je vous invite à créer un partage qui sera utilisé pour déposer le fichier MSI à déployer par GPO. Ce partage pourra servir pour stocker les autres logiciels que vous souhaitez déployer par la suite.
Informations sur le partage :
- Nom du partage : Applications$
- Droits sur le partage : "Tout le monde" en contrôle total (la restriction sera appliquée par les droits NTFS)
- Droits NTFS sur le dossier du partage : "Ordinateurs du domaine" en lecture seule
- Partage accessible via ce chemin : \\SRV-ADDS-01\Applications$
Pour cet exemple, je vous propose de déployer le navigateur Firefox ESR, au format MSI, sur une machine Windows 10 avec une GPO.
Commencez par télécharger le package MSI sur cette page : Firefox ESR
Une fois avoir créé le partage correctement, on peut tenter un accès et déposer le fichier MSI à déployer (à l'aide d'un compte administrateur) :
Maintenant que le fichier est à disposition des ordinateurs et serveurs du domaine, nous allons pouvoir passer à la création de la stratégie de groupe pour déployer Firefox.
III. Installer un MSI par GPO
A. Le mode "Attribué"
Ouvrez la console "Gestion de stratégie de groupe" et créez une nouvelle GPO : Clic droit sur "Objets de stratégie de groupe" puis "Nouveau". Nommez cette GPO, par exemple "Deployer-Firefox-ESR".
Modifiez cette GPO et accédez à l'emplacement suivant :
Configuration ordinateur > Stratégies > Paramètres du logiciel > Installation de logiciel
Effectuez un clic droit sur "Installation de logiciel" puis sous "Nouveau" cliquez sur "Package".
Vous devez indiquer le chemin vers le fichier MSI. N'utilisez pas le chemin local, mais le chemin réseau vers le partage pour rechercher le fichier MSI.
Lorsque l'on déploie un logiciel, il y a deux modes principaux :
- Publié : ce mode est disponible dans le cas de l'installation d'un logiciel dans les paramètres utilisateurs. Le logiciel est alors disponible à l'installation sur la machine, mais il ne s'installe pas automatiquement. L'utilisateur peut installer le logiciel s'il en a besoin.
- Attribué : ce mode sert à installer un logiciel par GPO sur une machine, de manière automatique. C'est ce qui nous intéresse aujourd'hui.
Cochez "Attribué" et cliquez sur "OK".
Le programme d'installation apparaît comme ceci :
Sans rien faire de plus, notre GPO est prête à l'emploi. Vous pouvez fermer cette fenêtre, nous y reviendrons un peu plus tard. Pensez à lier cette GPO sur l'unité d'organisation qui contient les ordinateurs sur lesquels déployer l'application.
⭐ Besoin d'aide pour manipuler la console de Gestion des stratégies de groupe ? Regarde notre vidéo !
Ensuite, pour tester, connectez-vous sur une machine où s'applique la GPO, ouvrez une console PowerShell et saisissez la commande suivante :
gpupdate /force
Vous allez avoir le message "L'extension côté client de la stratégie de groupe Software Installation n'a pas pu appliquer un ou plusieurs paramètres, car les modifications doivent être traitées avant le démarrage système ou la connexion utilisateur". En fait, cela signifie que la GPO pour installer le logiciel ne s'est pas appliquée correctement, car il faut redémarrer le PC pour que l'installation soit effectuée au prochain démarrage.
À la question "OK pour redémarrer ?", indiquez "O" et appuyez sur Entrée.
Suite au redémarrage de la machine, l'application Firefox est bien installée sur ma machine ! Dans l'observateur d'événements, on peut d'ailleurs voir que la GPO "Deployer-Firefox-ESR" est bien traitée. Le message "Démarrage du traitement d'extension Software Installation" est indiqué.
Il est à noter que dans les propriétés d'un paquet, vous pouvez gérer sa désinstallation et ses mises à jour avec les versions suivantes. Nous y reviendrons.
B. Le mode "Publié"
Passons maintenant au mode "Publié" : il s'agit du mode qui permet de mettre à disposition le logiciel sur les postes, sans l'installer systématiquement. Autrement dit, l'utilisateur pourra installer le logiciel s'il le souhaite, mais ce ne sera pas déployé automatiquement comme avec le mode "Attribué".
Pour cet exemple, nous allons mettre à disposition Chrome à nos utilisateurs. Pour commencer, téléchargez le fichier MSI sur le site de Google à cette adresse : Package Chrome
Prenez le "Package Chrome pour Windows". Vous allez obtenir un ZIP, à l'intérieur prenez le fichier "GoogleChromeStandaloneEnterprise64.msi" du dossier "Installers".
Mettez ce fichier à disposition ce fichier sur notre partage "Applications". Il faut également modifier les droits NTFS sur notre partage pour le rendre accessible au groupe "Utilisateurs authentifiés" (ou à un groupe de sécurité plus spécifique, tout dépend à quelle échelle vous souhaitez publier ce logiciel).
Passons maintenant à la GPO. À l'aide du Gestionnaire de stratégies de groupe, créez une nouvelle GPO. Par exemple, nommez cette GPO "Publier-Chrome".
Modifiez cette GPO (via un clic droit dessus) et parcourez l'arborescence comme ceci :
Configuration utilisateur > Paramètres du logiciel > Installation de logiciel
Effectuez un clic droit sur "Installation de logiciel" puis "Nouveau", "Package".
Indiquez le chemin UNC vers notre package MSI correspondant à Google Chrome. Comme pour l'exemple précédent, c'est bien le chemin réseau qu'il faut indiquer. Dans mon cas :
\\srv-adds-01\applications$\GoogleChromeStandaloneEnterprise64.msi
Choisissez ensuite le mode "Publié" et cliquez sur "OK".
La GPO est prête : il ne reste plus qu'à l'associer à une OU qui contient les utilisateurs ciblés. Dans mon cas, je crée une liaison avec l'OU "Salariés".
Passons maintenant sur le poste client, sous Windows 10 pour ma part... Connectez-vous avec un utilisateur qui est dans l'OU concernée. Pour ma part, je me connecte avec le compte "Salarie01" qui est dans l'OU "Salariés".
Accédez à l'emplacement suivant :
Paramètres > Applications > Applications et fonctionnalités
Sur la droite, cliquez sur "Programmes et fonctionnalités" (ou tout en bas si vous avez un écran avec une faible résolution ou une fenêtre réduite).
Ensuite, sur la gauche, cliquez sur "Installer un programme à partir du réseau".
C'est magique : "Google Chrome" apparaît dans la liste. Il suffit de cliquer dessus puis de cliquer sur "Installer". L'installation va se lancer : vous n'auriez rien à faire. S'il y a un message qui évoque un chemin d'accès qui s'affiche à l'écran, vérifiez les droits sur votre partage, au niveau NTFS.
Note : si l'on se connecte avec un utilisateur sur lequel ne s'applique pas cette GPO, il ne pourra pas installer le logiciel ! Par contre, si l'utilisateur "salarie01" l'installe, un autre utilisateur pourra en profiter aussi sur sa session !
Si l'on regarde dans l'observateur d'événement, nous voyons que Windows a installé Google Chrome à l'aide du MSI hébergé sur le partage.
IV. Mettre à jour une application par GPO
Je vais vous expliquer comment mettre à jour une application par GPO. En fait, nous allons voir comment passer de Firefox ESR 78.6.1 (version déployée dans la première partie du tutoriel) à la version 78.7.0.
Tout d'abord, il faut récupérer le package MSI sur le site Firefox comme toute à l'heure... Et le positionner sur le partage, sur notre serveur.
À partir de là, on va retourner modifier la GPO "Deployer-Firefox-ESR". Retournez à cet endroit :
Configuration ordinateur > Stratégies > Paramètres du logiciel > Installation de logiciel
Comme dans la première phase, on va ajouter un nouveau package : Nouveau > Package. Indiquez le chemin réseau vers le fichier MSI de la version 78.7.0 de Firefox ESR.
Sélectionnez le mode "Attribué" ou directement "Avancé". Si vous avez pris le mode "Attribué", effectuez un clic droit sur "Mozilla Firefox 78.7.0esr x64 fr" dans la liste et cliquez sur "Propriétés".
Ensuite : cliquez sur l'onglet "Mises à niveau" et cliquez sur "Ajouter".
Choisissez "l'objet de stratégie de groupe (GPO) actuel", car le paquet à mettre à jour est dans la même GPO. On pourrait avoir une mise à jour différente pour déployer et mettre à jour, ce qui permet notamment de tester les versions plus facilement. Sélectionnez le package Firefox dans la zone "Package à mettre à niveau".
Choisissez également l'option "Le package peut mettre à niveau le package existant", car on peut mettre à jour Firefox directement. Il n'est pas nécessaire de désinstaller la version actuelle pour réinstaller ensuite cette nouvelle version. En fait, pour cette option tout dépend du logiciel.
Validez. Il ne reste plus qu'à faire un "gpupdate /force" sur le poste client, à redémarrer et Firefox doit être mis à jour sur la machine ! ?
V. Supprimer une application déployée par GPO
Pour finir, nous allons voir qu'il est possible de demander à la GPO de désinstaller l'application des postes où nous l'avons installée.
Dans la GPO, on va cliquer sur le paquet à désinstaller puis sous "Toutes les tâches", cliquez sur "Supprimer".
Il y a deux choix : soit on supprime le paquet de la GPO pour empêcher qu'il soit installé sur des machines supplémentaires, ce qui correspond à l'option "Autoriser les utilisateurs à continuer à utiliser le logiciel, mais interdire de nouvelles installations". Soit on veut, non seulement arrêter de le déployer, mais aussi le désinstaller sur les postes où il est déjà installé, cela correspond à l'option "Désinstaller immédiatement le logiciel des utilisateurs et des ordinateurs".
Il suffit de choisir l'option que vous souhaitez et ensuite laissez le temps à votre GPO de s'actualiser sur vos machines pour que cela prenne effet dans le cas d'une désinstallation.
Voilà, vous avez désormais les clés pour déployer des logiciels sur vos postes de travail ! Simple à utiliser, les stratégies de groupe de type "Software Installation" sont limitées à l'utilisation de packages MSI. Pour un exécutable, il faudra passer par un script : cela fera l'objet d'un autre article.
Excellent tutoriel. J’ai connu ton blog il y a quelques mois, et c’est clairement la référence pour les sysadmin débutants, surtout pour l’univers Windows Server.
J’ai également une demande, pourrais-tu rédiger un tutoriel pour déployer sur les bureaux de mon parc AD, un raccourci pointant sur une URL (raccourci qui s’ouvre donc dans le navigateur) ?
Seconde question en lien avec le tutoriel ci-présent, vas-tu également traiter de l’installation d’un .exe ?
Bonne journée et encore merci pour cet article.
merci votre explication est magnifique
nous sommes fier de vous merci pour les explications
très bien les tutos it-connect.
bravo continué comme ça
Bonjour j’ai suivis ce tutoriel : https://diyaz247.wordpress.com/2015/08/21/how-to-deploy-tightvnc-via-group-policy/
Pour installer tightVNC (MSI modifié) sur tous mes PCs,
Mais à chaque fois j’ai le message « L’extension côté client de la stratégie de groupe Software Installation n’a pas pu appliquer un ou plusieurs paramètres, car les modifications doivent être traitées avant le démarrage système ou la connexion utilisateur »
Et peu importe si je redémarre, à chaque gpupdate j’ai ce message et on me demande de redémarrer
Que faire ?
J’ai exactement la même chose… :/
J’ai la même chose. Ça a fonctionné sur un poste en réseau filaire mais pas en wifi. Je pense que le temps que le wifi s’active, le temps imparti est expiré. Si quelqu’un a une solution je suis preneur
Hello,
Tu devrais essayer d’activer le paramètre « Toujours attendre le réseau lors du démarrage de l’ordinateur et de l’ouverture de session » sous Configuration ordinateur > Modèles d’administration > Système > Ouverture de session.
J’en parle dans cet article : https://www.it-connect.fr/fonctionnement-du-cache-des-gpo-group-policy-caching/
Bon courage 🙂
Salut, ça marche très bien pour W10 mais tout les poste en W11 impossible il ne s’installe pas malgré que j’ai ajouter les ADMx sur le serveur, une manip particulière à faire ou un paramètre en plus pour W11 ? Merci