Archives for

Exchange 2010 / 2013: Abwesenheitsassistent per PowerShell konfigurieren

Der Abwesenheitsassistent eines Postfach lässt sich seit Exchange 2010 auch bequem über die Exchange Mangement Shell verwalten, ohne besondere Berechtigungen (z.B. Vollzugriff) für das Postfach zu haben.

Aktuellen Status des Abwesenheitsassistenten eines Postfachs ermitteln:

Get-MailboxAutoReplyConfiguration <alias>

Per PowerShell lassen sich nun die interne (-InternalMessage) und externe Abwesenheitsmitteilung (-ExternalMessage) konfigurieren. Der Schalter -AutoReplyState kennt 3 mögliche Werte:

- Enabled: (sofort) aktiviert
- Disabled: (sofort) deaktiviert
- Scheduled: hierüber lassen sich Aktivierung und Deaktivierung zu einem späteren Zeitpunkt konfigurieren. Diese steueren wir über die Schalter -EndTime und -StartTime

Beispiele:
1) Interne Absender sollen über die Abwesenheit informiert werden. Ein geplantes Zeitfenster wird nicht konfiguriert. Der Abwesenheitsassistent muss vom Benutzer oder Administrator händisch deaktiviert werden:

Set-MailboxAutoReplyConfiguration -Identity <alias> -AutoReplyState Enabled -InternalMessage „Hallo, ich bin derzeit nicht im Büro. Bitte wendet Euch an die Zentrale.“

2) Im zweiten Beispiel wollen wir zusätzlich die externe Benachrichtigung konfigurieren und ein Zeitfenster festlegen, währenddessen der Abwesenheitsassistent aktiviert wird. Die externe Mitteilung wird sich außerdem über mehrere Zeilen erstrecken. Dabei hilft ein bisschen quick & dirty HTML Code.

Set-MailboxAutoReplyConfiguration -Identity <alias> -AutoReplyState Scheduled -InternalMessage „Hallo, ich bin derzeit nicht im Büro. Bitte wendet Euch an die Zentrale.“ -ExternalMessage „<html><body>Sehr geehrte Damen und Herren,<br><br>leider bin ich momentan nicht im Büro zu erreichen. In dringenden Fällen wenden Sie sich bitte an unsere Zentrale. Diese erreichen Sie unter der Rufnummer 0123/4567890.<br><br>Mit freundlichen Grüßen<br><br>Beate Beispiel</body></html>“ -StartTime „03/26/2014 08:00:00“ -EndTime „03/30/2014 17:00:00“

HINWEIS:
- Der Nachrichtentext sollte in Anführungsstriche gesetzt werden.
- Start- und EndTime benötigen eine amerikanische Datumseingabe; sprich MM/DD/YYYY > 03/26/2014

Read More

Exchange 2010 – Verfügbaren Platz in Postfachdatenbank ermitteln

Exchange-Postfachdatenbanken wachsen mit zunehmendem Mailaufkommen an. Werden Postfächer verschoben oder Inhalt gelöscht, gibt eine Exchange-Datenbank den verfügbaren Platz nicht an das Betriebssystem frei sondern behält ihre Größe bei. Um zu ermitteln, wieviel Platz innerhalb der Exchange-Datenbank frei zur Verfügung steht, hilft folgender PowerShell-Befehl:

   Get-MailboxDatabase -Status | ft Name,DatabaseSize,AvailableNewMailboxSpace

Bei einem hohen Maß an verfügbarem Speicherplatz, ist u.U. über eine Offline-Defragmentierung der Datenbank nachzudenken.

Read More

Exchange 2010 #554 5.2.0 STOREDRV.Deliver.Exception

Beim Versenden von Emails an einen Emailaktivierten Öffentlichen Ordner kommt u.U. postwendend eine Unzustellbarkeitsbenachrichtigung (NDR) an den Absender mit folgender Meldung zurück:

554 5.2.0 STOREDRV.Deliver.Exception:ObjectNotFoundException; Failed to process message due to a permanent exception with message The Active Directory user wasn’t found. ObjectNotFoundException: The Active Directory user wasn’t found.

Das Problem tritt in Umgebungen auf in denen von Exchange 2003 auf Exchange 2010 migriert, und alle alten Exchange Server bereits aus der Infrastruktur entfernt wurden. Nach Abschluss der Migration bleiben Elemente der “Ersten Administrativen Gruppe” im Active Directory bestehen. So auch der Container “CN=Servers”, welcher allerdings keine Objekte mehr enthält.

