Archive for December 2008

Nye Freeware Tools og Services

Tools:

Harddisk eraser tools:
http://www.killdisk.com/
http://www.heidi.ie/node/6
http://sourceforge.net/projects/dban/
Man kan ligeledes vipe en disk med de indbyggede windows kommander:
format c: /fs:ntfs /x
cipher /w:c:
http://support.microsoft.com/kb/814599

The Ultimate List of SharePoint AddOns and Tools for Web 2.0, Enterprise 2.0 And Social Networking Features:
http://weblogs.mysharepoint.de/mgreth/archive/2008/05/22/ultimatelistsharepointenterprise20.aspx

Turn Your SkyDrive Account Into a Virtual Drive:
http://www.gladinet.com/p/download.htm

Installshield Repackager 8:
http://support.installshield.com/kb/files/Q108601/setup.exe
http://technet.microsoft.com/en-us/library/bb490284.aspx

WinINSTALL LE:
http://www.scalable.com/WinINSTALL_LE.aspx

Anti-Malware Toolkit til din USB device:
http://www.downloadsquad.com/2008/12/12/anti-malware-toolkit-updated-supports-loads-of-new-apps/

5 Windows tools to remove damaged antivirus programs:
http://www.downloadsquad.com/2008/11/11/5-windows-tools-to-remove-damaged-antivirus-programs/

Run cmd.exe as Local System in Safe Mode:
http://tinyapps.org/weblog/windows/run_cmd_exe_as_local_system_in_safe_mode.html

CurrPorts – View Opened TCP/IP ports / connections
http://www.nirsoft.net/utils/cports.html

Free ISO Creator:
http://www.minidvdsoft.com/isocreator/index.html

ISODisk:
http://www.isodisk.com/

Ammyy Admin – Hurtig remote PC adgang:
http://ammyy.com/en/index.html

Project Sundance – Managing Your Baseline – Security Guides:
http://blogs.technet.com/seanearp/archive/2008/12/12/project-sundance-managing-your-baseline.aspx

Windows and Microsoft Update Problem Solver – AURESET:
http://aumha.net/viewtopic.php?f=62&t=33560&start=0&st=0&sk=t&sd=a&sid=f211a790354f8511337891a9f8bcdf4a

Services:

10 Free Website Monitoring Services:
http://www.nirmaltv.com/2008/12/09/10-free-website-monitoring-services/

Reverse DNS Lookup – Find feks alle domæne navne for din virksomhed:
http://www.guerrilladns.com/

Windows 7 Forums:
http://www.sevenforums.com/

GPO Backup – Windows 2008

Man kan schdulere et GPO backup script på en af sine windows 2008 dc’ere.
For Windows 2008 skal man downloade GPMC Scripts via nedenstående link:
http://www.microsoft.com/downloads/details.aspx?FamilyId=38C1A89B-A6D2-4F2A-A944-9236999AEE65&displaylang=en

Der kan herefter laves en daglig schdule via en CMD-fil (GPObackup.cmd), som feks kan indeholde følgende kommando:

REM************GPObackup.cmd – Daglig GPO Backup**************************
C:
cd C:Program FilesMicrosoft Group PolicyGPMC Sample Scripts
cscript BackupAllGPOs.wsf C:GPObackup
Exit

Reference til GPMC scripts:
http://technet.microsoft.com/en-us/library/cc776655.aspx

Ovenstående backup procedure, kan også laves i PowerShell.
BackupAllGpos.ps1 indeholder følgende kode:

###########################################################################
#Sletter alle tidligere GPO backups, som er ældre end 5 dage.
Get-ChildItem C:GPObackup -recurse | Where {($_.PSIsContainer) -and ($_.CreationTime -le $(Get-Date).AddDays(-5))} | Remove-Item -Recurse -Force

###########################################################################
# Function   : BackupAllGpos
# Description: Backs up all GPOs in a Domain
# Parameters : $backupDirectory – The directory where the backups will be stored
#            : $domainName – The dns name, e.g. microsoft.com, of the domain to operate on
#            : $backupComment – An optional comment for the backups, if nothing is passed the current date will be used.
# Returns    : N/A
###########################################################################

function BackupAllGpos(
  [string] $backupDirectory=$(throw ‘$backupDirectory is required’),
  [string] $domainName=$(throw ‘$domainName is required’),
  [string] $backupComment=$(get-date))
{
  $gpmAllGposInDomain = GetAllGposInDomain $domainName

  foreach ($gpmGpo in $gpmAllGposInDomain) # Iterate through all the GPOs
  {
    “Back up GPO : ” + $gpmGpo.DisplayName
    $gpmResult = $gpmGpo.Backup($backupDirectory, $backupComment) # Backup the GPO
    [void] $gpmResult.OverallStatus
    $gpoBackup = $gpmResult.Result
  }
}

###########################################################################
# Function   : GetAllGposInDomain
# Description: Returns all GPOs in a domain
# Parameters : $domainName – The dns name, e.g. microsoft.com, of the domain to operate on
# Returns    : All Group Policy Objects in the supplied domain
###########################################################################

function GetAllGposInDomain(
  [string] $domainName=$(throw ‘$domainName is required’))
{
  $gpm = New-Object -ComObject GPMgmt.GPM # Create the GPMC Main object
  $gpmConstants = $gpm.GetConstants() # Load the GPMC constants
  $gpmDomain = $gpm.GetDomain($domainName, “”, $gpmConstants.UseAnyDC) # Connect to the domain passed using any DC
  $gpmSearchCriteria = $gpm.CreateSearchCriteria() # Create a search criteria without any restrictions
  $gpmDomain.SearchGPOs($gpmSearchCriteria) # Search and find all GPOs in the domain, this will return the array
}

