Pour bien suivre ce tuto, il est nécessaire de disposer des éléments suivants :
- Plusieurs machines dont dont un contrôleur de domaine – Les autres machines sont bien évidemment membres de ce domaine
- Avoir un partage réseau à disposition qui puisse être accessible à l’ensemble des machines et sur lequel nous déposerons les sources des applications à déployer
- Se procurer les sources des logiciels que l’on souhaite déployer au format package MSI – Pour l’exemple, j’ai utilisé Firefox
- Savoir ce qu’est un AD et une GPO
Pour faire court, les GPO ou en français « stratégies de groupe » permettent de gérer de manière globale des ordinateurs ou des utilisateurs au sein d’un domaine Active Directory. C’est en général via les GPO que dans votre lycée ou collège on vous empêche d’ouvrir le panneau de configuration ou de modifier le fond d’écran etc.
Dans mon cas, je vais virtualiser l’ensemble via VMware WorkStation. La première machine porte le doux nom « CTRLDMN » et la seconde sur laquelle on souhaite déployer l’application porte le nom de « TARGET« . Toutes les captures d’écran proviennent d’un Windows Server 2008 R2 SP1 EN.
Etape 1 : Préparer votre partage réseau (si ce n’est pas déjà fait) et y déposer les sources des applications à déployer. Dans mon exemple, il s’agit simplement d’un VHD (Virtual Hard Disk) que j’ai créé sur ma partition C: et à laquelle j’ai ensuite associé la lettre S. Cette zone de partage peut-être un répertoire partagé situé sur n’importe quel disque dur partagé (NAS, SAN…). On y dépose notre package MSI de Firefox.
NB : Vous pouvez récupérer des packages MSI en vous rendant sur FrontMotion.
Etape 2 : Lancement de l’utilitaire de gestion des GPO – Dans la barre démarrer, recherchez l’outil « Group Policy Management« . Vous devriez visualiser un outil qui ressemble à peu de chose prés à la capture ci-dessus. Nous pourrions choisir de déployer notre application sur une OU bien précise mais pour l’exemple nous allons créer une GPO qui s’appliquera à l’ensemble du domaine et donc à tous les utilisateurs.
Cliquez du bouton droit sur le domaine et sélectionnez l’option « Create a GPO in this domain, and Link it here« .
Laissez le menu déroulant à l’option par défaut et nommez votre GPO « firefox« .
Dans un contexte de production, vous auriez bien évidemment donné un nom un peu plus clair tel que : « Déploiement de Firefox 3.0.x ». 😉
Etape 3 : Votre GPO est maintenant créée. Maintenant, il faut la remplir. Pour cela, cliquez du bouton droit sur celle-ci et sélectionnez l’option « Edit« . Choisissez l’option de déploiement « Advanced » (nous y reviendrons plus tard).
Etape 4 : Nous pouvons maintenant choisir parmi toutes les options de GPO possibles. Nous pourrions bloquer le fond d’écran pour tous les utilisateurs du domaines, supprimer l’accès au panneau de configuration, définir le temps d’apparition pour l’écran de veille… Bref, vous pouvez faire beaucoup de choses !
Le mieux est encore de vous promener dans les menus pour tester différentes options afin d’avoir un meilleure idée des possibilités.
Ce qui nous intéresse, nous, se trouve dans les menus suivants :
- Firefox
- User configuration
- Policies
- Software Settings
- Software Installation
Cliquez du bouton droit dans la zone à droite : « New« , « Package » puis sélectionnez ensutie l’emplacement où se trouve votre MSI de Firefox.
Etape 5 : Vous devriez voir apparaître une fenêtre pour personnaliser les options de votre package. Si ce n’est pas le cas, il vous suffit de cliquez du bouton droit sur le package et de sélectionner « Properties« . Sélectionnez le « Deployment type » Assigned pour ne pas laisser le choix d’installer ou non l’application à vos utilisateurs.
Enfin, veillez à cocher les cases suivantes :
- Uninstall this application when…
- Install this application at Logon
Pour limiter les intéractions utilisateurs, vous pouvez éventuellement sélectionner l’option « Basic » dans l’option « Installation user interface options« . Dans mon cas, ce n’est pas gênant vu que mon package MSI est fait de telle sorte qu’il ne pose aucune question.
Etape 6 : Il nous reste maintenant à définir pour quels type d’utilisateurs / groupes / OU cette GPO doit-être appliquée. Dans mon cas, je n’ai créé que très peu d’utilisateurs au sein du domaine et j’ai donc choisi le groupe « Administrators« .
Et voilà ! C’est terminé 🙂 !
Si vous avez tout bien suivi jusque là, il n’y a pu rien à faire du côte de cette machine. Votre GPO est prête, active et associée au domaine.
Il ne vous reste plus qu’à vérifier sur la seconde machine, TARGET, si l’application s’installe bien. Vous devriez voir ce message au moment où vous allez vous identifier sur la machine cible (en plus du classique « Preparing Desktop…) :
Et finalement, vous arrivez sur votre bureau… avec un nouveau raccourci !
Dans certains cas, et surtout si vous étiez déjà identifié sur la machine cible, vous devrez peut-être forcer la mise à jour de GPO avec la commande suivante : gpupdate /force.
Vous devrez alors peut-être vous Log-off / Log-In.
Il ne nous reste plus qu’à vérifier si notre application se lance correctement ! 🙂
Voilà, vous avez déployé votre première application via une GPO : Mozilla Firefox s’installera pour tous les utilisateurs membres de ce domaine et qui sont dans le groupe « Administrators ».
Prenez le temps de regarder tous les réglages et toutes les GPO pré-définies qui existent déjà dans Windows Server. Vous verrez que vous pouvez déjà personnaliser votre système en profondeur !
Si vous avez la moindre question ou si j’ai manqué de clarté à une étape précise, n’hésitez pas ! 🙂
- Aide Microsoft : http://technet.microsoft.com/en-us/windowsserver/bb310732
- Les GPO sur Wikipedia : http://fr.wikipedia.org/wiki/Strat%C3%A9gies_de_groupe
Bonjour,
J’aimerais savoir si il est possible d’avoir un affichage de l’installation d’un msi via GPO sur win7 avec un windows server 2008 R2 merci.
En principe non, car l’installation d’une application par GPO a justement pour intérêt d’installer une application de manière à ce que l’utilisateur n’ait pas besoin de confirmer ou réaliser aucune action particulière.
Lorsque vous activez cette GPO sur un utilisateur, vous avez sûrement remarqué qu’il y a des informations qui s’affichent au moment du Logon de l’utilisateur (au moment ou l’utilisateur se connecte) après qu’il se soit identifié. C’est à ce moment que l’installation de l’application est réalisée.
puis je savoir si c’est possible d’integrer un parametrage sur l’application? je veux installer un VNC à partir du GPO
Bonjour Kaim, comme tu le sais certainement le déploiement d’une application par GPO passe par le déploiement d’un exécutable de type EXE/MSI. Donc si tu souhaites déployer par GPO une application avec des paramètres spécifiques tu vas devoir repackager l’application ou embarquer tes éléments de configuration dans un fichier MST (si c’est un MSI) pour intégrer la configuration souhaitée à ton application.
puis savoir comment forcer la mise à jour des GPO à distance?
merci
Pour forcer la mise à jour des GPO vous pouvez utiliser la commande gpupdate /force comme indiqué dans l’article. Mais vous pouvez également saisir cette commande à distante via du Remote PowerShell ou via PSExec (voir les SysInternalTools).