téléchargement
Nagios: Superviser les comptes Active Directory
0L’objectif de ce plugin pour Nagios est de superviser l’état des comptes AD (oui, je ne fais pas que du SCOM malgré un ouvrage ENI dessus!)
J’utilise l’agent nsclient++ sur les serveurs afin de pouvoir exécuter des scripts PowerShell entre autre. On a donc:
Nagios => check_nrpe => script powershell => retour nagios
Je m’appui sur le module PowerShell Standard ActiveDirectory. Cela fonctionne également sur les serveurs Core.
La supervision peut porter sur:
- Account Disabled
- Account Expired
- Account Expiring
- Account Inactive
- Locked Out
- Password Expired
- Password Never Expires
La sortie fournie les données pour avoir un graphe (performance data)
Configuration testée
Linux:
- Centos 6.4 x64
- Nagios 3.4.4
- check_nrpe 2.13
- Centreon 2.4.2
Active Directory:
- Windows Server 2008 R2 / Windows Server 2012
- nsclient++ 0.4.1 x64
- Serveurs Core et normaux
Arguments du script
- action (LockedOut par défaut)
- searchBase (tout le domaine par défaut)
- seachScope (récursif par défaut)
- maxWarn (avertissement si supérieur)
- maxCrit (Critique si supérieur)
action peut être:
AccountDisabled,AccountExpired,AccountExpiring,AccountInactive,LockedOut,PasswordExpired,PasswordNeverExpires
LockedOut par défaut
searchBase peut être:
dc=mydomain,dc=com / ou=my users,dc=mydomain,dc=com
tout le domaine par défaut
seachScope peut être:
Base,OneLevel,Subtree
Subtree par défaut
maxWarn and maxCrit doivent être des entiers
Exemples d’utilisation
Exemple en exécution directe PowerShell:
PS C:\Program Files\NSClient++\scripts> . .\lotp_check_ad_accounts.ps1 AccountInactive "dc=mydomain,dc=com" subtree 5 10 CRITICAL: 216 AccountInactive|216;5;10 PS C:\Program Files\NSClient++\scripts>
Exécution NRPE:
[root~]# /usr/lib64/nagios/plugins/check_nrpe -H prd-dom-dc01 -n -c check_ad_account -a AccountInactive \"dc=pmside,dc=net\" subtree 5 10 CRITICAL: 216 AccountInactive|'AccountInactive'=216;5;10 [root~]#
Installation:
Sur les DC:
- Activer l’exécution de scripts PowerShell non signés : Set-ExecutionPolicy RemoteSigned
- copier le script dans C:\Program Files\NSClient++\scripts
- Ajouter dans le fichier nsclient.ini:
- [/settings/external scripts/wrapped scripts]
check_ad_account=lotp_check_ad_accounts.ps1 $ARG1$ $ARG2$ $ARG3$ $ARG4$ $ARG5$
- [/settings/external scripts/wrapped scripts]
Configuration:
Par exemple, sur Centreon, en ajoutant la commande:
$USER1$/check_nrpe -H $HOSTADDRESS$ -n -c check_ad_account -a $ARG1$ \"$ARG2$\" $ARG3$ $ARG4$ $ARG5$
Téléchargement
(enlever le .txt à la fin)
Code source en direct si le téléchargement ne passe pas:
# ==================================================================== # Search in AD for lockedout account. To be used through NRPE / nsclient++ # Author: Mathieu Chateau - LOTP # mail: mathieu.chateau@lotp.fr # version 0.1 # ====================================================================# # Require Set-ExecutionPolicy RemoteSigned.. or sign this script with your PKI # # ============================================================ # # Do not change anything behind that line! # param ( [string]$action="LockedOut", [string]$searchBase="", [string]$searchScope="Subtree", [int]$maxWarn=5, [int]$maxCrit=10 ) # check that powershell ActiveDirectory module is present if(Get-Module-Name "ActiveDirectory" -ListAvailable) { try { Import-Module-Name ActiveDirectory } catch { Write-Host "CRITICAL: Missing PowerShell ActiveDirectory module" exit 2 } } else { Write-Host "CRITICAL: Missing PowerShell ActiveDirectory module" exit 2 } # check params if provided if($action -notmatch "^(AccountDisabled|AccountExpired|AccountExpiring|AccountInactive|LockedOut|PasswordExpired|PasswordNeverExpires)$") { Write-Hos t"CRITICAL: action parameter can only be AccountDisabled,AccountExpired,AccountExpiring,AccountInactive,LockedOut,PasswordExpired,PasswordNeverExpires. Provided $action" exit 2 } if($searchScope -notmatch "^(Base|OneLevel|Subtree)$") { Write-Host "CRITICAL: searchScope parameter can only be Base,OneLevel,Subtree. Provided $searchScope" exit 2 } if(($searchBase -ne "") -and $searchBase -ne ((Get-ADDomain).DistinguishedName)) { $search=Get-ADObject -Filter 'ObjectClass -eq "OrganizationalUnit" -and DistinguishedName -eq $searchBase' if ($search.Count -ne 1) { Write-Host"CRITICAL: SearchBase not found or duplicate. Provided $searchBase" exit 2 } } else { $searchBase=(Get-ADDomain).DistinguishedName } $command="Search-ADAccount -"+$action+" -SearchBase '"+$searchBase+"' -SearchScope "+$searchScope $result=invoke-expression $command if($result.Count -gt $maxCrit) { $state="CRITICAL" $exitcode=2 } elseif($result.Count -gt $maxWarn) { $state="WARNING" $exitcode=1 } else { $state="OK" $exitcode=0 } $output=$state+": "+$result.Count+""+$action+"|"+$action+"="+$result.Count+";"+$maxWarn+";"+$maxCrit Write-Host $output exit $exitcode
Windows Server 2008 R2 – Administration avancée est sorti!
1La nouvelle version du livre pour Windows Server 2008 R2 est disponible chez ENI, toujours à la fois en livre papier et numérique
Il s’applique toujours à la version précédente, car on a spécifié quand c’est R2 seulement. Il inclut également un nouveau chapitre dédié à la haute disponibilité
Livre: Confessions of a public speaker
0J’ai découvert ce livre via le blog sqlblog. Il est anglais mais avec des termes accessible. Pour une fois, ce n’est pas un livre sur l’informatique, bien que l’auteur ait travaillé chez Microsoft et rencontré Bill Gates dans l’ascenseur!
Il explique de façon vraiment clair et marrante les travers lorsque l’on parle en public, et propose des solutions qui ont fonctionnées pour l’auteur.
Je l’ai pris chez O’Reilly directement, car ils le proposent en PDF électronique sans protection (19,99$). Idéal pour un stockage dans mon evernote.
L’auteur n’est pas avare en ressources à travers son site http://www.scottberkun.com

