Désactivation complète du protocole Ipv6 sur Microsoft Windows

Bonjour,

Aujourd’hui, je vous propose de traiter de la désactivation du protocole IPv6 sur le réseau local de votre entreprise.

Pourquoi désactiver le protocole Ipv6 ?

Mon expérience chez divers clients montre que ce protocole de communication n’est pas configuré ou simplement pas utilisé. Hors par défaut une adresse Ipv6 APIPA est attribué automatiquement a votre poste de travail ou serveur. Cette adresse attribuée automatiquement n’est donc pas soumise aux règles de sécurités de votre entreprise. Vous devenez donc vulnérable à de potentielles attaques via ce protocole.

Un exemple: https://gcn.com/articles/2013/08/09/ipv6-attack.aspx

Comment désactiver le protocole Ipv6 ?

Il existe plusieurs méthodes pour désactiver le protocole de communication IPv6 sur vos environnements Microsoft Windows. Toutes les méthodes de désactivation sont décrites dans la KB Microsoft suivante : https://support.microsoft.com/fr-fr/help/929852/how-to-disable-ipv6-or-its-components-in-windows

PowerShell

Exécuter la commande ci-dessous permettra de désactiver le protocole IPv6 après un redémarrage.

Comment réaliser un rapport d’audit ACTIVE DIRECTORY avec Microsoft LogParser 2.2 sous Windows 2008 R2

 

Bonjour à tous,

Cet article à pour objectif de vous présenter simplement l’outil Microsoft LogParser afin de réaliser des rapports d’audits sous un format HTML.

Dans le cadre de mes missions chez divers clients ne disposants pas d’outils d’audits centraliser souvent payant, il est reste essentiel de réaliser divers audits sur les serveurs Microsoft afin de répondre aux besoins initiaux.

Dans les petites et moyennes entreprises aujourd’hui plusieurs personnes disposent de droits de création, modification et suppressions d’objets dans l’Active Directory. Il est donc intéressant de pouvoir disposer rapidement d’informations sur les actions réalisées.

Dans cet article nous allons effectuer un Audit de « Qui fait quoi sur l’Active Directory » et le sortir un rapport en format HTML.

Comment Auditer les actions de l’Active Directory :

  • – Disposer d’un Active Directory.
  • – Activer l’audit de l’Active Directory par GPO.
  • – Récupérer les informations d’audit dans les journaux d’événements.
  • – Utiliser Microsoft LogParser pour générer le rapport.
  • – Un Fichier Excel fourni par Microsoft : Security Audit Events for Windows 2008R2

Avant de nous lancer dans la réalisation technique, voici un petit aperçu du résultat final :

clip_image002

Dans cet extrait de rapport, un objet de type « contact » à été crée par l’utilisateur « Admin1 » sur le contrôleur de domaine « AD01.domaine.local » le « 20/07/2012 à 17h26 » portant le nom de « TOTO ».

Cet extrait de rapport présente les 3 actions majeurs que nous allons auditer.

– Création d’objets Active Directory.

– Modification d’objets Active Directory.

– Suppression d’objets Active Directory.

Présentation des colonnes du rapport d’audit :

Colonne

Description

Serveur

Représente le contrôleur de domaine qui à traiter l’action.

Date et Heure

Représente la date d’exécution de l’action

Utilisateur Domaine

Représente l’utilisateur qui à exécuter l’action

Action

Représente l’action (création, modification, suppression)

AD-Objet

Path de l’objet Active Directoy

Type-Objet

Type d’objet Active Directory

Propriété

Propriété de l’objet modifié

Valeur

Valeur Enregistrée

Activation de l’Audit par GPO :

Pour réaliser cette GPO et comprendre le fonctionnement de l’Audit d’un domaine Active Directory, je vous conseil l’excellent article Microsoft Technet ci-dessous :

http://technet.microsoft.com/fr-fr/library/cc731607(v=ws.10)

Etape :

– Loguer vous en temps que Administrateur sur un de vos contrôleur de domaine

– Lancer la console de gestion des GPO.

          • Cliquer sur « Start » ou « Démarrer »
          • Cliquer sur « Run » ou « Start »
          • Exécuter la commande « gpmc.msc »

clip_image004

– Configurer votre GPO afin d’activer « Audit Directory Change »

        • Windows Settings / Sécurity Settings / Local Policies / Audit Policiy / DS Acces

clip_image006

– Enregistrer votre GPO et lier celle-ci à Unité d’Organisation (OU) Où sont stocké vos contrôleurs de domaine.

      • Domaine.local / Domains Controleurs

 

Configurer l’audit sur votre Domaine:

La GPO créé ne fait qu’activer l’audit sur vos contrôleurs de domaine, nous allons donc maintenant demander au service d’audit de nous envoyer toutes les informations sur les actions effectuées dans notre Active Directory.

Nous allons donc ajouter le compte « Tout le monde » ou « Everyone » (selon version de votre OS) dans les paramètres d’audit de l’Active Directory et configurer tout les types d’actions à auditer.

– Lancer la console « Active Directory Users and Computers »

      • Cliquer sur « Start » ou « Démarrer »
      • Cliquer sur « Run » ou « Start »
      • Exécuter la commande « dsa.msc »

clip_image008

– Dans la console « Active Directory Users and Computers », entrer dans les propriétés de votre domaine (cf : image ci-dessous)

clip_image010

– Dans les Propriétés du domaine, sélectionner l’onglet « Sécurité » puis cliquer sur « Avancer ».

– Dans la fenêtre des propriétés Avancer, sélectionner l’onglet « Audit » et cliquer sur « Add ».

clip_image012

– Dans la fenêtre d’ajout de compte, ajouter le compte « Tout le monde » ou « Everyone » (selon version de votre OS) puis cliquer sur « OK »

– Dans la configuration de l’audit sélectionner toutes les actions à Auditer et cliquer sur « OK » autant de fois que nécessaires pour valider la configuration. (cf : image ci-dessous)

clip_image014

Nous venons de configurer par GPO l’activation de l’audit sur l’ensemble de votre domaine et configurer les comptes qui doivent être audités. Dans notre cas, nous auditons tous les comptes qui effectuent des tentatives d’actions sur l’Active Directory.

 

L’Audit :

Bon c’est pas mal tout cela mais les informations d’Audit cela ce trouvent où ?

– Microsoft enregistre toutes les informations d’audit dans les journaux d’événements sous des ID spécifiques.

Ok, Mais comment savoir quel ID correspond à l’audit de notre AD ?

– Microsoft propose de télécharger un fichier sous un format Excel qui référence les ID des journaux d’événement.

Le lien  http://www.microsoft.com/en-us/download/details.aspx?id=21561

Voici un petit extrait qui nous sera bien utile :

DS Access

Directory Service Changes

5136

A directory service object was modified.

DS Access

Directory Service Changes

5137

A directory service object was created.

DS Access

Directory Service Changes

5138

A directory service object was undeleted.

DS Access

Directory Service Changes

5139

A directory service object was moved.

DS Access

Directory Service Changes

5141

A directory service object was deleted.

Vous l’aurez donc compris, les événements enregistrés avec les ID 5136, 5137, 5139, 5139, 5141 nous permettrons de pouvoir connaître les actions réalisées.

Seulement voila les journaux d’événement enregistrent seulement les événements d’audit que le serveur à traité, et dans une infrastructure Active Directory il y plusieurs domaines contrôleurs. Il serait long de devoir détailler tous les logs d’audit de tous nos contrôleurs de domaines afin de trouver l’information recherchée.

 

Microsoft LogParser :

Microsoft propose l’outil LogParser qui permet de pouvoir lire et traiter des logs.

Il serait bien long de décrire toutes les possibilités de cet outil mais en voici quelques unes que nous allons utiliser.

– Lecture des journaux d’événement.

– Ecriture des requêtes de filtrage des logs en format SQL.

– Sortie de traitement dans un fichier HTML.

Voir : http://technet.microsoft.com/fr-fr/scriptcenter/dd919274.aspx

Installation de LogParser 2.2 :

L’installation de l’outil ne vous posera aucuns problèmes particuliers sauf que je vous recommande personnellement d’installer l’outil dans un répertoire de type C:\Log-Parser-2.2.

Cela vous permettra d’accéder plus simplement à l’outil dans vos scripts de développement.

Comment accéder aux journaux d’événement avec LogParser :

Pour effectuer cela nous allons créer 2 fichiers dans C:\AUDIT.