Zur Behebung des Problems, muss der Servers-Container aus dem Active Directory entfernt werden:

- ADSI-Editor öffnen
- Verbindung herstellen > Bekannten Namenskontext auswählen: “Konfiguration”
- Konfiguration > CN=Configuration,DC=domain,DC=TLD > CN=Services > CN=Microsoft Exchange > CN=Organisationsname > CN=Administrative Groups > CN=Erste Administrative Gruppe
- Der Container CN=Servers sollte leer sein
- Den leeren Container CN=Servers per Rechtsklick auswählen > Löschen

Quelle:
Technet – Exchange Server Blog

Read More

Exchange 2010 Ereignis-ID 9320, 9325 und 9327

Während der Erzeugung des Offlineadressbuchs kommt es u.U. zu folgenden Warnungen:

Protokollname: Anwendung
Quelle: MSExchangeSA
Ereignis-ID: 9327
Ebene: Warnung
Beschreibung: Es wurden einige Einträge in der Offlineadressliste „\Globale Adressliste“ von OALGen ausgelassen. Um festzustellen, welche Einträge betroffen sind, muss die Ereignisprotokollierung für den Offlineadress-Generator mindestens auf „Mittel“ festgelegt sein.
   – \Standard-Offlineadressbuch

Protokollname: Anwendung
Quelle: MSExchangeSA
Ereignis-ID: 9320
Ebene: Warnung
Beschreibung: OABGen konnte keine vollständige Detailinformationen für einige Einträge in der Offlineadressliste der Adressliste „\Globale Adressliste“ generieren. Die Ereignisprotokollierung für den Offlineadresslisten-Generator muss mindestens auf „Mittel“ festgelegt werden, damit die betroffenen Einträge angezeigt werden.

Nichts leichter als das. In der Exchange-Verwaltungskonsole (EMC):

- Serverkonfiguration
- Server auswählen
- Kontextmenü des Servers > Diagnoseprotokolleigenschaften verwalten…

- Dienst „MSExchangeSA“ > OAL Generator auswählen
- Protokollierung auf Medium setzen

- Konfigurieren

Anschließend in die Exchange Verwaltungsshell (EMS) wechseln und über folgenden Powershell-Befehl eine erneute Generierung des Offlineadressbuchs anstoßen:

Get-OfflineAddressBook | Update-OfflineAddressBook

Im Eventlog findet sich nun Ereignis 9325 wieder:

Protokollname: Anwendung
Quelle: MSExchangeSA
Ereignis-ID: 9325
Ebene: Fehler
Beschreibung: OABGen hat den Benutzereintrag „<Benutzername>“ in Adressliste „\Globale Adressliste“ ausgelassen, weil die SMTP-Adresse ” ungültig ist.
   – \Standard-Offlineadressbuch

Per „Active Directory-Benutzer und –Computer“ oder ADSI-Editor die folgenden Attribute des genannten Benutzers auf Richtigkeit prüfen:

 -          proxyAddress  (Antwortadresse muss mit „SMTP:“ beginnen – alle anderen Adressen mit „smtp:“)

-          mail   (Antwortadresse)

-          showInAddressBook

-          msExchHomeServerName
Handelt es um einen Postfach-aktivierten Benutzer müssen alle 4 Attribute gefüllt sein. Sollte der Benutzer über kein Postfach verfügen, sind u.U. die Attribute „showInAddressBook“ und „msExchHomeServerName“ gefüllt und müssen geleert werden.

Quellen:
Technet Event 9325
Technet Event 9327

Read More

Outlook | Abwesenheitsmitteilung nach jeder Email

Wird in Outlook der Abwesenheitsassistent (in Outlook 2010: Automatische Antworten) aktiviert, informiert Exchange jeden Absender nur ein einziges Mal über die Abwesenheit des Empfängers. Solange bis der Abwesenheitsassistent deaktiviert und wieder aktiviert wird.
Sollen Absender stattdessen nach jeder gesendeten Email darüber benachrichtigt werden, dass man derzeit außer Haus ist, muss hierfür eine reguläre Outlook-Regel eingerichtet werden – ein AutoReply:

1) Regel-Assistent öffnen (Erweiterte Optionen)
2) Bedingungen definieren (z.B. Absenderadresse muss “domain.tld” enthalten)
3) Aktion auswählen: “diese vom Server mit einer Nachricht beantworten”