Petit outil sympa
1Si vous avez comme moi beaucoup d’applications sur votre PC, Update checker est fait pour vous ! Ce petit freeware scan la machine et vous dit les logiciels pour lesquelles une nouvelle version existe, en indiquant votre version versus la nouvelle.
Le tout avec le lien à droite pour télécharger directement!
Pour le download, c’est par ici:
http://www.filehippo.com/updatechecker/
Masterisation de serveurs: Dell OpenManage Deployment Toolkit
0Dell propose une solution gratuite de masterisation de serveurs basée sur WinPE ou Linux au choix
L’outil ne paye pas de mine à premier abord (que des .exe et bat, pas d’interface graphique accueillante).
Cependant, tout le nécessaire est là pour:
- Déployer un windows de façon automatisée (y compris Windows 2008)
- Ajouter des pilotes, notamment de stockage de masse
- Injecter des pilotes pour un déploiement sur du matériel différent.
Documentation (User guide): http://support.dell.com/support/edocs/software/dtk/
Téléchargement de Dell OpenManage Deployment Toolkit:
Reprenez le contrôle d’Outlook
0Si vous recevez trop de mail, voici 2 freeware très puissants:
Microsoft Email Prioritizer
http://www.officelabs.com/projects/emailprioritizer/Pages/default.aspx
xobni (inbox à l’envers)
J’ai traduis PowerGUI en Français !
0Comme indiqué sur le blog de Dmitry, j’ai traduis en Français l’interface de PowerGUI. Il s’agit à la fois d’un IDE pour PowerShell, est une console à modeler soit en même en PowerShell
Le pack français est téléchargeable ici:
http://powergui.org/entry!default.jspa?categoryID=270&externalID=1961
Téléchargement: Visio 2007 Professional SQL Server Add-In
0Visio Infrastructure for SQL Servers is a tool which is meant for IT administrators who require constant interactions with the users for the installations of the SQL server in any IT infrastructure.
Gérer les GPO depuis un VISTA SP1
0Si vous souhaitez gérer vos GPO depuis un PC sous Vista SP1, je vous recommande d’utiliser le pack RSAT de Microsoft:
Microsoft Remote Server Administration Tools for Windows Vista (KB941314)
Ce pack est initiallement prévu pour gérer du Windows 2008, mais cela fonctionne avec du 2003 aussi
Une fois installé, il faut activer les features:


