Exchange 2007 nach Exchange 2010 Migration FreeBusy-View-Option-Fehlermeldungen

Im Anwendungslog steht folgender Fehler:

Details
Product: Exchange
Event ID: 4002
Source: MSExchange Availability
Version: 8.0
Symbolic Name: ProxyWebRequestFailed
Message: Process %1: %2 failed. Caller SIDs: %3. The exception returned is %4. Make sure that Active Directory site/forest containing the user mailbox has at least one local Exchange 2007 server running Exchange Availability service. Turn up logging for MSExchange Availability service and test basic network connectivity.
 

Im Text kommt zus. folgender Text vor: FreeBusyViewOptions.TimeWindow is too long.

Auf den CAS 2007 Servern muss im IIS folgender Eintrag hinzugefügt werden:

Expand the Default Website
Select the EWS virtual directory.
Double click Applciation Settings
Add a new application value:
Name: maximumQueryIntervalDays
Value: 62
Click OK..

Make the change on all the 2007 CAS servers. You should see the 4002 event go away.

Exchange 2007 Transport Agent (RoutingAgent) VB.NET selbst gemacht

Seit Exchange 2007 gibt es die Möglichkeit, auf dem Hub-Transportserver Regeln einzurichten. (Ähnlich wie in Outlook)

Leider hat Microsoft die maximale Größe für den Regelspeicher auf 8k beschränkt. Viele Regeln passen da nicht rein, insbesondere wenn die Regeln viel Inhalt (Mailadressen oder Wörter) enthalten.

Als Lösung/Workaround wird deshalb ein Transport Agent vorgeschlagen.

Hier eine Lösung für einen RoutingAgent, der Mailverteiler nur im BCC Feld zulässt. Sollte ein Mailverteiler in To oder CC verwendet werden, wird die Nachricht zurückgeschickt. Die Gruppen werden anhand des Active Directory Attributes „msExchRequireAuthToSendTo“ gefiltert, welches auf TRUE stehen muss. „Exchange 2007 Transport Agent (RoutingAgent) VB.NET selbst gemacht“ weiterlesen

Exchange 2007 Message Tracking

Mich nervt diese umständliche Eingabe an Informationen beim Message Tracking. Ich brauche eine Quick and Dirty Lösung, da zu 95% immer nach Sender, Empfänger und Betreff in einem Bestimmten Zeitraum gesucht wird. Die Angabe des Servers (Hub oder MBX) soll automatisch (immer) erfolgen.

Schnell mal eine Lösung mit Powershell gebastelt, somit leicht modifizierbar! (Suchen über mehrere Tage würde das Zeitfenster pro Tag auf die angegebenen Zeiten beschränken. Da muss ich mir noch was überlegen, wie der LogParser wirklich Date+Time erkennen kann.)

Hier gehts zum script…. „Exchange 2007 Message Tracking“ weiterlesen

Exchange 2007 / OWA 2007 Reset OWA Light Mode as Administrator

Wenn ein Benutzer zum ersten Mal sein OWA startet, dann kommt nach dem Anmelden ein Formular, in dem er die Einstellung für Blinde und Personen mit Sehbehinderung aktivieren kann.

Das OWA Fenster ist anschließend im OWA Light Modus (kein Premium OWA).

OWA Auswahl für Blinde und Personen mit eingeschränktem Sehvermögen
OWA Auswahl für Blinde und Personen mit eingeschränktem Sehvermögen

Diese Einstellung wir im Postfach (Mailbox) in Verbindung mit dem Attribut Languages gespeichert (da steht es aber nicht wirklich drinnen). Um diesen Modus als Admin zurückzusetzen muss das Feld Languages mittels Powershell auf $NULL gesetzt werden (set-Mailbox <Identity> -Languages:$null). Der User bekommt beim nächsten Anmelden an OWA wieder das Auswahlfenster angezeigt.

Zur Zeit kläre ich, ob andere Internetbrowser (z.B. FireFox) damit ein Problem haben, wenn die FBA (Form Based Authentication) nicht verwender wird. Ggf. erscheint da dann eine leere Seite, keine Fehlermeldung.

Exchange 2007 Receive Connector Authentication

Einschränkungen am Receive Connector. Hier kann man festlegen, welche Systeme/User Mails am HUB Transport Server (Receive Connector) abgeben dürfen/können.

Wichtig, die Berechtigungen müssen auf dem Connector im Active Directory gesetzt werden. Dazu den ADSIEdit.msc verwenden und den entsprechenden Receive Connector in Configuration/Services/Microsoft Exchange//Administrative Groups/Exchange Administrative Group (FYDIBOHF23SPDLT) /Servers//Protocols/SMTP Receive Connector auswählen und die Sicherheitseinstellungen öffnen.

Receive Connector Security

Den Gewünschten Benutzer hinzufügen und folgende Rechte vergeben:

Receive Connector Berechtigungen

Weitere Infos gibts hier: http://technet.microsoft.com/en-us/library/aa996395.aspx

 