4) Klick auf das blau unterlegte “eine Nachricht” um
5) die gewünschte Abwesenheitsnachricht zu definieren (Emailfenster öffnet sich. Nur füllen: Betreff und Text)


6) Speichern & Schließen
7) Ggf. noch Ausnahmen festlegen
8 ) Fertig stellen

Vorsicht: Sollte der Absender ebenfalls einen AutoReply eingerichtet haben, kann es u.U. zu einer Schleifenbildung und somit einem hohen Maß an Mailaufkommen auf beiden Seiten führen. Das Risiko ist vor allem bei Verteilergruppen besonders hoch, da hierbei “an Alle” geantwortet wird (vorausgesetzt die Bedingung unter Punkt 2 ist zu weitläufig gefasst und schränkt die Regel nicht nur auf eine einzelne Adresse ein).

Read More

Exchange 2007 / 2010 – Automatische Antworten verbieten (Outlook Abwesenheitsassistent)

User können mithilfe des Outlook-Abwesenheitsassistenten Email-Empfänger außerhalb der eigenenen Exchange-Organisaton über ihre Abwesenheit informieren. Da diese Benachrichtigungen im schlimmsten Fall Spammern Tor und Türen öffnet, ist der Einsatz des Abwesenheitsassistenten in vielen Unternehmen nicht erwünscht. Dies lässt sich u.a. durch eine Betriebsvereinbarung untersagen. Möchte man jedoch sicher gehen, dass tatsächlich keine Abwesenheitsmitteilungen mehr nach Außen gelangen, müssen auf dem Exchange einige Anpassungen vorgenommen werden.

Im Beispiel soll die Abwesenheitmitteilungssperre lediglich für die Domäne test.de (inklusive aller Unterdomänen) greifen. Dürfen Abwesenheitsnachrichten an gar keine externen Domänen versandt werden, kann die “Default” Remotedomäne genutzt werden.

Remotedomänen werden in Exchange 2007 / 2010 unter dem Menü > Organisationskonfiguration > Hub-Transport > Reiter “Remotedomänen” verwaltet. Hier sollte sich bereits der Eintrag “Default” befinden, welcher alle externen Domänen umfasst (Domäne = *).

Für test.de muss über das Aktionsmenü eine weitere Remotedomäne erstellt werden.

Über die Exchange-Verwaltungsshell lautet der Befehl zur Erstellung der Remotedomäne:

New-RemoteDomain -Name Test-Domäne -DomainName *.test.de

In den Eigenschaften der neu erstellen Remotedomäne ist unter dem Reiter “Nachrichtenformat” der Haken “Automatische Antworten zulassen” zu entfernen.

In der Verwaltungsshell lässt sich selbiges über diesen Befehl einstellen:

Set-RemoteDomain -Identity Test-Domäne -AutoReplyEnabled:$False

Read More

Exchange 2007 / 2010 – Remote-Domänen ‘in bulk’ per CSV & PowerShell anlegen

Bei einer großen Anzahl an Remote-Domänen, ist es sinnvoll diese mithilfe einer CSV-Datei (Komma-separiert) und PowerShell anzulegen.

Beispiel:
- CSV namens “remotedomains.csv” wurde unter C:\Temp abgelegt
- Die CSV enthält 2 Spalten:

1) CSV_Name (Bezeichnung der Domäne; z.B. Contoso)
2) CSV_DomainName (Domain Suffix der Remote-Domäne; z.B. contoso.com)

PowerShell-Befehl:

Import-Csv C:\Temp\remotedomains.csv | foreach { New-RemoteDomain -Name $_.CSV_Name -DomainName $_.CSV_DomainName }
Der Befehl legt die Remote-Domänen mit dem Wert “AllowedOOFType = External” (Nur externe Abwesenheitsnachrichten zulassen) an. Befindet sich Outlook 2003 innerhalb der Exchange Organisation noch im Einsatz muss der Wert auf “ExternalLegacy” geändert werden:

Get-RemoteDomain | where {$_.AllowedOOFType -eq “External”} | Set-RemoteDomain -AllowedOOFType ExternalLegacy

Der Schalter “AllowedOOFType” bietet (alternativ) folgende Möglichkeiten:

None (Nichts zulassen)
External (Nur externe Abwesenheitsnachrichten zulassen)
ExternalLegacy (Externe Abwesenheitsnachrichten oder ältere Abwesenheitsnachrichten zul.)
InternalLegacy (Interne Abwesenheitsnachrichten oder ältere Abwesenheitsnachrichten zulassen)

Read More