Articles Tagués ‘Windows PowerShell’

Hello everyone,

Si vous êtes amenés à créer des tâches planifiées pour exécuter des scripts PowerShell (script de check, d’audit, lancement d’opérations spécifiques…), eh bien notez que vous devez d’abord prendre connaissance de certaines informations pour que vos scripts se déclenchent correctement à l’heure schedulée.

Mon besoin

J’ai besoin de surveiller les changements apportés à un groupe AD à « Haut privilèges » tel que le groupe « Admins du domaine ». L’audit de ce groupe se fera via l’utilisation d’un script PowerShell (basé sur les Cmd-Lets du Module PS ActiveDirectory) et l’envoi de notification par mail se fera simplement via l’utilisation d’un serveur SMTP disponible sur le réseau (Cmd-Let Send-MailMessage).

Pour éviter d’investir du $$ dans une solution tierce de monitoring /alerte, j’utiliserais simplement une tâche planifiée qui exécute mon script d’audit AD chaque heure et qui m’envoi des notifications par mail pour rester informé de toute modification ayant eu lieu sur le groupe Domain Admins.

Comment ça marche ?

Dans l’exemple suivant, une tâche planifiée nommée « DA_Check » (Domain Admins_Check) sera créée, celle-ci sera configurée pour déclencher /exécuter de manière quotidienne le script D:\MyScripts\DA_Checker.ps1

Vous lancez le planificateur de tâches et vous créez votre tâche de manière classique

Arrivée à l’étape illustrée dans l’image ci-après, vous sélectionnez « Démarrer un programme »

Remplissez le champ « Programme/script » en respectant la syntaxe suivante : PowerShell -File « Emplacement_de_votre_script_PS »

Dans notre exemple, le script devant être exécuté par la tâche planifiée est placé dans D:\MyScripts\DA_Checker.ps1, la ligne de code à spécifier est donc :

Eh voilà, le tour est joué :).

A bientôt

HK

Publicité

Si vous cherchez un moyen pour lister tous les comptes utilisateurs AD « Désactivés », eh bien, The « Best & Easiest » way est l’utilisation de la Cmd-Let « Search-ADAccount », fournie avec le module PowerShell « ActiveDirectory »

Comment ça marche ?
  • Lancez Windows PowerShell (en tant qu’Administrateur) depuis un DC (Domain Controller) ou un serveur d’administration ayant les outils RSAT AD DS installés, et saisissez ensuite la commande suivante :
    • Search-ADAccount -AccountDisabled

That’s all :).

cover_windowsbkpserver2016

Cet eBook décrit en détail la fonctionnalité « Sauvegarde Windows Server » fournie (par défaut) avec Windows Server 2016.
Il s’agit d’une solution de sauvegarde flexible et puissante qui peut vous aider à bâtir un PRA optimisé (Plan de Reprise d’Activité ou DRP en anglais pour Disaster Recovery Plan) pour rétablir votre environnement de production en cas de problème (perte de données ou crash d’un serveur entier).

Les différentes méthodes de mise en œuvre, configuration et gestion de la solution sont détaillées dans cet eBook, à savoir :

WBAdmin.exe

WBAdmin.msc

Module PowerShell « WindowsServerBackup »

De plus, l’ouvrage repose sur la mise en place d’un projet « Real-World » de mise en œuvre d’une stratégie de sauvegarde à l’aide de la fonctionnalité « Sauvegarde Windows Server » pour protéger deux infrastructures systèmes Windows Server 2016 : Annuaire Active Directory & Infrastructure Applicative RDS
Enfin, plusieurs outils et scripts développés par l’auteur sont fournis avec le présent eBook. Ces derniers peuvent vous aider à accélérer le processus d’implémentation mais aussi vous faciliter la gestion de la solution de sauvegarde au quotidien.

A la fin de cet eBook, vous serez capable de :

Planifier et mettre en place une stratégie de Sauvegarde Windows Server

Créer et configurer des sauvegardes Windows Server

Exécuter les sauvegardes « Manuellement »

Planifier et automatiser l’exécution des sauvegardes

Restaurer les fichiers, dossiers et volumes

Récupérer l’état du système.

Restaurer les données des applications

Créer un rapport de sauvegarde quotidien

Scripter /Automatiser l’implémentation et la gestion de la solution « Sauvegarde Windows Server »

Read & Enjoy :).

 

Le format :: Broché :: est disponible sur Amazon.fr et Amazon.com, cliquez sur l’image ci-après pour en savoir plus :

Amazon_logo

Le format :: eBook [PDF] :: est disponible sur BecomeITExpert.com, cliquez sur l’image ci-après pour en savoir plus :

Logo_BecomeITExpert

 

S’applique à : Windows Server 2008 /2008 R2, 2012 /2012 R2 et 2016 | Windows Seven, Windows 8/8.1 et Windows 10

La « Tip of the Week » est un HowTo pour afficher la date du dernier redémarrage de Windows (Server & Client).

Ayant travaillé sur plusieurs projets d’Audit Infrastructure (Windows Server, P2T, Active Directory…) ces dernières années, j’ai pu constater que la plupart des serveurs Windows Server présentant des problèmes de stabilités et/ou dysfonctionnement n’ont aucun « redémarrage périodique » de planifié. Si nécessaire, ces serveurs sont donc redémarrés manuellement.