Fichier Audit-AD.sql :

Ce fichier est la requête SQL que nous allons appliquer aux journaux d’événements de sécurité.

Dans cet exemple je dispose de 3 contrôleurs Active Directory, AD01, AD02, AD03, l’accès de la requête aux contrôleurs de domaines s’effectue via la ligne :

FROM

\\AD01\security,\\AD02\security,\\AD03\security

Nous souhaitons récupérer les ID 5136, 5137, 5139, 5139, 5141, cela s’effectue via la ligne :

Where Eventid=5136 OR Eventid=5137 OR Eventid=5138 OR Eventid=5139 OR Eventid=5141

Les informations à récupérer dans les logs sélectionnées sont dans la balise SELECT.

Fichier Audit-AD.TPL :

Ce fichier est le « Template » de sortie, il permet de structurer les réponses de LogParser dans un fichier au format HTML.

Lancement de la commande

C:\Log-Parser-2.2\LogParser -i:EVT file:C:\Audit\audit-ad.sql -o:TPL -tpl:C:\Audit\EVT\audit-ad.tpl -stats:off > C:\Audit\Audit-AD.HTML

Résultat de la commande est un fichier HTML nommé Audit-AD.HTML dans C:\Audit

clip_image015

Grace à cette commande, nous disposons d’un rapport d’Audit simple et rapide à étudier.

Le logiciel LogParser vous permet de réaliser bien d’autres rapports d’audits sous plein d’autres formats. Cet outil n’est pas simple a prendre en main au début mais avec un peux d’utilisation celui-ci deviendra rapidement un allier dans vos audit.

Voici quelques exemples réalisés avec l’outil LogParser 2.2 :

Depuis un serveur Exchange 2007, rapport graphique des mails reçu / heure :

clip_image017

Nombre des Hits sur un IIS :

clip_image019

Lien : http://blogs.iis.net/rakkimk/archive/2008/11/18/logparser-useful-logparser-scripts.aspx

 

Conclusion :

En conclusion la réalisation d’un rapport d’audit au format html demande un peux d’utilisation de l’outil LogParser mais vous permettra à de disposer d’informations simple à étudier afin de capitaliser et améliorer vos environnements.

J’espère que cet article vous aura plu. Je reste a votre écoute si vous avez des questions sur celui-ci ainsi que sur sa mise en œuvre.

A bientôt sur le TechNet Microsoft.

 

Liens de l’article:

Activation de l’Audit sur Active Directory : http://technet.microsoft.com/fr-fr/library/cc731607(v=ws.10)

Microsoft Logparser 2.2 : http://www.microsoft.com/en-us/download/details.aspx?id=24659

Security Audit Events for Windows 2008R2 : http://www.microsoft.com/en-us/download/details.aspx?id=21561

Comment exécuter une commande Powershell dans une page .Net

Bonjour à tous,

Cet article vous présente comment exécuter une commande Powershell dans une page ASP .NET. Cela permet de crée simplement et rapidement des rapports dynamiques.

Nous allons créer une page IIS qui récupéra l’état des services.

Allez c’est parti….

Avant tout, il nous faut un serveur IIS, Powershell avec le module active directory d’installé.

Installation de IIS 7.5 :

– Ajouter le Rôle IIS

– Sélectionner les Services de Rôles IIS : ASP.NET

Lancer l’installation.

Configuration de IIS :

Voici une l’étape clef, afin que notre page ASP puisse lancer des commandes powershell, il nous faut charger la librairie suivante:

System.Management.Automation

Nous allons donc indiquer à IIS de charger cette librairie.

image

Lancer la console IIS 7 et naviguer vers le site qui hébergera notre future page. Dans notre exemple c’est le site par défaut d’IIS.

Ouvrir la propriété .NET Compilation.

Cliquer sur image de la la propriété “Assemblies”

Ajouter la ligne :

System.Management.Automation, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35

Valider les changements dans IIS.

Nous voila prêt à crée des pages web en ASP .NET qui afficherons le résultat de commande Powershell.

Création de notre page web Get-Service :

Voici le code de notre page web:

Enregistrer le fichier sous le nom souhaité avec l’extension « .aspx ».

Dans mon exemple, le fichier ce nomme test-powershell.aspx

Voici le résultat de la page :

