Kerberos authenticatie mislukt af en toe

Eerder dit jaar verscheen er op de site van het Exchange Team een blog van Ross Smith IV. In dit blog werd aangeraden om Kerberos te gaan gebruiken als authenticatie methode voor Outlook clients.

In veel Exchange omgevingen zul je daarom ook vaak terugzien dat dit gehanteerd is. Wanneer je gebruik maakt van een CAS Array dien je hier een alternate service account (ASA) voor aan te maken. Dit laatste kan gedaan worden d.m.v. het script RollAlternateserviceAccountPassword.ps1. Houd er rekening mee dat als je de CreateScheduledTask parameter gebruikt deze scheduled task zal draaien onder de account waarmee de scheduled task is aangemaakt.

Na het registreren van de correcte SPN’s op de ASA account werkt Kerberos over het algemeen. In sommige gevallen wordt een typefout gemaakt waardoor de SPN’s niet correct geregistreerd zijn. Wanneer dit het probleem is kan dit eenvoudig met setspn of AdsiEdit worden aangepast.

Maar wat als Kerberos af en toe wel en af en toe niet werkt, of bij bepaalde gebruikers wel en andere niet? Wanneer het niet werkt heeft een gebruiker geen toegang tot zijn/haar mailbox.

De eenvoudigste methode om te controleren of Kerberos het probleem is is het aanpassen van het Outlook profiel.

 

Op de security tab van het account kan de waarde van Logon network security aangepast worden naar NTLM. Indien je dan weer toegang hebt tot je mailbox weet je dat het probleem zit in Kerberos.

Overigens zal er dan ook een event worden gelogt in het system event log. Omdat er standaard maar een beperkte set van logging aan staat op de Windows Servers zal je hier weinig terugvinden. Om logging in te schakelen dien je een aanpassing in het register:

  • start regedit
  • ga naar HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Kerberos\Parameters
  • maak  een Dword aan LogLevel
  • pas de waarde van het Dword aan naar 0x1

De logging is direct na het aanmaken van de register sleutel ingeschakeld en na een refresh zal je zien dat er aardig wat Kerberos meldingen voorbij schieten.

Een andere optie is om een netwerk trace te maken met behulp van bijvoorbeeld Wireshark of Netmon. In beide gevallen zul je de volgende melding voorbij zien komen:

KDC_ERR_BADOPTION: KDC cannot accommodate requested option

Wanneer je vervolgens op internet gaat zoeken zal je zien dat je niet de enige ben.  Maar laten we het bekijken vanaf het begin i.p.v. direct naar de oplossing te kijken.

