Inventariseer de Active Directory omgeving

February 11th, 2015 No Comments »

Laatst las ik een artikel over het verzamelen van AD informatie. toen kwam ik dit artikel tegen in een Petri mailing. Hier staan mooie dingen. lees en beleef !

http://www.petri.com/useful-powershell-script-document-active-directory-environment.htm?utm_source=Newsletter&utm_medium=Email&utm_campaign=Tuesday%20ENL%20-%20Feb,%2010th%20(ID:%20544) 

 

Event 1202 in Windows 2012R2 omgeving. niet meer kunnen aanmelding in het domein.

June 5th, 2014 No Comments »

Al Selvador had het onderstaande probleem bij een klant:

“Probleem was op een Windows 2012 R2 DC. Aanmelden van een user ging goed maar resources gebruiken werkt niet. Geen printers, geen shares, geen mail. Wel een IP adres via DHCP en ook netjes op internet kunnen werken.

In de eventlog waren de onderstaande meldingen zichtbaar:


Warning 4-6-2014 11:36:42 SceCli 1202 None

Security policies were propagated with warning. 0x534 : No mapping between account names and security IDs was done.

Advanced help for this problem is available on http://support.microsoft.com. Query for “troubleshooting 1202 events”.


Oorzaak van het probleem

Error 0x534 occurs when a user account in one or more Group Policy objects (GPOs) could not be resolved to a SID. This error is possibly caused by a mistyped or deleted user account referenced in either the User Rights or Restricted Groups branch of a GPO. To resolve this event, contact an administrator in the domain to perform the following actions:

1. Identify accounts that could not be resolved to a SID:

From the command prompt, type: FIND /I “Cannot find” %SYSTEMROOT%\Security\Logs\winlogon.log

The string following “Cannot find” in the FIND output identifies the problem account names.

Example: Cannot find JohnDough.

In this case, the SID for username “JohnDough” could not be determined. This most likely occurs because the account was deleted, renamed, or is spelled differently (e.g. “JohnDoe”).

2. Use RSoP to identify the specific User Rights, Restricted Groups, and Source GPOs that contain the problem accounts:

a. Start -> Run -> RSoP.msc
b. Review the results for Computer Configuration\Windows Settings\Security Settings\Local Policies\User Rights Assignment and Computer Configuration\Windows Settings\Security Settings\Local Policies\Restricted Groups for any errors flagged with a red X.
c. For any User Right or Restricted Group marked with a red X, the corresponding GPO that contains the problem policy setting is listed under the column entitled “Source GPO”. Note the specific User Rights, Restricted Groups and containing Source GPOs that are generating errors.

3. Remove unresolved accounts from Group Policy

a. Start -> Run -> MMC.EXE
b. From the File menu select “Add/Remove Snap-in…”
c. From the “Add/Remove Snap-in” dialog box select “Add…”
d. In the “Add Standalone Snap-in” dialog box select “Group Policy” and click “Add”
e. In the “Select Group Policy Object” dialog box click the “Browse” button.
f. On the “Browse for a Group Policy Object” dialog box choose the “All” tab
g. For each source GPO identified in step 2, correct the specific User Rights or Restricted Groups that were flagged with a red X in step 2. These User Rights or Restricted Groups can be corrected by removing or correcting any references to the problem accounts that were identified in step 1.

Oplossing:

Het volgende op de Domein Controller uitgevoerd:

Pas de volgende register key aan
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\GPExtensions\{827D319E-6EAC-11D2-A4EA-00C04F7 9F83A}

ExtensionDebugLevel van 0 naar 2

Daarna was de winlogon.log zichtbaar in c:\windows\security\logs\

Hierin werd verwezen naar een account MSSQL2005###WID
via rsop.msc bleek dat deze in de domain controller policy stond als Allow logon as a service

Dit account verwijderd uit deze gpo en alles was weer in orde.

El Selvador

Creëer folders en shares d.m.v Powershell | Deel 2 – Creëer folder en share dmv nieuwe PS3 command-lets

June 3rd, 2014 No Comments »

Powershell 3 kent 2 nieuwe command-lets namelijk Set-ACL en Set-SMBShare. zie hieronder een voorbeeld.


<#
.SYNOPSIS
 Creër een directory met standaard rechten en
 een share met standaard rechten.
.DESCRIPTION
   <A detailed description of the script>
.PARAMETER <paramName>
   <Description of script parameter>
.EXAMPLE
   <An example of using the script>
#>
cls
<# Geef hier de basis directory op waarin
de folders aangemaakt gaan worden
#>
$Basedir='d:\develop\'

# vraag om de foldernaam.
$folder=Read-Host 'Wat is de nieuwe folder '
# vraag om de sharenaam
$ShareName=Read-Host 'Wat is de nieuwe share '

# combineer de basis dir en de foldernaam.
$foldername=$Basedir+$folder

# controleer of de folder bestaat.
if(!(test-path $foldername)) {
# als de folder niet bestaat, maak die dan aan.
		New-Item $foldername -type Directory
}
# maak de folder aan met standaard rechten.
# vul $acl met de foldernaam
$acl = Get-Acl $foldername