J’espère que cette article vous auras aidé à créer vos propre page dynamique de commande POWERSHELL via .NET.

Windows 2012 Serveur Core : Administration des cartes reseaux en Powershell

Bonjour,

Voici un petit article qui sera le premier d’une longue série du futur serveur Microsoft Windows 8 Serveur.

Dans cet article je vais vous présenter comment configurer et administrer vos cartes réseaux via le nouveau PowerShell V3. Avant toutes choses, la version utilisée pour rédiger cet article est la version BETA de Microsoft Windows 8 Serveur version Core. Des évolutions des commandes présentées sont donc possible.

L’interpréteur de commande POWERSHELL est devenu véritablement incontournable de nos jours, en effet il est bien plus efficace d’écrire des scripts POWERSHELL afin d’automatiser un grand nombre de taches. Sous Microsoft Windows 8 Serveur apporte une nouvelle version de POWERSHELL avec  un grand nombre de nouveautés et permet d’affirmer que POWERSHELL remplacera notre bon vieux interpréteur de commandes DOS.

Avant de pouvoir manipuler nos cartes réseaux, il vous faudra charger les modules suivants :

–          NetAdapter

–          NetTCPIP
Charger les modules nécessaires:

[code lang= »powershell »]
Import-Module NetAdapter,NetTCPIP
[/code]

Lister les cartes réseaux :

Get-NetAdapter : Cette commande vous permets de lister l’ensemble des cartes réseaux présentent.

Cette commande vous permet de rapidement connaitre l’ID de la carte qui sera utilisé dans les prochaines commandes de l’article. Ici l’ID de ma carte est 12.

Obtenir la configuration IP:

[code lang= »powershell »]
Get-NetIPAddress -InterfaceIndex 12 | ft
[/code]

Obtenir la configuration DNS:

[code lang= »powershell »]
Get-NetAdapter-InterfaceIndex 12 | Get-DnsClientServerAddress
[/code]

Configurer l’adresse IP de votre carte réseaux :

[code lang= »powershell »]
New-NetIPAddress -InterfaceIndex 12 -IPv4Address 10.10.1.10 -PrefixLength 24 -DefaultGateway 10.10.1.50
[/code]

Configurer vos serveurs DNS :

[code lang= »powershell »]
Set-DnsClientServerAddress -InterfaceIndex 12 -ServerAddresses "192.168.10.1","192.168.10.2"
[/code]

Changer le nom de votre carte réseau :

[code lang= »powershell »]
Get-NetAdapter -InterfaceIndex 12 | Rename-NetAdapter -NewName LAN2
[/code]

Obtenir les statistiques de vos cartes réseaux :

[code lang= »powershell »]
Get-NetAdapter -InterfaceIndex 12 | get-NetAdapterStatistics | fl
[/code]

Obtenir la configuration des Types D’accès :

[code lang= »powershell »]
Get-NetTCPSetting
[/code]

Obtenir les informations matérielles de la carte réseau :

[code lang= »powershell »]
Get-NetAdapterHarwareInfo | fl
[/code]

J’espère que cet article vous aidera a configurer au mieux vos Microsoft Windows 8 Serveur.

Virtualisation – VMWare Tools Windows 2008 et Windows 2008R2 video drivers

Bonjour à tous,

Si vous utilisez VMWare pour vitaliser vos OS Microsoft Windows 2008 et 2008R2, vous aurez surement remarqué que l’installation des outils VMWare Tools ne change rien en terme de rapidité de mouvement de la souris depuis le client VSphère et pour cause l’installation de VMWare Tools n’installe pas le driver vidéo VMWare SVGA 3D. Il est donc presque impossible d’administrer votre serveur depuis la console

Sans le drivers VMWare SVGA 3D :

Avec le drivers VMWare SVGA 3D :

Dans ce post, nous allons installer le driver vidéo VMWare SVGA 3D via une ligne de commande rapide.

Avant tout vérifions quel est le driver Vidéo installé sur notre système. Une simple commande PowerShell nous évitera un bon nombre de cliques de souris ;-).

Ligne de commande POWERSHELL :

[code lang= »powershell »]
get-wmiobject win32_videocontroller | Select-Object DeviceID,Description,Name<br />
[/code]

Interpretation du retour de la commande PowerShell:

Voici maintenant comment installer le driver Video VMware SVGA 3D en une ligne de commande DOS.