backupAllGpos “C:GPObackup” “win.local”

#End Script

Nedenstående billede viser en manuel afvikling af scriptet:

Man kan ligeledes lave en scedule på PowerShell scriptet. Jeg benytter her samme GPObackup.cmd, som indeholder følgende:

REM************GPObackup.cmd – Daglig GPO Backup**************************
powershell -command “& ‘c:powershellBackupAllGpos.ps1′”
Exit

Ovenstående kan selvfølgelig også afvikles fra en remote Admin server/workstation, samtidig med at der laves backup til disk/tape af de enkelte GPO backups.

Reference og download af PowerShell source code, se nedenstående link:
http://technet.microsoft.com/en-us/magazine/2007.05.grouppolicy.aspx

How to schedule a Windows Powershell script:
http://www.searchmarked.com/windows/how-to-schedule-a-windows-powershell-script.php

Running Windows PowerShell Scripts:
http://www.microsoft.com/technet/scriptcenter/topics/winpsh/manual/run.mspx

Debug af langsom login på XenApp/TS

Jeg blev kaldt ud til en kunde, som ikke kunne gå i drift med deres nye XenApp 5.0 farm, pga langsom login.
Selve login-tiden varriede et sted mellem 45 og 60 sek.
De centrale elementer i deres XenApp farm var som følger:
2 stk virtuelle Windows 2008 DC’ere.
1 stk virtual XenApp Data Collector (Windows 2008).
3 stk fysikse XenApp applikations servere (Windows 2008 – HP Proliant ML 150 G5).
1 stk fysisk filserver (Windows 2003) til roaming profiles og redirect af document, desktop, favorites mfl.

Det første jeg gjorde var at publishere en desktop på alle 3 applikationsserver og kunne konstatere at problemet var det samme for alle tre.
Den hang i bremsen udfra nedenstående skærmbilleder.


Jeg tjekkede herefer det mest basale i form af DNS. De pegede alle på de nye DC’ere og deres host records var korrekt registreret.
msconfig/autoruns afslørede heller ikke nogle potentielle problem applikationer/plugins.

Der var oprettet 4 GPO’er på XenApp OU’en, som følger:
XenProfiles (roaming profiles, redirect, mapning af drev og printere)
XenLockDown (Desktop lockdown)
XenOffice (diverse Office 2007 settings)
XenIE (IE lockdown + diverse settings)

Jeg prøvede herefter af disable alle GPO’erne og logge på med en test bruger. resultaet var at login-tiden blev væsentlig reduceret til acceptabel logintid.
På dette tidspunkt tænkte jeg, at problemet måtte ligge i en af ovenstående GPO’er. Jeg tjekkede eventlog for warnings/errors omkring profiles og redirect settinngs.
Eventloggen viste ingen fejl. Der var heller ikke fejl omkring drev og printer mapning. Så XenProfiles GPO’en var korrekt sat op.
Næste step var så at enable “Userenv debug logging”. Man får her et deataljeret login-trace for en given bruger.
Jeg indsatte nedenstående registry værdi på den ene XenApp server.
HKLMSoftwareMicrosoftWindows NTCurrentVersionDiagnostics – GpSvcDebugLevel (DWORD) = 10002. For Windows 2003 se KB221833.
Jeg genstartede herefter serveren. Efter reboot loggede jeg på med en test bruger igen og kunne se at logfilen gpsvclog.log blev oprettet.
Den ligger i c:windowsdebugusermode. Den kan default åbnes i notepad.
Jeg valgte dog at downloade og installere Policy Reporter fra Sysprosoft, som giver et bedre overblik.
Det jeg her kiggede efter var større delay udsving i sek for nedenstående log eksempel. Hvis der var et delay for førnævnte GPOer ville jeg kunne se det i dette trace.

Til min store overraskelse viste userlogin tracet, at alle GPO’erne blev afviklet indenfor ca 3-4 sek.
Jeg var nu kommet til den konklusion, at det måtte være et netværks relateret problem.
Jeg fik en IT medarbejder til at tjekke kabel – Switch/Port-autosense. Det hele var i orden og netkortet på XenApp serveren stod også til autosense.
Profilerne blev loadet til og fra en Windows 2003 filserver. Jeg tænkte her, at det kunne være Windows 2008 SMB signing 2.0 der måske kunne drille.
Jeg valgte derfor at disable SMB 2.0 på den ene XenApp server. Det gav ikke noget posetivt resultat.
Desperat som jeg var, prøvede jeg herefter at disable TCP auto-tuning. Samme negative resultat.
Ok, timeout, hente en ny kop kaffe. Jeg blev mere overbevist om at problemet måtte ligge på de lokale XenApp servere.
Jeg gik derfor ind i device manageren for at se om der var nogle warnings udfor de enkelte devices. Det så tilsyneladende ok ud.
Jeg valgte properties på den installere Broadcom NetXtreme Gigabit adapter og så at driver date var 01-08-2006…..what the f…
Turen gik herefter til hp websitet, hvor jeg hentede den nyeste drivere ned. Efter installation og reboot kunne jeg se at driver date og navn havde skiftet.
 
Login på den nye XenApp farm røg nu ned på en ca. 12 sek. Case closed.
Jeg fik efterfølgende at vide, at der ikke er support for smartstart for ML 150 G5.
Man havde således installeret serverne udfra den rå Windows 2008 dvd og havde glemt at opdatere systemet med de nyeste HP drivere efterfølgende.