CAS Exchange 2007 Kennwortänderung über OWA für Postfächer die noch auf Exchange 2003 sind

Durch den CAS Server besteht ab Exchange 2007 nicht mehr die Möglichkeit der Kennwortänderung. Ein Benutzer mit Postfach auf Exchange 2003 bekommt eine Fehlermeldung angezeigt, dass die Seite nicht zur Verfügung steht.

Das ist leider richtig. Damit es aber wieder funktioniert sind folgende Schritte nötig (wohl gemerkt: WIEDER, d.h. ich setze voraus, dass es unter Exchange 2003 schon funktioniert hat!):

    1. Auf dem Exchange 2007 CAS Server muss unter der IIS Konsole bei den  „Web Service Extensions“ die „Active Server Pages“ auf „Allowed“ gesetzt werden.
    2. Wenn das Verzeichnisse C:\Windows\System32\Inetsrv\iisadmpwd schon existiert, dann müssen die Dateien NICHT vom Exchange 2003 OWA Server kopiert werden. Ansonsten natürlich diese Dateien kopieren. 😉
    3. die DLL IISPWCHG.DLL aus dem \SYSTEM32 Verzeichnis registrieren (regsvr32.exe)
    4. Im IIS Manager ein neues Virtuelles Verzeichnis anlegen: IISADMPWD, mit den Einstellungen wie unter Exchange 2003! (Alternativ die Konfiguration vom Exchange 2003 OWA in eine Konfigdatei speichern und im OWA 2007 importieren. Dann den Application Pool auf MSExchangeOWAAppPool setzen. (Vor dem Importieren darauf achten, dass die IUSR_ und IWAM_ in dem Konfig-File korrigiert werden!)
    5. IISRESET ausführen, oder OWA Server 2007 booten

    Danach sollte die Kennwortänderung wieder funktionieren.

    Aber: Wenn es unter 2003 schon nicht ging, dann bitte den vielfältigen Anleitungen im Internet folgen, dann sollte es ohne Probleme möglich sein, dieses Feature zu aktivieren.

    Matthias

    Hier ein Beispielbild

    iismanager.JPG

Exchange 2007 AntiSpam Filter auf Hub Transport Server

Wie schützt man eine Exchangeinstallation vor Spam, wenn man keinen Edge Transport Server installieren will/kann?

Dazu gibt es ein Script im …\Microsoft\Exchange Server\Scripte Ordner Install-AntiSpamAgents.ps1

Damit kann man in der MMC unter Organization Configuration\Hub-Transport\ einen weiteren Reiter aktivieren, der die Anti Spam Features anbietet.:

Exchange AntiSpam

Nach ausführen des Scriptes muss die MMC neu gestartet werden. Dann taucht der AntiSpam Reiter auf.

Exchange AntiSpam Detail Recipient 

Übersicht.

 Exchange AntiSpam Detail Recipient Detail

Hier kann man festlegen, welche Empfänger geblockt werden sollen.

Matthias

 

Exchange 2007 Ressource Postfächer, Räume und Equipment

Ein Raum oder Equipment Postfach kann man mit der Management Console anlegen.

Das Ausstattung eines Raumes kann mit der Management Console geändert werden (Ressource Information).

Set-Mailbox -Identity „ResourceMailbox01“ -ResourceCustom („TV“,“Beamer“) -ResourceCapacity 12

Die hier zur Verfügung stehenden Einträge muss man jedoch vorher in der Ressourcen Config definieren.

Set-ResourceConfig -ResourcePropertySchema („Room/TV“, „Room/Beamer“, „Room/Flipchart“,“Room/Whiteboard“,“Room/Telefon“,“Room/LAN“) 

Wichtig: Bei Equipment Mailboxen muss man den Präfix „Equipment/…“ verwenden, z.B. „Equipment/Auto“

Alternativ kann man auch über die Shell die Ausstattung von Räumen konfigurieren:

$ResourceMailbox = Get-Mailbox -Identity „Conference Room 1“
$ResourceMailbox.ResourceCustom+=(„TV“)
$ResourceMailbox.ResourceCustom.Add(„Whiteboard“)
Set-Mailbox -Instance $ResourceMailbox

 

 

Addressviews auf Exchange 2007 anpassen (Powershell)

Da ich bei einem Kunden mehr als 300 Adressviews anpassen sollte, habe ich mir dazu ein Powershell Script gebastelt. Damit geht’s schneller und einfacher.

Wer es verwenden möchte, muss seinen LDAP Pfad anpassen. Bitte vorher lesen, was das Script macht, dann ausprobieren!

$Searcher=New-Object System.DirectoryServices.DirectorySearcher
$Searcher.SearchRoot=“
LDAP://CN=All Address Lists,CN=Address Lists Container,CN=[Exchangeorg],CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=[YourDomain],DC=com“
$Searcher.SearchScope=1
$Searcher.Filter=“(&(objectClass=addressBookContainer)(!msExchQueryFilter=*))“
$Searcher.PageSize=1000
$Searcher.SizeLimit=1000

#
#   Suche alle betroffenen
#

$Result = $Searcher.FindAll()

#
# in schleife durchgehen, und alle Adressviews abarbeiten
#
foreach ($member in $Result) {

 #
 # views aus ADS referenzieren/holen
 # 
   $objADR = $Member.GetDirectoryEntry()
 
 #
 # Hilfsvariable
 #
   $Ident   = $objADR.cn

   Set-AddressList „$Ident“ -RecipientFilter „CustomAttribute15 -eq ‚DL-$Ident'“ -ForceUpgrade:$TRUE
   update-AddressList -Identity „$Ident“

}

 

 

 

Matthias

 

Upgrade auf Exchange 2007 ToDos

Adresslisten upgraden auf OPATH Syntax:

Set-AddressList „All Users“ -IncludedRecipients MailboxUsers
Set-AddressList „All Groups“ -IncludedRecipients MailGroups
Set-AddressList „All Contacts“ -IncludedRecipients MailContacts  

Set-GlobalAddressList „Default Global Address List“ -RecipientFilter {(Alias -ne $null -and (ObjectClass -eq ‚user‘ -or ObjectClass -eq ‚contact‘ -or ObjectClass -eq ‚msExchSystemMailbox‘ -or ObjectClass -eq ‚msExchDynamicDistributionList‘ -or ObjectClass -eq ‚group‘ -or ObjectClass -eq ‚publicFolder‘))}  

oder

oder

msExchQueryFilterMetadata: „Microsoft.Exchange12.8f91d340bc0c47e4b4058a479602f94c:RecipientFilterType=1“ (String)
msExchMinAdminVersion: „-2147453113“ (String)
msExchQueryFilter: „CustomAttribute15 -eq ‚[Your value]'“ (String)
purportedSearch: „(extensionAttribute15=[Your value])“ (String)
msExchRecipientFilterFlags: „1“ (String)
msExchLastAppliedRecipientFilter: „CustomAttribute15 -eq ‚[Your value]'“ (String)
msExchVersion: „4535486012416“ (String)

 

E-Mail Recipient Policy upgraden:

Set-EmailAddressPolicy PolicyName -RecipientFilter { ( DisplayName -like „IT*“ ) }

Full Mailbox Access auf Mailboxen setzen: Entweder über die Konsole, rechte Maustaste auf das Postfach, Manage Full Mailbox Access, oder über die Shell:

Add-MailboxPermission -Identity ‚CN=TeamMailbox1,CN=Users,DC=contoso,DC=com‘ -User ‚CONTOSO\donald.duck‘ -AccessRights ‚FullAccess‘ 

Matthias

 

 

Outlook 2007 Autodiscover / Exchange 2007

Für OOF (Abwesenheitsassistent) benötigt Outlook 2007 einen Konfigurationsserver. Der wird anhand der Autodiscovery Funktion ermittelt.

Damit das funktioniert, muss im DNS ein SRV Record hinzugefügt werden:

Service: _autodiscover
Protocol: _tcp
Port Number: 443
Host: ClientAccessServer.YourDomain.com

Der Zugriff erfolgt via https:// und sollte ein geeignetes Zertifikat voraussetzen.

Da der host-name (NetBios-Name) des Servers häufig vom DNS Namen des Servers abweicht (und somit auch das Zertifikat), kann man bei Exchange 2007 mit dem cmdLet Set-ClientAccessServer die AutodiscoverServiceInternalURI angeben. Das ist der CertificatePrincipalName wie im Zertifikat angegeben. (Siehe auch Set-OutlookProvider)

Hier noch ein Link zur MS KB: http://support.microsoft.com/kb/940726/en-us

 

Exchange 2007 und das liebe Schaltjahr…

Hint: System Attendant neu starten, dann kann man auch wieder Mailboxen anlegen.

O.k. dass es Schaltjahre gibt konnte man ja nicht ahnen…. die gib es ja ERST seit ca. 500 Jahren… 🙂

 

Und das ist kein Aprilscherz!

OT:
Julius Caesar is credited with inventing leap year in 45 B.C., with improvements added by Pope Gregory XIII in A.D. 1582. By my count, that means that humans have had more than 2000 years to get used to the idea, and more than 30 years to figure out how to account for leap years in computer code. That raises a reasonable question: Why on earth did Exchange Server 2007 administrators have a leap year problem on February 29 of this year?

Exchange 2007 User Mailbox zur Resource Mailbox konvertieren / AutoAccept

 

Set-Mailbox „MailboxName“ -Type Room

Und damit Besprechungsräume automatisch Besprechungsanfragen annehmen:

Set-MailboxCalendarSettings „MailboxName“ -AutomateProcessing AutoAccept

 

Eine Liste aller Resource Mailboxen:

Get-Mailbox | where {$_.IsResource -eq „true“}

 

Einige Parameter, die bei CalendarSettings angegeben werden können:

 

AddAdditionalResponse False