# zet parameters
$acl.SetAccessRuleProtection($True, $False)

# Vul de variables met standaard gebruikers.
$rule = New-Object System.Security.AccessControl.FileSystemAccessRule `
("Administrators","FullControl", "ContainerInherit, ObjectInherit",`
 "None", "Allow")
$acl.AddAccessRule($rule)
$rule = New-Object System.Security.AccessControl.FileSystemAccessRule `
("Users","Read", "ContainerInherit, ObjectInherit", "None", "Allow")
$acl.AddAccessRule($rule)

# Zet de rechten op de folder
Set-Acl $foldername $acl

# Creëer de share.
new-smbshare -name $ShareName -path $foldername `
-fullaccess administrators -readaccess Users
get-smbshare

Creëer folders en shares d.m.v Powershell | Deel 1-Creëer folder en share dmv CIM.

June 1st, 2014 1 Comment »

Het maken van folders en shares in Windows kan met de bekende commando zoals “MD” of met Windows verkenner. Het zou mooi zijn om dit met powershell uit te kunnen voeren om het zo geautomatiseerd te maken. Het maken van folders en shares is altijd veel werk.

Ik ben begonnen met een project om dit te automatiseren binnen de SaaS omgeving. Als er weer nieuwe klant bijkomt of bestaande structuur uitgebreid moet worden. Het aanmaken van standaard mappen en shares kost altijd veel werk en dan zeker de juiste rechten zetten.

De bedoeling is om het in stappen te bedenken en doe gerust mee !

Het eerste deel van dit project creëert de folder en creëert ook de share met standaard rechten. Ik maak hier gebruik van de CIM ( Common Information Model). Deze methode wordt door Powershell 3 en hoger ondersteund. Het kan ook met de WMI methode maar deze wordt vervangen door de CIM methode. Powershell 2 ondersteunt alleen de WMI methode.

Zie hieronder de code en de uitleg.

# Omschrijving:
# Deze functie creëert een directory en ook een share met
# standaard rechten
# deze functie kan gebruikt worden in andere script of als
# een losse functie
#
# In deze script word de nieuwe CIM commando set gebruikt ipv
# de WMI command set.
#
# De script controlleerd of de share naam of directory
# al bestaat.
# Is dit wel het geval dan wordt deze niet overschreven.

#
# Gebruik:
# Men moet rechten hebben om directories of shares aan
# te kunnen maken.
#
# Als losse functie:
# start de functie op met . .\New-Share.ps1
# daarna is de New-share beschikbaar en de format is als volgt
# New-Share -directory naam Sharenaam;
# voorbeeld:
# new-share e:\directory Sharenaam

# Creër nieuwe folder
# Functie New-share.
Function New-Share ($Foldername, $Sharename){

# controleer of de folder al bestaat.
if(!(test-path $Foldername)) {

# als de folder niet bestaat, maak die dan aan.
		New-Item $Foldername -type Directory
}

# Creëer de share voor de nieuwe directory.
# gcim = Get-CIM.
# controleer of de share al bestaat.
if(!(gcim win32_share -Filter "name='$Sharename'")){

#als de share niet bestaat, maak deze aan.
Invoke-CimMethod -classname win32_share -namespace root/cimv2 -MethodName 'create' `
 -Arguments @{path=$Foldername;Name=$Sharename;type=[uint32]'0'`
  ;MaximumAllowed=[uint32]'25';Description='test share'}
}
}

Schrijf mee en ontwikkel een mooie tool voor onze SaaS omgeving en tevens kan je dit gebruiken bij je klanten.

Deel 2 zal ook een andere nieuwe methode beschrijven dmv New-SMBShare.

Dexter
 

Chocolatey Gallery versus Powershell v5 OneGet

May 20th, 2014 1 Comment »

Een artikel van Petri beschreef de nieuwe functie’s van Powershell 5 wat nu in beta is. Één van deze nieuwe commando’s is OneGet. OneGet is een installer die pakketen installeert vanuit een repository, ook wel GIT installer genoemd. Een ieder die wel eens met linux gewerkt heeft kent vast wel de “apt-get”, “aptitude” of “Yam” commando’s. OneGet doet dit ook maar dan voor de Windows omgeving.

Nu is er al een manier om dit te doen en wel met Chocolatey Gallery. Dit pakket gebruikt NuGet van Powershell om de software te installeren. Hiermee kan je op een simpele manier “silently” software installeren en up-to-date houden. Op deze link is meer informatie over Chocolatey te vinden.

Deze functionaliteit vereenvoudigd het installeren van bijvoorbeeld Java, Adobe, dotnet of Notepad plus. Dit is een zeer kleine greep uit de paketen die beschikbaar zijn.

Mijn ervaring binnen linux is dat het erg prettig werkt en eenvoudig bij te houden is. Graag hoor ik wat jullie reacties zijn over deze mogelijkheid.

Dexter