Als eerst is het verstandig om met SetSPN -L “ASA account” te controleren of de correcte SPN’s zijn geregistreerd. Deze SPN’s zouden uniek moeten zijn. Echter heb ik gezien dat de service principal names van domain controllers ook twee SPN’s bevatten genaamd ExchangeAB gevolgd door de netbios en fqdn. Om te controleren of de SPN’s uniek zijn kun je SetSPN -Q “SPN WAARDE” uitvoeren, bijvoorbeeld SetSPN -Q ExchangeAB/*.

Zoals in bovenstaande screenshot is wordt de ExchangeAB vier keer gevonden. Twee keer op de Exchange server en twee keer op de DC.

Alles ziet er dus goed uit voor zover we nu kunnen zien. Maar wat kun je nog meer doen als je de betreffende melding hebt? Klist.exe of Kerbtray.exe hebben vaak weinig nut omdat het ticket vervolgens toch niet vernieuwd kan worden.

Na een tijdje onderzoeken samen met één van mijn klanten kwamen we achter het probleem.

Het blijkt dat Microsoft een aanpassing heeft gemaakt in de UDP pakket grote vanaf Windows 2003. In Windows XP was de UDP pakket grote ingesteld op 2000, vanaf 2003 is dit 1465 geworden. Waarschijnlijk raad je al wat er gaat gebeuren als Kerberos een pakket gaat verzenden. Kerberos verstuurd het pakket namelijk standaard over UDP. Dit heeft als gevolg dat pakketten incompleet aankomen bij servers met een Windows 2003 of hoger OS.

Maar hoe kan het dan dat het bij sommige gebruikers wel op treed en bij andere niet? Dit is afhankelijk van de grote van het Kerberos ticket. De grote hiervan wordt ondermeer bepaald door:

  • lengte van het wachtwoord
  • lidmaatschap van de groepen
  • bevatte de groepen waarvan de gebruiker lid is nog andere groepen (nesting)

Om dit probleem op te lossen dien je een aanpassing te maken in het register:

  • start regedit
  • ga naar HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\ Kerberos\Parameters
  • maak een Dword aan MaxPacketSize
  • pas de waarde van het Dword aan naar 1

Door deze aanpassing zorgen we ervoor dat elk Kerberos pakketje groter dan 1K via TCP wordt verzonden.

Herstart daarna de computer en pas het Outlook profiel weer aan naar Negotiate Authentication. Controleer of je weer in je mailbox kan. Vervolgens kun je met klist.exe of kerbtray.exe controleren of de tickets goed worden uitgegeven. Beide tools zijn onderdeel van de resource kit voor Windows 2003. In Windows 7 en 2008 is klist.exe overigens standaard onderdeel van het OS.

In dit screenshot zijn slechts twee Kerberos tickets weergeven die gebruikt worden door Exchange. Als alle authenticatie correct via Kerberos verloopt heb je de volgende Kerberos tickets:

  • exchangeMDB
  • exchangeRFR
  • exchangeAB
  • http

Wanneer je nu kijkt in het event log van de client zal je ook geen Kerberos meldingen meer terug vinden.

Microsoft heeft overigens een compleet document beschikbaar wat je helpt bij het troubleshooten van Kerberos authenticatie problemen. Dit document is hier terug te vinden.

Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Reddit
  • Webnews
  • Y!GG
  • Ask
  • Live-MSN
  • Technorati
  • YahooMyWeb

In veel Exchange omgevingen zal je hardware load balancers tegenkomen die gebruikt worden om het verkeer te verdelen over de Client Access Servers (CAS) en Hub Transport Servers (HUB).

In dit artikel kijken we specifiek naar de Barracuda Load Balancer in een two-armed setup. In deze configuratie heeft de Barracuda twee aparte IP-adressen één voor de WAN interface en één voor de LAN interface.

System Configuratie

Dit is de eerste valkuil welke niet wordt beschreven in de whitepaper die gepubliceerd is door Barracuda voor Exchange 2010. In dit geval dient Exchange in een aparte VLAN/Subnet geplaatst te worden. Waarom? Wanneer je dit niet doet zullen er een aantal zaken niet werken:

  • Servers/applicaties die connectie maken op basis van RPC kunnen geen connectie maken
  • De Enable Client Impersonation optie kan niet gebruikt worden voor de volgende protocollen: SMTP/IMAP etc.

Dus als je bijvoorbeeld in je huidige bedrijfs netwerk twee VLAN’s hebt maak dan een additioneel VLAN aan voor Exchange. Optioneel kan de WAN interface van de load balancer ook in een apart VLAN geplaatst worden.

De tweede valkuil is de gateway. Eén van de vereisten van de two-armed configuratie van de load balancer is dat de netwerk configuratie wordt aangepast zodat al het verkeer naar een ander subnet verzonden moet worden naar de load balancer. Kortweg de load balancer moet geconfigureerd worden als gateway van de server(s).

In de meeste situaties zal dit geen groot probleem zijn maar in een co-existence fase met bijvoorbeeld Exchange 2003 kan dit voor problemen zorgen. Om dit probleem op te lossen moeten er tijdelijk static routes worden toegevoegd totdat Exchange 2003 is verwijderd. Doe je dit niet dan zal mail van Exchange 2003 naar 2010 niet kunnen worden verzonden.

Regels

Het configuratie stuk m.b.t. de regels wordt alleen beschreven voor RPC en HTTP(s) in de two-armed configuratie. Maar in sommige gevallen zullen ook SMTP, IMAP en in sommige gevallen zelfs POP3 in gebruik zijn. In alle gevallen is het misschien interessant om dit verkeer ook te load balancen.

Maar laten we eerst kijken naar HTTP omdat de parameters van deze regel nog extra gefinetuned kunnen worden. Zoals eerder besproken is de optie Enable Client Impersonation standard uitgeschakeld. Dit maakt het lastiger om te troubleshooten het client IP wordt in dit geval namelijk vervangen door het VIP van de Load Balancer. Door deze optie in te schakelen blijft het echte client IP bewaard en wordt dit ook in de IIS logging geschreven.

Zowel SMTP en IMAP kunnen gepubliceerd worden met als service type TCP Proxy. Door gebruik te maken van dit service type is de optie Enable Client Impersonation beschikbaar net als HTTP, wat is gepubliceerd als Layer 7 – HTTPS service type.

In de whitepaper wordt niet gesproken over de persistence time en session time-out. Beide waarden kunnen grote impact hebben en dienen correct geconfigureerd te worden. Een te hoog geconfigureerde waarde kan leiden tot een service die niet beschikbaar is.

Maar wat is de correcte configuratie? Er zijn meerdere opties. Laten we beginnen met de configuratie van de persistence time. Deze parameter kan gebruikt worden om de persistence time te configureren voor een connectie. Door gebruik te maken van deze parameter kan er voor gezorgd worden dat een client binnen de geconfigureerde tijd elke keer bij dezelfde server terecht komt. Wanneer de parameter met een te hoge waarde wordt geconfigureerd kan het volgende voorkomen. Een applicatie die gebruik maakt van SMTP voor het verzenden van berichten. De server waarvan de client gebruik maakt is niet meer beschikbaar. Omdat er een te hoge persistence time is geconfigureerd blijft de client echter continue connectie opzetten naar dezelfde server totdat de tijd is verlopen. Dit leidt tot berichten die niet verzonden kunnen worden door de applicatie server.

Om dit te voorkomen dient de persistence time op 0 of met een lage waarde (bijvoorbeeld 5 seconde) geconfigureerd te worden. De eerste is de aangeraden methode.

De tweede parameter session time-out, wordt gebruikt om te bepalen hoelang een connectie opengehouden mag worden. In de meeste gevallen is een lage waarde, of zelfs 0, de beste keuze. Dit omdat zolang er verkeer wordt verzonden over de connectie de verbinding niet verbroken zal worden.

Aan het einde van dit artikel is een compleet overzicht te zien van de regels met de betreffende instellingen voor Exchange.

SSL Offloading

Eén van de voordelen van een load balancer is dat deze gebruikt kan worden voor SSL Offloading. Met deze methode worden de encrypte en decryptie taken uitgevoerd op de load balancer i.p.v. op de Client Access Servers. Dit heeft als voordeel dat het CPU intensieve proces niet meer gebruikt hoeft te worden voor deze taak.

De SSL Offloading configuratie kan verdeeld worden in drie delen:

  • Importeren van het certificaat
  • Configureren van de regels
  • Exchange configureren

Importeren van het certificaat

Het importeren van het certificaat op de load balancer is redelijk recht eenvoudig. Voordat je begint met deze stappen dien je ervoor te zorgen dat je een copy van het certificaat hebt inclusief de private key en eventuele intermediate certificaten.

Als dit verzameld is is het tijd om het certificaat te installeren op de load balancer. Ga hiervoor naar de certificate pagina. Vul de volgende gegevens in op deze pagina:

  • Name: een naam om het certificaat eenvoudig te herkennen
  • Password: het wachtwoord waarmee het certificaat is beveiligd
  • Signed certificate: de lokatie van het PFX bestand

Druk vervolgens op Upload om het certificaat op te slaan op de load balancer.

Configure the rules

SSL Offloading kan alleen uitgevoerd worden op de regel die gebruikt word tom de web services te load balancen, bijvoorbeeld Outlook Web App, Exchange Control Panel, Autodiscover, Exchange Web Services and the Offline Address Book (optioneel).

Pas de regel aan die gemaakt is voor het publiceren van de web services in de sectie SSL Offloading.

De load balancer kant is nu geconfigureerd voor SSL offloading. Op naar het laatste deel de Exchange configuratie.

Exchange configuration

Het Exchange configuratie deel is goed uitlegt op de volgende Wiki pagina:

Exchange Wiki Load Balancing

Omdat het hier al goed staat beschreven bespreken we deze stappen niet. Het is echter wel aangeraden om het onderstaande script te gebruiken wat terug is te vinden op de Wiki pagina:

Set-OutlookAnywhere –Identity “$($env:COMPUTERNAME)\RPC (Default Web Site)” -SSLOffloading $true

New-ItemProperty -Path ‘HKLM:\SYSTEM\CurrentControlSet\Services\MSExchange OWA’ -Name SSLOffloaded -Waarde 1 -PropertyType DWORD


Import-Module webadministration

Set-WebConfigurationProperty -Filter //security/access -name sslflags -Waarde “None” -PSPath IIS:\ -Location “Default Web Site/OWA”

Set-WebConfigurationProperty -Filter //security/access -name sslflags -Waarde “None” -PSPath IIS:\ -Location “Default Web Site/ECP”

Set-WebConfigurationProperty -Filter //security/access -name sslflags -Waarde “None” -PSPath IIS:\ -Location “Default Web Site/OAB”

Set-WebConfigurationProperty -Filter //security/access -name sslflags -Waarde “None” -PSPath IIS:\ -Location “Default Web Site/EWS”

Set-WebConfigurationProperty -Filter //security/access -name sslflags -Waarde “None” -PSPath IIS:\ -Location “Default Web Site/Microsoft-Server-ActiveSync”

Set-WebConfigurationProperty -Filter //security/access -name sslflags -Waarde “None” -PSPath IIS:\ -Location “Default Web Site/Autodiscover”

iisreset /noforce

(source: http://social.technet.microsoft.com/wiki/contents/articles/how-to-configure-ssl-offloading-in-exchange-2010.aspx)

Testen of alles werkt

De meest belangrijke stap van alles is het testen van de nieuwe configuratie om te kijken of alles werkt. Maar hoe kun je alle services testen?

Er zijn meerdere manieren om de services te testen. Al deze testen kunnen uitgevoerd worden vanaf een client zonder de Exchange Management Tools te installeren.

Outlook gebruiken

De makkelijkste manier is door Outlook te gebruiken. Voer de volgende taken uit om te kijken of Outlook nog correct functioneert:

  • Controleer of je nog toegang hebt tot je mailbox en de public folders
  • Forceer een complete download van het adressenboek
  • Controleer of out-of-office nog ingeschakeld/uitgeschakeld kan worden
  • Controleer of je de free/busy informatie nogsteeds kan zien
  • Gebruik de Test E-mail Autoconfiguration om te bevestigen dat autodiscover nog correct werkt

De enige twee dingen die je niet kan testen zijn Outlook are Outlook Web App (OWA)en het Exchange Control Panel (ECP) wanneer Outlook 2007 wordt gebruikt. Wanneer Outlook 2010 in gebruik is kan het ECP wel getest worden door bijvoorbeeld de message tracking optie uit te testen.

Internet Explorer gebruiken

De tweede method, welke niet te vergelijken is met Outlook, is door Internet Explorer te gebruiken. Door gebruik te maken van Internet Explorer kunnen alleen de web services getest worden die geleverd worden door Exchange:

Exchange Management Shell gebruiken

Als laatste methode de Exchange Management Shell. Hierbij dient één opmerking geplaatst te worden. De test cmdlet’s werken niet meer op de Exchange servers zelf. Dit omdat het verkeer niet wordt geaccepteerd van een loop die ontstaat.

Dus om deze tests uit te voeren dienen de Exchange Management Tools geïnstalleerd te worden op de client.

De volgende cmdlet’s kunnen gebruikt worden:

  • Autodiscover: Test-OutlookWebServices
  • Exchange Web Services: Test-WebServicesConnectivity
  • Exchange Control Panel connectivity: Test-EcpConnectivity
  • Outlook Web Apps: Test-OwaConnectivity
  • Test RPC connection: Test-OutlookConnectivity

Hier eindigt het artikel waarin besproken wordt hoe de Barracuda Load Balancer te gebruiken in combinatie met Exchange 2010. Zoals eerder beloofd de regels die je moeten configureren op de load balancer:

RPC

Service nameParameterWaarde
OutlookPortAll
ProtocolTCP
Service TypeLayer 4
Auto-RecoverYes
ActionDefault failure response
Default Scheduling PolicyWeighted Round Robin
Adaptive SchedulingNone
Testing MethodICMP Ping
Test Delay30
Persistence Time1200
Persistence Netmask255.255.255.255
Enable NotificationNo
Minimum Real Servers0
Enabled IPSNo
Real ServerParameterWaarde
IP-Address of serverNameservername
Weight100
StatusEnabled
Direct Server ReturnDisable

Web Services

Service nameParameterValue
Exchange Web ServicesPort443
ProtocolTCP
Service TypeLayer 7 – HTTPS
Auto-RecoverYes
ActionDefault failure response
Default Scheduling PolicyWeighted Round Robin
Adaptive SchedulingNone
Testing MethodSimple-HTTP
Test Delay30
Persistence Time1200
Persistence TypeHTTP Header
Header NameAuthorization
Enable HTTPS/SSLYes
SSL CertificateYour ssl certificate
Enable NotificationNo
Minimum Real Servers0
Enable IPSNo
Enable Client ImpersonationYes
Session Timeout0
Real ServerParameterValue
IP-Address of serverNameservername
Port80
Weight100
StatusEnabled
Direct Server ReturnDisable
Enable HTTPS/SSLNo
Validate CertificateYes
Testing MethodSimple HTTP
Port80
Test Target/owa/auth/logon.aspx
Test Match2600 Microsoft Corporation
Additional HeadersUser-Agent: Barracuda Load Balancer Server Monitor
Status Code200
Test Delay30

SMTP

Service nameParameterValue
SMTPPort25
ProtocolTCP
Service TypeTCP Proxy
Auto-RecoverYes
ActionDefault failure response
Default Scheduling PolicyWeighted Round Robin
Adaptive SchedulingNone
Testing MethodICMP Ping
Test Delay30
Persistence Time0
Persistence TypeNone
Persistence Mask255.255.255.255
Enable HTTPS/SSLNo
SSL CertificateYour ssl certificate
Enable NotificationNo
Minimum Real Servers0
Enable IPSNo
Enable Client ImpersonationYes
Session Timeout5
Real ServerParameterValue
IP-Address of serverNameservername
Port25
Weight100
StatusEnabled
Direct Server ReturnDisable
Enable HTTPS/SSLNo
Validate CertificateYes
Testing MethodUse Service Test Method
Test Delay30

IMAP

Service nameParameterValue
Web ServicesPort143
ProtocolTCP
Service TypeTCP Proxy
Auto-RecoverYes
ActionDefault failure response
Default Scheduling PolicyWeighted Round Robin
Adaptive SchedulingNone
Testing MethodTCP Port Check
Test Delay30
Persistence Time0
Persistence TypeNone
Persistence Mask255.255.255.255
Enable HTTPS/SSLNo
SSL CertificateYour ssl certificate
Enable NotificationNo
Minimum Real Servers0
Enable IPSNo
Enable Client ImpersonationYes
Session Timeout60
Real ServerParameterValue
IP-Address of serverNameservername
Port143
Weight100
StatusEnabled
Direct Server ReturnDisable
Enable HTTPS/SSLNo
Validate CertificateYes
Testing MethodUse Service Test Method
Test Delay30

POP3

Service nameParameterValue
Web ServicesPort110
ProtocolTCP
Service TypeTCP Proxy
Auto-RecoverYes
ActionDefault failure response
Default Scheduling PolicyWeighted Round Robin
Adaptive SchedulingNone
Testing MethodTCP Port Check
Test Delay30
Persistence Time0
Persistence TypeNone
Persistence Mask255.255.255.255
Enable HTTPS/SSLNo
SSL CertificateYour ssl certificate
Enable NotificationNo
Minimum Real Servers0
Enable IPSNo
Enable Client ImpersonationYes
Session Timeout60
Real ServerParameterValue
IP-Address of serverNameservername
Port110
Weight100
StatusEnabled
Direct Server ReturnDisable
Enable HTTPS/SSLYes
Validate CertificateYes
Testing MethodUse Service Test Method
Test Delay30

Speciale dank aan GianPaolo Corona voor de screenshots en de assistentie om deze configuratie aan de praat te krijgen.

Wanneer je nog een configuratie toevoeging/verbetering hebt neem dan even contact met me op.

Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Reddit
  • Webnews
  • Y!GG
  • Ask
  • Live-MSN
  • Technorati
  • YahooMyWeb

Exchange 2010 SP1 Rollup 6 vrij gegeven

Microsoft heeft vandaag Rollup 6 voor Exchange Server 2010 SP1 vrij gegeven. Met deze rollup worden de volgende issue opgelost:

  • 2431609 (http://support.microsoft.com/kb/2431609/ ) Er is een update beschikbaar die het bericht van een bewaarbeleid in OWA updates voor Exchange Server 2010
  • 2449266 (http://support.microsoft.com/kb/2449266/ ) EWS daalt de TCP-verbinding de clienttoepassing EWS zonder dat een foutbericht wordt weergegeven in een omgeving met Microsoft Exchange Server 2010
  • 2480474 (http://support.microsoft.com/kb/2480474/ ) Een gebruikers ontvangen geen waarschuwingsberichten quota na het toepassen van SP1 voor Exchange 2010
  • 2514820 (http://support.microsoft.com/kb/2514820/ ) Een binnenkomend faxbericht is niet bezorgd bij de geadresseerde in een omgeving met Exchange Server 2010 SP1
  • 2521927 (http://support.microsoft.com/kb/2521927/ ) De functie Integratie met Exchange ActiveSync uitschakelen voor OWA doorgevoerd niet in de premie van OWA-clients in een omgeving met Exchange Server 2010
  • 2528854 (http://support.microsoft.com/kb/2528854/ ) De Microsoft Exchange Mailbox Replication-service vastloopt op een computer waarop Exchange Server 2010 SP1 is geïnstalleerd
  • 2535289 (http://support.microsoft.com/kb/2535289/ ) De service Microsoft Exchange Information Store crashes soms wanneer u een antivirusprogramma op een server met Exchange Server-postbus 2010 uitvoert
  • 2536313 (http://support.microsoft.com/kb/2536313/ ) Aflevering van langzame en toegang tot de postbus voor logboekregistratie in postvakken op een server met Exchange Server 2010
  • 2544246 (http://support.microsoft.com/kb/2544246/ ) Ontvangt u een NRN van een vergaderverzoek later 120 dagen nadat de geadresseerde het verzoek in een omgeving met Exchange Server 2010 SP1 geaccepteerd
  • 2548246 (http://support.microsoft.com/kb/2548246/ ) De service Microsoft Exchange Information Store crashes af en toe wanneer de weergave van een map op een Exchange Server 2010 mailbox server is beschadigd
  • 2549183 (http://support.microsoft.com/kb/2549183/ ) ‘Er zijn geen objecten selecteren’ verschijnt wanneer u een server in een omgeving met Exchange Server 2010 SP1 verbinding opgeven via de EMC
  • 2549289 (http://support.microsoft.com/kb/2549289/ ) Een gevolmachtigde RBAC-rol kan onverwacht uitvoeren de opdracht Add-MailboxPermission of de opdracht Remove-MailboxPermission op een server met Exchange Server 2010 die valt buiten het bereik van de toewijzing rol
  • 2555851 (http://support.microsoft.com/kb/2555851/ ) Een postbus niet wordt weergegeven in bepaalde adreslijsten na het uitvoeren van opdrachten op het postvak in een omgeving met Exchange Server 2010 SP1
  • 2559814 (http://support.microsoft.com/kb/2559814/ ) Een gebruiker kan toevoegen of verwijderen van gemachtigden vanuit een postbus via Outlook in een omgeving met Exchange Server 2010
  • 2561514 (http://support.microsoft.com/kb/2561514/ ) Exchange Server 2003-gebruikers weergeven de vrije/bezette tijden van een gebruiker niet in een andere organisatie in de federatieve
  • 2563860 (http://support.microsoft.com/kb/2563860/ ) U kunt een nieuwe mailbox database maken als er al 1000 postbus databases in een omgeving met Exchange Server 2010
  • 2567409 (http://support.microsoft.com/kb/2567409/ ) Bepaalde berichten vrije/bezette tijden worden niet gerepliceerd van een server met Exchange Server 2010 naar een server met Exchange Server 2003
  • 2571791 (http://support.microsoft.com/kb/2571791/ ) Bewaarbeleid worden toegepast op Contactpersonen-items onverwacht in een omgeving met Exchange Server 2010
  • 2572052 (http://support.microsoft.com/kb/2572052/ ) Bepaalde eigenschappen van een terugkerende vergaderverzoek uit externe e-mailaccounts ontbreken in een omgeving met Exchange Server 2010 SP1
  • 2575005 (http://support.microsoft.com/kb/2575005/ ) De EMC- of de EMS kan niet worden gestart in een omgeving met Exchange Server 2010 Service Pack 1
  • 2578631 (http://support.microsoft.com/kb/2578631/ ) Sommige gebruikers kunnen geen e-mailberichten verzenden naar een e-mailadres openbare map in een omgeving met Exchange Server 2010
  • 2579172 (http://support.microsoft.com/kb/2579172/ ) Items die zijn verwijderd of verplaatst nog steeds weergegeven in de oorspronkelijke map wanneer u Office Outlook in de online modus gebruikt voor toegang tot een postbus van Exchange Server 2010
  • 2579671 (http://support.microsoft.com/kb/2579671/ ) Geen resultaten worden geretourneerd wanneer u de methode ExpandGroup in de EWS voor een lijst van leden van een dynamische distributiegroep in een omgeving met Exchange Server 2010
  • 2582095 (http://support.microsoft.com/kb/2582095/ ) De eigenschap SmtpMaxMessagesPerConnection van een verbindingslijn verzenden wordt niet gerepliceerd naar de geplaatste Edge Transport server in een omgeving met Exchange Server 2010
  • 2600835 (http://support.microsoft.com/kb/2600835/ ) De service RPC Client Access loopt vast wanneer u een bijlage van een item met Outlook in de on line modus in een omgeving met Exchange Server 2010 SP1 verwijderen
  • 2601701 (http://support.microsoft.com/kb/2601701/ ) Het geheugengebruik van het proces MSExchangeRepl.exe blijft verhogen wanneer u een VSS-back-up op Exchange Server 2010-databases
  • 2616127 (http://support.microsoft.com/kb/2616127/ ) foutcode ‘0x80041606′ wanneer u Outlook in de online modus gebruikt om te zoeken naar een trefwoord tegen een postvak in een omgeving met Exchange Server 2010
  • 2617126 (http://support.microsoft.com/kb/2617126/ ) Het proces Store.exe vastloopt bij het verzenden van een e-mailbericht met bijlagen in een omgeving met Exchange Server 2010 SP1
  • 2627769 (http://support.microsoft.com/kb/2627769/ ) Sommige tijdzones in OWA worden niet gesynchroniseerd met Windows in een omgeving met Exchange Server 2010

De rollup is te downloaden via onderstaande site:

Update Rollup 6 for Exchange Server 2010 SP1 open

Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Reddit
  • Webnews
  • Y!GG
  • Ask
  • Live-MSN
  • Technorati
  • YahooMyWeb

Hoe wordt de OAB gedistribueerd?

Zoals je misschien wel weet heeft Exchange standaard één Offline Address Book (OAB) en een Global Address List (GAL). De GAL bevat alle objecten waar Exchange attributen op zijn geconfigureerd. Bijvoorbeeld groepen, gebruikersobjecten en contactpersonen.

De OAB wordt eenmaal per dag gegenereerd op de generation server. Binnen een Exchange omgeving is er namelijk één server die verantwoordelijk is voor het bouwen van het OAB. Dit is altijd een server waarop de Mailbox Role geïnstalleerd is.

Om erachter te komen welke server dit is kun je twee methodes hanteren:

Exchange Management Console (EMC)

  • Open Organization Management
  • Selecteer het Mailbox object
  • Selecteer de tab Offline Address Book

Exchange Management Shell (EMS)

  • voer het cmdlet get-offlineaddressbook | select name,server

Op deze server zal je in de Exchange directory de volgende directory vinden ExchangeOAB. In deze directory is wederom een directory aanwezig. Deze heeft als naam de GUID van het OAB. Er zijn een aantal bestanden in deze directory aanwezig:

  • lzx, de adressenboek bestanden
  • oab.xml,  de index met waar de adressenboek bestanden te vinden zijn. Zonder het oab.xml bestand weet een client niet waar de adressenboeken te vinden zijn en welke gedownload moeten worden.

Het OAB kan via twee manieren gedistribueerd worden:

  • Public Folders
  • Web

Tussen de Public Folders onderling wordt dit weer gerepliceerd indien er additionele replica’s geconfigureerd zijn. Maar hoe gaat dit exact in zijn werking naar de verschillende Client Access Servers (CAS)?

Om het OAB naar de geconfigureerde CAS Servers te distribueren wordt gebruik gemaakt van de File Distribution service. Deze service draait op de CAS Server en controleerd elke 8 uur of er een nieuwe OAB beschikbaar is.

In sommige gevallen kan dit dus als gevolg hebben dat gebruikers die Outlook in Online Mode of Outlook Web App gebruiken nieuwe gebruikers eerder zien. Dit kan in sommige gevallen natuurlijk best lastig zijn.

Om  deze tijd aan te passen kun je via de EMS de pollinterval aanpassen. Dit kun je doen door gebruik te maken van het -Set-OabVirtualDirectory cmdlet:

Set-OabVirtualDirectory -identity “servernaam\OAB (Default Web Site)” -pollinterval 120

Met bovenstaand voorbeeld configureren we dat de CAS Servers elke twee uur kijken of er een update is. Feit blijft natuurlijk wel dat de GAL maar één keer per 24 uur wordt gegenereerd. Wil je dus een object updaten hanteer dan de volgende stappen:

  • update het object
  • wacht AD replicatie af
  • voer het volgende cmdlet uit Update-GlobalAddressList “Default Global Address List”
  • voer het volgende cmdlet uit Update-OfflineAddressBook “servernaam\OAB (Default Web Site)”
  • voer het volgende cmdlet uit Update-FuleDistributionService

Voer je bovenstaande handelingen liever niet uit gebruik dan het cmdlet Update-FileDistributionService. Hiermee kun je CAS Servers de opdracht geven om te controleren of er een update beschikbaar is van de OAB.

Als er toch nog problemen optreden dan zal je met logging aan de slag moeten. Deze logging dient ingeschakeld te worden op de CAS Servers die het adressenboek distribueren:

Set-EventLog -Identity “MsExchangeFDS\General -Level Expert
Set-EventLog -Identity “MsExchangeFDS\FileReplication -Level Expert

Forceer vervolgens de File Replication service om te controleren of er een update is:

Update-FileDistributionService -identity servernaam

In de application event log zal je na enkele minuten het resultaat zien van het uitvoeren van de opdracht.

In bovenstaande afbeelding is te zien dat de data synchronisatie taak is gestart. In dit geval is de Web distibutie net aangezet waardoor er nog geen kopie van de OAB op de CAS Server aanwezig is.

Als het OAB eenmaal succesvol is gesynchroniseerd zal bovenstaande melding in het event log worden weergeven. Wanneer je nu naar de directory X:\Program Files\Microsoft\Exchange Server\V14\ClientAccess\OAB zal gaan zie je hier de directory met daarin de oab.xml en adressenboek bestanden.

Vergeet na het troubleshooten het logging niveau weer naar beneden te zetten:

Set-EventLog -Identity “MsExchangeFDS\General -Level Lowest
Set-EventLog -Identity “MsExchangeFDS\FileReplication -Level Lowest

Tot zover de blog over de OAB en hoe deze gedistribueerd wordt naar de CAS Servers. Wil je meer informatie hebben over de specifieke cmdlet’s neem dan eens een kijkje op onderstaande sites:

Technet: Update-FileDistributionService open
Technet: Update-GlobalAddresslist: open
Technet: Update-OfflineAddressBook: open

Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Reddit
  • Webnews
  • Y!GG
  • Ask
  • Live-MSN
  • Technorati
  • YahooMyWeb

Vanaf Exchange 2010 is het mogelijk om d.m.v. het New-MailboxImportRequest pst bestanden te importeren. Standaard kan dit cmdlet niet uitgevoerd worden. Het New-MailboxImportRequest cmdlet is namelijk geen standaard onderdeel van de standaard RBAC groepen.

RBAC
Om een nieuwe groep hiervoor aan te maken kun je gebruik maken van de Exchange Management Shell. Dit om te voorkomen dat er specifieke rechten ingesteld worden op gebruikers:

New-RoleGroup “Mailbox import and export Rights”

Met bovenstaande cmdlet maken we een nieuwe RBAC groep aan genaamd Mailbox import and export rights. De volgende stap is het toevoegen van het cmdlet aan de RBAC groep:

new-ManagementRoleAssignment -Role “Mailbox Import Export” -SecurityGroup “Mailbox import and export Rights”

Met bovenstaande cmdlet voegen we de rol Mailbox Import Export toe aan de eerder gemaakte RBAC groep.

Add-RoleGroupMember “Mailbox import and export Rights” -Member Administrator

Met het laatste cmdlet voegen we de gebruiker administrator toe aan de groep Mailbox import and export Rights. Wanneer dit cmdlet is uitgevoerd dient de Exchange Management Shell opnieuw opgestart te worden.

NewMailboxImportRequest
Voordat er een PST geimporteerd kan worden dient nog aan een andere belangrijke voorwaarde voldaan te worden. De groep Exchange Trusted subsystem dient rechten te hebben om de share met PST bestanden te benaderen. Wanneer dit niet gedaan wordt kan de melding Couldn’t connect to target mailbox voorkomen.

Wanneer ook deze laatste stap is geregeld kun je de import starten:

New-MailboxImportRequest -Mailbox Johan -FilePath \\File01\PST\johan.pst

In het bovenstaande voorbeeld importeren we de inhoud van de PST genaamd johan.pst wat in de share PST op de server file01 is geplaatst. De inhoud van deze PST wordt geimporteerd in de mailbox met de naam Johan.

Het proces kan gemonitord worden met de cmdlets:

  • Get-MailboxImportRequest
  • Get-MailboxImportRequestStatistics

Get-MailboxImportRequest
Dit commando geeft standaard een overzicht van de Mailbox Import Requests wat op dat moment uitgevoerd wordt.

Bijvoorbeeld:

Get-MailboxImportRequest -Identity “Johan\MailboxImport”

Hierbij bestaat de identity uit de naam van de mailbox gecombineerd met de naam van het import request. In bovenstaande voorbeeld vragen we de status op van het mailbox import request wat als jobname heeft MailboxImport. De data wordt in dit geval geimporteerd in de mailbox johan.

Get-MailboxImportRequestStatistics
Geeft een gedetaileerd overzicht van het Mailbox Import Request. Dit cmdlet kan i.c.m. het Get-MailboxImportRequest cmdlet uitgevoerd worden:

Get-MailboxImportRequest | Get-MailboxImportRequestStatistics

Geeft een overzicht van de huidige Mailbox Import Requests met additionele informatie.
Wanneer er zeer gedetaileerde informatie nodig is, bijvoorbeeld het aantal items, percentage etc. dan kan |FL nog toegevoegd worden aan het eerdere voorbeeld:

Get-MailboxImportRequest | Get-MailboxImportRequestStatistics | FL

Couldn’t connect to target mailbox
Zoals eerder besproken kan de foutmelding Couldn’t connect to target mailbox voorkomen. Om dit probleem te troubleshooten kun je achter het New-MailboxImportRequest de parameter -v van verbose worden toegevoegd. In onderstaande afbeelding is een voorbeeld hiervan te zien:

In dit geval stonden de rechten op de share goed en was er geen firewall die problemen veroorzaakte. Wanneer je op het internet gaat zoeken zijn er echter wel meer mensen te vinden die problemen hebben.

Oorzaak van dit probleem blijkt te zijn: de CAS Array. Om dit probleem tijdelijk op te lossen kun je ervoor kiezen om de RpcClientAccessServer waarde op een database tijdelijk aan te passen. Een misschien wat handigere manier is om een aparte DB hiervoor aan te maken waarin je de betreffende mailbox zet.

De RpcClientAccessServer waarde kan aangepast worden d.m.v. het volgende cmdlet:

set-MailboxDatabase MBDBTEMP -RpcClientAccessServer cas01.corp.local

In bovenstaande voorbeeld wijzigen we de RpcClientAccessServer tijdelijk naar één van de CAS servers zelf.

Vergeet niet nadat de betreffende actie is uitgevoerd de waarde weer te herstellen naar het origineel:

set-MailboxDatabase MBDBTEMP -RpcClientAccessServer casarray.corp.local

Remove-MailboxImportRequest
Net als een move request wordt een import request niet automatisch verwijderd. Een import request dient handmatig opgeschoond te worden. Dit kan gedaan worden d.m.v. het cmdlet Remove-MailboxImportRequest:

remove-MailboxImportRequest -identity johan\MailboxImport

Met bovenstaande cmdlet verwijderen we de eerder aangemaakte import request. Heb je meerdere import requests die je tegelijkertijd wil opschonen dan kun je het volgende cmdlet draaien:

get-MailboxImportRequest | where {$_.status -eq “completed”} | remove-MailboxImportRequest

 

Met bovenstaande voorbeeld zoeken we eerst alle mailbox import requests op met de status completed. Vervolgens verwijderen we deze requests.

Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Reddit
  • Webnews
  • Y!GG
  • Ask
  • Live-MSN
  • Technorati
  • YahooMyWeb

In de eerste blog hebben we gekeken naar het Set-OrganizationConfig cmdlet en dan specifiek naar de parameters voor distributie groepen. In dit tweede blog gaan we kijken naar de parameters voor Mailtips en Exchange Recipient.

Mailtips

Met mailtips is het mogelijk gebruikers van te voren informatie te geven voordat men het bericht heeft verstuurd. Enkele voorbeelden hiervan zijn:

  • de ontvanger niet aanwezig is en Out-Of-Office aan heeft staan;
  • het bericht wordt naar een groot aantal personen  verstuurd;
  • de mailbox van de ontvanger omdat zijn/haar mailbox vol zit;
  • of een ontvanger extern is;
  • of een distributielijst externe ontvangers bevat;

Om gebruik te kunnen maken van mailtips dient of Outlook 2010 of Outlook Web App (OWA) als client gebruikt te worden.

Om de mailtip functionaliteit te configureren op organisatie niveau zijn er 5 parameters beschikbaar:

  • MailTipAllTipsEnabled
  • MailTipsExternalRecipientsEnabled
  • MailTipsMailboxSourcedTipsEnabled
  • MailTipsGroupMetricsEnabled
  • MailTipsLargeAudienceTreshold

De mailtip functionaliteit is standaard ingeschakeld. Wil je Mailtips toch uitgeschakeld hebben dan dient de waarde van de parameter MailTipsAllTipsEnabled op false gezet te worden:

Set-OrganizationConfig –MailTipsAllTipsEnabled $false

Mailtips worden standaard niet getoond wanneer een bericht naar externe ontvangers wordt gestuurd. Indien dit wel gewenst is zal de parameter MailTipsExternalRecipientsTipsEnabled op true te zetten:

Set-OrganizationConfig –MailTipsExternalRecipientsTipsEnabled $true

De laatste twee parameters MailTipsGroupMetricsEnabled en MailTipsLargeAudienceTreshold dienen in combinatie gebruikt te worden.

Op de server waar het adressenboek wordt gegenereerd wordt elke nacht een proces uitgevoerd wat controleert hoeveel leden een groep heeft. De resultaten hiervan worden opgeslagen in een map GroupMetrics. In deze map worden drie bestanden aangemaakt:

  • GroupMetrics-dateTtime.bin, bevat de leden van alle distributie groepen in de organisatie;
  • GroupMetricsservername.xml, bevat configuratie informatie over de mailbox server die verantwoordelijk is voor het genereren van de data;
  • ChangedGroups.txt, bevat een lijst met groepen die gewijzigd zijn sinds de laatste update;

 De inhoud van deze map wordt vervolgens door de File Distribution Service van Exchange gedistribueerd naar de Client Access Servers. Daarnaast wordt de data elke 8 uur gedistribueerd naar de Mailbox servers die ingeschakeld zijn voor het genereren van Group Metric data.

Wanneer de MailTipsGroupMetricsEnabled parameter de waarde true, wat ook de standaard waarde is,   zullen de mailtips gebruik maken van deze data. Afhankelijk van de waarde die is ingesteld in de MailTipsLargeAudienceTreshold wordt een Mailtip weergeven. De standaard waarde van deze parameter is 25. Bevat een distributiegroep meer dan 25 leden dan zal er een Mailtip weergeven worden.

Set-OrganizationConfig –MailTipsLargeAudienceTreshold 50

Met bovenstaande parameter wordt ingesteld dat de Mailtip alleen wordt weergeven bij een distributiegroep met meer dan 50 leden.

Microsoft Exchange Recipient

De tweede parameter die in deze blog gesproken wordt is de MicrosoftExchangeRecipient parameters. Exchange 2010 bevat hiervoor vier parameters:

  • MicrosoftExchangeRecipientEmailAddresses
  • MicrosoftExchangeRecipientPrimarySmtpAddress
  • MicrosoftExchangeRecipientEmailAddressPolicyEnabled
  • MicrosoftExchangeRecipientReplyRecipient

Zoals de naam al doet vermoeden hebben alle parameters te maken met de recipients binnen Exchange.

Als gekeken wordt naar de waarde van de MicrosoftExchangeRecipientEmailAddresses dan is te zien dat de waarde hiervan gelijk is aan de e-mail adressen die worden uitgedeeld door de Default E-mail Address Policy. Alle adressen zijn gescheiden door een “;” wordt hier aan adres aan toegevoegd dan wordt de Default E-mail Address Policy geüpdate.

Echter is het niet te adviseren dit te doen. Als je goed kijkt naar de adressen zie je dat elk adres begint met MicrosoftExchange329e7.

Met de tweede parameter MicrosoftExchangeRecipientPrimarySmtpAddress kan ingesteld worden wat het primaire SMTP adres is. Deze waarde kan alleen gebruikt worden als de parameter MicrosoftExchangeRecipientEmailAddressPolicyEnabled de waarde false heeft dan wordt deze waarde genegeerd. Wordt de waarde gewijzigd naar een adres wat nog niet voorkomt in de policy dan zal deze automatisch toegevoegd worden.

Belangrijk om te vermelden is dat wanneer de Default E-mail Address Policy is uitgeschakeld is de MicrosoftExchangeRecipientPrimarySmtpAddress een waarde moet bevatten. Diverse services waaronder de Exchange UM service moeten namelijk een e-mail adres hebben. Wanneer de Default E-mail Address Policy is uitgeschakeld en de MicrosoftExchangeRecipientPrimarySmtpAddress geen waarde bevat zal deze service echter geen e-mail adres hebben. Het gevolg hier van is dat de service geen afzender adres heeft. Exchange zal vervolgens geen berichten meer accepteren van deze service.

Met de laatste parameter MicrosoftExchangeRecipientReplyRecipient kan geconfigureerd worden of de Microsoft Exchange recipiënt mail mag ontvangen. Dit account wordt gebruikt voor het versturen van DSN berichten naar interne gebruikers.  Wanneer je echter toe wil staan dat gebruikers terug kunnen mailen en deze mailbox gemonitord wordt dien je deze parameter te configureren:

Set-OrganizationConfig –MicrosoftExchangeRecipientReplyRecipient dsn@domain.com

Met bovenstaande zorgen we ervoor dat wanneer gebruikers een bericht terugsturen naar de Microsoft Exchange recipient mailbox dit wordt afgeleverd in de mailbox met als e-mail adres dsn@domain.com.

Dit was alweer het tweede deel van de serie verborgen mogelijkheden van Exchange 2010.  In de volgende blog gaan we kijken naar het cmdlet Set-ExchangeAssistanceConfig.

Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Reddit
  • Webnews
  • Y!GG
  • Ask
  • Live-MSN
  • Technorati
  • YahooMyWeb

Wanneer je bekend bent met Exchange 2010 weet je waarschijnlijk wel dat er met de Exchange Management Console (EMS) meer opties zijn als met de Exchange Management Console (EMC). Enkele voorbeelden hiervan zijn:

  • relay rechten configureren op een receive connector
  • logging inschakelen voor IMAP en POP3
In sommige gevallen zijn deze opties ook verborgen in het Exchange Control Panel. In deze serie van blogs kijken we naar deze cmdlets en dan vooral naar de parameters.
 
We beginnen met de verborgen features voor distributie groepen. Deze groepen kunnen gebruikt worden om berichten bij meerdere personen in hun persoonlijke mailbox af te leveren.
 
In Exchange 2010 zijn er drie parameters beschikbaar waarmee je de naam van de distributiegroep en de lokatie waar deze worden aangemaakt kan bepalen.
 
Deze parameters kunnen gebruikt worden i.c.m. het Powershell cmdlet set-organizationconfig.
 
 
DistributionGroupDefaultOU
Zoals de naam al zegt kun je hiermee de standaard OU configureren waar distributie groepen geplaatst moeten worden. Hiermee voorkom je dat distributie groepen in diverse OU’s in de Active Directory belanden.
Stel dat we een Active Directory hebben genaamd corp.local en we hebben in de AD een OU aangemaakt Distribution Groups. Om ervoor te zorgen dat alle nieuwe distributie groepen hier in geplaatst worden kan het volgende cmdlet gebruikt worden:
 
Set-OrganizationConfig -DistributionGroupDefaultOU ” corp.local/Distribution Groups” 
 
Eenmaal geconfigureerd zullen alle nieuwe distributie groepen in deze OU geplaatst worden.
 
DistributionGroupNameBlockedWordsList
Met deze parameter kunnen we woorden configureren die niet gebruikt mogen worden als naam voor een distributie groep. Deze parameter zal waarschijnlijk niet bij elke organisatie gebruikt kunnen worden. Voordat deze parameter wordt gebruikt dient goed geïnventariseerd te worden welke woorden eventueel niet gebruikt mogen worden.
Wanneer we bijvoorbeeld de woorden toys en computer niet in distributie groepen willen toestaan dienen we het volgende cmdlet te gebruiken:
 
Set-OrganizationConfig -DistributionGroupNameBlockedWordsList toys,computer
 
Deze parameter kan eventueel ook geconfigureerd worden via het Exchange Control Panel (ECP).
 
DistributionGroupNamingPolicy
Hiermee kan een naam conventie geconfigureerd worden die wordt toegepast zodra een nieuwe distributie groep wordt aangemaakt. In deze policy kunnen de volgende variabelen gebruikt worden:
  • Department
  • Company
  • Office
  • StateorProvince
  • CountryorRegion
  • CountryCode
  • Title
  • CustomAttribute1 tot CustomAttribute15
Stel dat we alle distributie groepen willen laten beginnen met DG_ gevolgd door de groepsnaam en landcode waarbij de laatste twee worden gescheiden door een underscore:
 
Set-OrganizationConfig -DistributionGroupNamingPolicy “DG_<GroupName><CountryCode>”
 
Wanneer we nu een nieuwe groep aanmaken genaamd support zal deze automatisch hernoemd worden naar bijvoorbeeld: DG_support_NL. Let hierbij goed op dat het, afhankelijk van de e-mail address policy, het e-mail adres dus ook DG_support_NL@corp.local zal worden.
 
Opgemerkt dient te worden dat de variabelen zoals eerder genoemd de waarde krijgen van de account waarmee deze distributie groep aangemaakt wordt.
 
Voor deze parameter geldt net als de voorgaande dat deze geconfigureerd kan worden via het ECP.
 
Parameters combineren
Natuurlijk kun je ook alle drie de parameters combineren. In het volgende voorbeeld stellen we de parameters als volgt in:
  • alle distributiegroepen moeten aangemaakt worden in de OU groups die zich bevindt in de OU demo
  • alle distributiegroepen dienen als naam te beginnen met DG_
  • het woord everyone mag niet gebruikt worden
Om bovenstaande in te stellen voeren we het volgende cmdlet uit:
 
Set-OrganizationConfig -DistributionGroupDefaultOU “corp.local/demo/groups”  -DistributionGroupNamingPolicy “DG_<GroupName>”  -DistributionGroupNameBlockedWordsList everyone
 
Wanneer nu via de EMC een nieuwe groep demousers wordt aangemaakt zul je nadat de groep is aangemaakt het volgende zien:
 
Proberen we nu nog een keer hetzelfde alleen geven we de nieuwe groep de naam everyone dan zal je de volgende foutmelding krijgen:
 
Dit was de eerste blog van de serie verborgen mogelijkheden van Exchange 2010. In het volgende blog gaan we verder met het set-organizationconfig cmdlet en kijken we welke overige parameters soms best handig zijn om te gebruiken.
Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Reddit
  • Webnews
  • Y!GG
  • Ask
  • Live-MSN
  • Technorati
  • YahooMyWeb

Nieuwe versie van fix-alias.ps1

Tijdens een migratie kom je weleens het probleem van verkeerde aliassen tegen, bijvoorbeeld spaties of ongeldige tekens in de alias. Microsoft heeft hier een mooi script voor beschikbaar gesteld fix-alias.ps1. Er zitten wel wat beperkingen aan het script. Om deze reden heb ik heb script wat aangepast zodat de volgende features zijn toegevoegd:

  • mogelijkheid om  meerdere zoektermen op te geven;
  • mogelijkheid om per issue een ander vervangingsteken op te geven;
  • mogelijkheid om ook Public Folder aliassen te controleren en te repareren;

Mocht je nog additionele wensen hebben laat het me gerust weten d.m.v. een comment achter te laten of contact op te nemen middels het contactformulier.

download fix-alias.ps1 (original version)
download fix-aliasv20.ps1

Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Reddit
  • Webnews
  • Y!GG
  • Ask
  • Live-MSN
  • Technorati
  • YahooMyWeb

Soms is het makkelijker om handelingen te automatiseren middels een script tijdens een migratie. Natuurlijk is het altijd afwegen of het het wel waard is om een script te maken of om het toch maar handmatig te doen. Waar de grens ligt is lastig te bepalen maar als je meer dan 50 items aan moet passen kan het zeker de moeite waard zijn om een script hiervoor te gebruiken.

Exchange 2010 bevat zelf een aantal scripts, bijvoorbeeld voor het configureren van de replica’s tijdens een Exchange migratie. Alle scripts zijn terug te vinden in de scripts directory. Deze directory is terug te vinden onder de Exchange installatie directory, bijvoorbeeld c:\Program Files\Microsoft\Exchange Server\V14\Scripts.

Wanneer je de Exchange Management Shell (EMS) hebt geopend kun je er eenvoudig naartoe gaan d.m.v. cd $exscripts.

Hier vind je o.a. de volgende scripts:

scriptomschrijvingvoorbeeld
AddReplicaToPFRecursive.ps1Script om replica's toe te voegen aan Public FoldersVoeg een Exchange 2010 server toe aan de replica's:
.\AddReplicaToPFRecursive.ps1 -server "Exchange 2003 Server" -TopPublicFolder "\" -ServerToAdd "Exchange 2010 Server"

Repliceer de system Public Folders naar de Exchange 2010 Server:
.\AddReplicaToPFRecursive.ps1 -TopPublicFolder "\NON_IPM_Subtree" -ServerToAdd "exchange2010
CheckInvalidRecipients.ps1Controleer de omgeving op gebruikers met incorrecte karakters, bijvoorbeeld spaties.\CheckInvalidRecipients.ps1
MoveAllReplicas.ps1Verplaatst alle replica's van een server. Dit is noodzakelijk om de Public Folder database te verwijderenVerplaatst alle replica's van de PF van Exchange 2003 naar Exchange 2010:
.\MoveAllReplicas.ps1 -Server "Exchange Server 2003" -NewServer "Exchange Server 2010"

Dit zijn slechts een aantal scripts die te vinden zijn in de scripts directory. Naast deze scripts zijn er al veel kant en klare scripts te vinden van zowel Microsoft als overige bloggers. Twee scripts die ik persoonlijk erg handig vindt zijn de volgende twee scripts:

  • fix-alias.ps1
  • ConvertFrom-LdapFilter.ps1
Het eerste script kan gebruikt worden om aliassen te repareren van mailboxen, mailcontacts en Public Folders. In sommige gevallen komt het namelijk voor dat gebruikers aparte tekens of spaties in aliassen hebben gebruikt. Vanaf Exchange 2007 is dit echter niet meer toegestaan. Wanneer je hier niks aan doet kan dit voor vervelende problemen gaan zorgen, bijvoorbeeld het compleet verdwijnen van gebruikers uit de adressenlijst.
Om dit te voorkomen heeft Microsoft het fix-alias script beschikbaar gesteld. Dit script geeft je de mogelijkheid om te zoeken op bepaalde karakters en deze vervolgens te vervangen. Stel je bijvoorbeeld voor dat alle aliassen eindigen op domein.com. Door het fix-alias script met de volgende parameters uit te voeren wordt @domein.com vervangen door niks:
 
fix-alias.ps1 -type mailbox -search “domein.com” -replace “”
 
De enige beperking die het script heeft is dat het niet twee fouten eruit kan halen. Bevat het script bijvoorbeeld zowel een @ als een spatie dan zal er een fout gegenereerd worden.
 
Het tweede script wat vooral makkelijk is als er recipient policies gemigreerd moeten worden is ConvertFrom-LdapFilter. Normaliter moet je namelijk zelf de adressenlijsten en recipient policy migreren door de LDAP filter om te bouwen naar een OPATH filter. Als je dit wat vaker doet is het vaak wel te doen maar in veel gevallen zul je dit niet dagelijks doen. Middels dit script kan ervoor gezorgd worden dat deze conversie automatisch plaats vindt. Stel dat er een recipient filter is, genaamd support dat gebruikt wordt om support.domein.com als e-mail adres toe te voegen aan iedereen die werkzaam is op de support afdeling:
 
Set-EmailAddresspolicy Support -RecipientFilter (.\ConvertFrom-LdapFilter.ps1 $.LdapRecipientFilter)
 
Zoals je ziet zijn er genoeg scripts die je kunnen helpen tijdens een migratie. Bovenstaande scripts zijn terug te vinden op onderstaande sites:
 
Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Reddit
  • Webnews
  • Y!GG
  • Ask
  • Live-MSN
  • Technorati
  • YahooMyWeb

Exchange 2007 SP3 Rollup 4 vrij gegeven

Microsoft heeft vandaag Rollup 4 voor Exchange Server 2007 SP3 vrij gegeven. Met deze rollup worden de volgende issue opgelost:

  • 2531208 Een maphiërarchie van de niet gesynchroniseerd met Outlook voor Mac 2011 in een omgeving met Exchange Server 2007 SP3
  • 2528437 EWS-toepassingen geen verbinding maken met Exchange Server 2007-servers nadat u in geaccepteerde domeinen wijzigingen
  • 2521063 U worden onjuist weergegeven als een organisator nadat u de vergadering synchroniseren met uw mobiele apparaat in een omgeving met Exchange Server 2007
  • 2517337 U kunt een postbus met een hekje (#) in het primaire SMTP-e-mailadres via OWA in een omgeving met Exchange Server 2007 niet openen.
  • 2515428 Het MSExchangeMailboxAssistants.exe-proces vastloopt tijdens de mapassistent beheerde journaal een bericht in een omgeving met Exchange Server 2007
  • 2508872 Het proces W3WP.exe in de Autodiscover-toepassingen op de Exchange Server 2007-Client Access-servers verbruikt veel CPU-bronnen
  • 2507374 ‘Kan dit item niet openen’ foutbericht in Outlook on line-modus in een omgeving met Exchange Server 2007
  • 2506827 Een UM auto attendant time-out en genereert een foutbericht voor ongeldige extensie-nummer in een omgeving met Exchange Server 2007
  • 2502276 Een vergaderverzoek series onverwacht worden verwijderd uit de agenda in een omgeving met Exchange Server 2007
  • 2498924 Foutbericht ‘Kan geen verbinding maken met een adreslijstserver’ wanneer u klikt op de knop laatste pagina in het zoeken naar resultaten in Exchange Server 2007 OWA
  • 2498156 OLM/oude onjuist wordt uitgevoerd op een RSG in een omgeving met Exchange Server 2007-databases
  • 2496806 Een mobiele telefoon een time-out optreedt wanneer u met ActiveSync synchroniseren van de agenda op de mobiele telefoon met een postvak van Exchange Server 2007
  • 2543879 Een PDF-bijlage verzonden vanaf een Mac-e-mailclient wordt niet weergegeven wanneer u het e-mailbericht opent via Outlook 2010 in een omgeving met Exchange Server 2007 SP3
  • 2491751 Spellingcontrole werkt niet goed in OWA wanneer een S/MIME-besturingselement wordt gebruikt en Offloading SSL is ingeschakeld in Exchange Server 2007
  • 2484147 Foutbericht ‘HTTP-fout 400-Ongeldig verzoek’ wanneer u OWA gebruikt voor aanmelding bij een zojuist gemaakte Exchange Server 2007-postvak
  • 2466220 Het vraagteken (?) tekens verschijnen in het onderwerp van een e-antwoordbericht in een omgeving met Exchange Server 2007
  • 2223294 Een nieuwe functie is beschikbaar voor het uitschakelen van het selectievakje “Geen einddatum” in OWA wanneer u een terugkerend vergaderingsitem in een omgeving met Exchange Server 2007 maakt
  • 977906 Er wordt een foutbericht weergegeven wanneer u bepaalde opdrachten in het EMS op een Exchange Server 2007-server uitvoert
  • 2495010 Het proces EdgeTransport.exe verbruikt 100% CPU-gebruik op een Exchange Server 2010 Edge Transport server of Exchange Server 2007 Edge Transport server
  • 2484817 Een postvak wordt in bepaalde adreslijsten niet weergegeven nadat u opdrachten op een Exchange Server 2007-postvak uitvoeren

    De rollup is te downloaden via onderstaande site:

    Update Rollup 4 for Exchange Server 2007 SP3 open

    Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
    • Digg
    • del.icio.us
    • Reddit
    • Webnews
    • Y!GG
    • Ask
    • Live-MSN
    • Technorati
    • YahooMyWeb