[code lang= »dos »]
pnputil -i -a "c:\program files\common files\vmware\drivers\wddm_video\vm3d.inf"
[/code]

Une fois la commande d’installation du driver vidéo passée, il est nécessaire de redémarrer votre serveur afin de valider les changements.

J’espère que cet article vous aura été utile.
A bientôt.

Monitoring : Test de connexion SQL via une page .NET

Bonjour à tous,

Cet article présente comment créer une page web en ASP pour réaliser un test de connexion sur un serveur SQL. Il vous faudra au préalable un serveur IIS capable de gérer l’ASP. Grâce à ce type de page il devient alors possible de réaliser une sonde applicative rapide.

Avec des outils de monitoring comme IBM TIVOLI Enterprise ou autres, il est alors possible de créer une sonde qui interrogera à intervalles réguliers la page web et vérifier le résultat de celle-ci afin de renvoyer une alerte en cas de résultat de type KO.

Afin que la page fonctionne sous votre environnement, il vous faudra personnaliser la chaine de connexion suivante :

[code lang= »vb »]
‘==============================================
‘Configuration de la chaine de connexion à SQL
‘==============================================
‘Configuration du Serveur SQL
strServeur = "SERVEURSQL"
‘Configuration de la base SQL à interoger
StrDatabase = "DBNAME"
‘Configuration l’utilisateur et mot de passe à utiliser pour interoger la base SQL
StrUser = "USERNAME"
StrPassword = "MOTDEPASSE";
‘Configuration du Time Out de la connexion
TimeOut = 5
[/code]

Script complet de la page testsql.aspx:
[code lang= »vbnet »]
<%@ import Namespace= "System.Data" %>
<%@ import Namespace= "System.Data.SqlClient" %>
<script language= "VB" runat= "server" >

Dim public con_open as string
Dim public con_close as string
Dim public con_error as string

Sub Page_Load ()
‘Déclaration des variables
Dim strServeur As String
Dim StrDatabase As String
Dim StrUser As string
Dim StrPassword As String
Dim TimeOut As Single
Dim DebugScreen AS Single
‘==============================================
‘Configuration de la chaine de connexion à SQL
‘==============================================
‘Configuration du Serveur SQL
strServeur = "SERVEURSQL"
‘Configuration de la base SQL à interoger
StrDatabase = "DBNAME"
‘Configuration l’utilisateur et mot de passe à utiliser pour interoger la base SQL
StrUser = "USERNAME"
StrPassword = "MOTDEPASSE";
‘Configuration du Time Out de la connexion
TimeOut = 5
‘ Configuration de l’affichage en mode debug
DebugScreen = 1

‘Generation de la chaine de connexion
Dim strConnection as String = "Server=" & strServeur & ";DataBase=" & StrDatabase & ";User Id=" & StrUser & ";Password=" & StrPassword & ";Connect Timeout="& TimeOut

If DebugScreen = 1 Then
Response.Write ("</BR>Mode debug de la page")
Response.Write ("</BR>———————")
Response.Write ("</BR>Chaine de connexion génerer : " & strConnection)
Response.Write ("</BR>Fin du debug")
Response.Write ("</BR>———————</BR></BR>")
End if

Dim objConnection as New SqlConnection ( strConnection )

try
objConnection.Open ()
con_open= "OK"
objConnection.Close ()
con_close= "KO"
catch e as Exception
con_open= "KO"
con_error= e.ToString ()
end try
end Sub

</script>
<html>
<body>
<%

if Con_open = "OK" THEN
Response.Write ("Test Acces SQL Serveur : " & Con_open)
Else
Response.Write ("Test Acces SQL Serveur : " & Con_open)

Select Case True

Case con_error.Contains("The server was not found or was not accessible")
Response.Write ("</BR>Message d’Erreur : The server was not found or was not accessible")
Case con_error.Contains("Cannot open database")
Response.Write ("</BR>Message d’Erreur : Cannot open database")
Case con_error.Contains("Login failed")
Response.Write ("</BR>Message d’Erreur : Login failed")
Case Else
Response.Write ("</BR>Message d’Erreur Spécifique : </BR>" & con_error)

End Select

End if

%>

</body>
</html >

[/code]

Résultat de la page de connexion :

Page de test de connexion