Redémarrer une machine Windows consiste à faire deux clics de souris ou saisir 2 mots depuis le Menu « Démarrer », mais quand il s’agit d’un serveur de production, l’opération devient plus compliquée : négocier, planifier le redémarrage du serveur, astreinte possible, intervention post-redémarrage possible (si effets de bord post-reboot) …

C’est la raison pour laquelle, le redémarrage d’un serveur Windows Server est souvent une tâche oubliée par les IT Admin /Ing de prod allergiques à ce type d’opération et ne voulant pas prendre le risque, résultat : lors de plusieurs audits réalisés chez différents clients (Banques, Assurances, Grand groupes de l’industrie …), j’ai souvent constaté que :

Plusieurs serveurs (quelques dizaines voire des centaines) n’ont pas été redémarrés depuis plusieurs mois voire plusieurs années (côté Banques & Assurances)

Les serveurs « en attente de redémarrage » présentent toujours des problèmes de stabilité au niveau de certains Services /Fonctionnalités Windows /Couches Applicatives spécifiques

Les serveurs qui n’ont pas été redémarrés hébergent pour la plupart des services /applications critiques (Standards & Métiers)

De plus, un Serveur Windows Server en attente de redémarrage (suite à l’installation de mises à jour Windows par exemple) peut bloquer plusieurs actions telle que l’ajout de nouvelles fonctionnalités /Services /Rôles /Apps, bloque l’utilisation de certaines fonctions /options et ce au niveau de plusieurs Snap-ins, il peut également bloquer (dans certains cas) l’accès distant à différents services …

Vous aurez compris, connaître la date du dernier redémarrage d’un serveur est une information précieuse qui peut vous aider à cerner un ou plusieurs problèmes présents celui-ci.

Ci-après, les différentes techniques vous permettant d’afficher la date du dernier reboot de Windows Server et Client.

Vous pouvez connaître la date du dernier redémarrage d’un Windows (Server & Client) via l’utilisation de différents outils /méthodes, à savoir :

Outil WMIC.exe

Windows PowerShell

Outil SystemInfo.exe

Script PowerShell

 

Via l’outil « WMIC.exe »

Utilisez la commande suivante : WMIC OS Get LastBootUpTime

1

Via Windows PowerShell

Utilisez la commande suivante : Get-CimInstance -ClassName Win32_OperatingSystem | Select CSName, LastBootUpTime
2

Via l’outil « SystemInfo.exe »

Utilisez la commande suivante : SystemInfo | Find /i « Heure de démarrage du Système »

Note : pour les OS en EN utilisez plutôt la commande suivante : SystemInfo | Find /i « System Boot Time »

3

Via Script (PS)

Un script PowerShell a été uploadé par « Gary L Jackson« , sur  la TechNet Gallery et disponible en téléchargement ici.

 

J’espère que cette astuce pourra vous être utile J

A bientôt.

ScriptGuyPic

Bonjour tout le monde,

Aujourd’hui, j’aimerais partager avec vous une astuce concernant Windows PowerShell.

Lors d’une intervention, la question suivante m’a été posée :

Comment cacher la console Windows PowerShell lors de l’exécution d’un script ?

La réponse est la suivante:

PowerShell.exe -WindowStyle Hidden -File D:\MonScriptPS.ps1

Lancez donc Windows PowerShell (en tant qu’Admin) et saisissez la commande ci-dessus en remplaçant D:\MonScriptPS.ps1 par le chemin de votre Script PowerShell.

Si toutefois vous n’avez pas le contrôle sur la manière dont le script est lancé /appelé, vous pouvez rajouter la ligne de code suivante au début de votre script.

Add-Type -Name win -MemberDefinition ‘[DllImport(« user32.dll »)] public static extern bool ShowWindow(int handle, int state);’ -Namespace native [native.win]::ShowWindow(([System.Diagnostics.Process]::GetCurrentProcess() | Get-Process).MainWindowHandle,0)

Save, Run and Enjoy :).

 

Depuis Windows Server 2012 et 2012 R2, le rôle RDS (Remote Desktop Services) peut être déployé et géré via Windows PowerShell, en effet un module PowerShell nommé « RemoteDesktop » est désormais disponible et regroupe plus de 70 cmdlettes dédiées au déploiement, configuration et gestion de la solution RDS.

Nous allons voir à travers cet article comment déployer RDS 2012 R2 à l’aide de Windows PowerShell dans les deux modes , à savoir :

Déploiement Standard

Démarrage Rapide

Liste des cmdlettes PowerShell pour RDS

Vous pouvez utiliser la commande suivante pour lister toutes les cmdlettes du module « RemoteDesktop »

  • Depuis Windows PowerShell lancé en tant qu’Administrateur, saisissez :

  Get-Command -Module RemoteDesktop

(suite…)

Malgré les améliorations apportées à l’interface de Windows PowerShell sous Windows 10, la plupart des administrateurs et ingénieurs systèmes préfèrent travailler sous PowerShell ISE qui facilite l’écriture des scripts PowerShell.

Microsoft a décidé de cacher (par défaut) Windows PowerShell ISE sous Windows 10, en effet, si vous saisissez « PowerShell » dans la zone de recherche du Menu Démarrer, le résultat retourné inclut uniquement Windows PowerShell et non pas Windows PowerShell ISE !

 

Si vous souhaitez uniquement placer l’icône Windows PowerShell ISE dans un emplacement particulier, comme par exemple « Le Bureau », il suffit de :

Utiliser la combinaison de touche « Drapeau Windows + R » pour faire apparaître le Menu « Exécuter »

(suite…)