Quantcast
Channel: Frankys Web
Viewing all 838 articles
Browse latest View live

Windows Server 2016: Neue Technical Preview (TP5)

$
0
0

Microsoft hat heute eine neue Version von Windows Server 2016 als Technical Preview veröffentlicht. Die Technical Preview 5 von Windows Server 2016 steht für Testzwecke zum Download bereit:

https://www.microsoft.com/en-us/evalcenter/evaluate-windows-server-technical-preview

Die TP5 findet sich auch im MSDN:

Windows Server 2016

Das RTM Release von Windows Server 2016 ist für den Herbst geplant. Eine Liste aller Neurungen findet sich hier:

https://technet.microsoft.com/en-us/library/dn765472(v=ws.12).aspx

Der Beitrag Windows Server 2016: Neue Technical Preview (TP5) erschien zuerst auf Franky's Web.


Tipp: Fehlerhafte GPO anhand der ID finden

$
0
0

Manchmal finden sich auf Clients oder Servern Fehler im Eventlog die auf fehlerhafte Gruppenrichtlinien (GPOs) hindeuten. Leider wird im EventLog nur die ID der GPO angezeigt, sodass die Suche nach der entsprechenden GPO schon etwas dauern kann:

GPO

Die Arbeit kann man sich mit der PowerShell und den ActiveDirectory PowerShell SnapIns einfacher machen

get-gpo -all | where {$_.id -match "XXXXXXX-XXXX-XXXX-B026-925CC1643B3X"}

2

Das erspart zumindest die Suche nach der problematischen GPO.

Der Beitrag Tipp: Fehlerhafte GPO anhand der ID finden erschien zuerst auf Franky's Web.

Exchange Configurator 2016 veröffentlicht

$
0
0


Ich habe gerade eine neue Version des Exchange Configurator für Exchange 2016 hochgeladen. Die neue Version ist sehr ähnlich der Version für Exchange 2013 und behebt nur kleine Schönheitsfehler.

Wie auch schon in der Version für Exchange 2013 werden ein paar Einstellungen abgefragt und Exchange dementsprechend konfiguriert. Folgende Einstellungen werden vorgenommen:

  • Outlook Anywhere URL
  • ActiveSync URL
  • EWS URL
  • OAB URL
  • Autodiscover URL
  • OWA URL
  • ECP URL
  • Akzeptierte Domain
  • Standard Sendeconnector
  • Name der Datenbank
  • Pfad der Datenbank

Exchange Configurator

Hier geht es direkt zum Download:

Exchange Configurator dient der Basiskonfiguration und ist auf Testumgebungen ausgelegt.

Der Beitrag Exchange Configurator 2016 veröffentlicht erschien zuerst auf Franky's Web.

Exchange Migration: Vorsicht bei Öffentlichen Ordnern (Datenverlust)

$
0
0

Wer sich gerade in der Migrationsphase von Exchange Server zu Exchange Server 2013/2016 befindet und öffentliche Ordner migrieren muss sollte den folgenden Artikel lesen:

https://support.microsoft.com/en-us/kb/3161916

Hier wird ein Problem beschrieben, welches in Datenverlust enden kann. Das Problem tritt auf, wenn es mehrere Öffentliche Ordner Datenbanken auf den Quell Servern gibt und nicht alle Öffentliche Ordner ein Replikat in der Endpoint Datenbank haben.

Hier die Kurzfassung:

Wenn es mehrere Öffentliche Ordner Datenbanken, also auf Exchange 2007 / 2010 Servern gibt, die zu Öffentlichen Ordner Postfächern migriert werden sollen, dann kann es zu Datenverlust kommen, wenn nicht alle Öffentlichen Ordner Replikate in der Endpoint Datenbank haben:

image

In dem Bild oben sind zwei öffentlichen Ordner Datenbanken (PFDB1 und PFDB2) zu sehen, jeweils mit dem Ordner F1 und F2, nur der Ordner F1 ist in der Endpoint Datenbank vorhanden. F2 jedoch nicht, da kein Replikat in der Datenbank PFDB1 vorhanden ist. Während der Initialen Synchronisation werden alle Öffentlichen Ordner kopiert, sowie aus PFDB1 als auch aus PFDB2. Erst beim finalisieren kann es zu Datenverlust kommen.

image

Bei der finalen Synchronisation werden nur noch die Änderungen, aus PFDB1 übertragen, nicht aber Änderungen die in PFDB2 vorgenommen wurden. Neue Elemente oder Änderungen nach der Initialen Synchronisation gehen verloren:

Datenverlust

Dieses Verhalten tritt bei Batch, sowie bei der Seriellen Migration auf. Um dem Problem aus dem Weg zu gehen wird folgende Lösung empfohlen:

Alle Öffentlichen Ordner in PFDB2 müssen ein Replikat in PFDB1 haben, damit die Daten entsprechend kopiert werden.

Das Problem betrifft alle derzeitigen Exchange Migrationspfade bei denen alte Öffentliche Ordner Datenbanken (Legacy Public Folders) zu Öffentlichen Ordner Postfächern (Modern Public Folders) migriert werden. Allerdings nur wenn es mehr als eine Öffentliche Ordner Datenbank gibt und nicht jeder Ordner ein entsprechendes Replikat verfügt.

Da es in größeren Umgebungen kaum möglich ist, alle Öffentlichen Ordner in einer Datenbank zusammenzufassen, bleibt derzeit nur Abwarten, bis das Problem mit einem Update behoben wird.

Der Beitrag Exchange Migration: Vorsicht bei Öffentlichen Ordnern (Datenverlust) erschien zuerst auf Franky's Web.

HP Sizing Tool für Exchange Server 2016

$
0
0

Hewlett Packard Enterprise (HPE) hat sein Exchange Server Sizing Tool aktualisiert, sodass jetzt auch Exchange 2016 Server geplant werden können.

Mit dem HPE Sizer ist es sehr einfach geeignete Hardware für eine Exchange 2016 Organisation zu finden. Ähnlich wie bei dem Mailbox Calculator können auch im HPE Tool die Parameter ziemlich genau definiert werden. Der Sizer empfiehlt dann, welche HP Hardware geeignet ist. Hier kann der HP Sizer für Exchange 2013 runtergeladen werden:

HPE Sizer for Microsoft Exchange Server

Sizing

Am Ende kommt ein wirklich guter Bericht raus, es fehlt eigentlich nur noch der „Gib mir 50% Rabatt und Bestell“-Knopf :-)

image

Ich habe gerade nur ein bisschen rumgespielt, mir gefällt es.

Noch ein kleiner Tipp, der HPE Sizer benötigt .NET Framework 3.5, unter Windows 10, kann .NET Framework 3.5 über die Systemsteuerung nachinstalliert werden:

image

Ohne .NET 3.5 startet der Sizer nicht.

Der Beitrag HP Sizing Tool für Exchange Server 2016 erschien zuerst auf Franky's Web.

Warnung: Trend Micro Worry Free 9 und Exchange 2016

$
0
0

Eine nette Leserin fragte mich, ob ich eine Möglichkeit kenne, das MAPIoverHTTP Protokoll für Exchange 2016 zurückzusetzen bzw. neu zu installieren. Es gibt zwar Möglichkeiten MAIPoverHTTP zu reseten, jedoch ist fraglich ob das in diesem Fall geholfen hätte. Hier also eine kleine Geschichte zum Thema Kompatibilität von Trend Micro Worry Free(!?) 9 und Exchange 2016. Silke hat mich freundlicherweise erlaubt die Informationen hier zu veröffentlichen, damit nicht mehr Admins in diesen Problem laufen. Danke Silke!

Hier also die Mail von Silke:

Kurzversion

Bei der  Installation des Messaging Server Agents aus der Trend Micro Worry Free Business Security 9.0 SP2 auf einem Windows Server 2012 R2 mit Exchange 2016 wird MAPI irreparabel zerstört.

Langversion

Ich schlage demnächst an der 75er Grenze meines SBS 2011 Premium (Server 2008 R2 mit Exchange 2010 und dezidiertem SQL-Server) an, und abgesehen davon muss das Teil jetzt auch endlich mal raus. Also ziehe ich das gesamte System auf mehrere Server 2012 R2 und die entsprechenden aktuellen Versionen von Exchange und SQL um. Server und SQL sind fertig, jetzt ist gerade Exchange dran.

Ich habe also Windows Server 2012 R2 auf einer neuen Maschine installiert, in die Domain eingebunden und auf dem blütenweißen Server Exchange 2016 installiert. Dann habe ich das Teil komplett konfiguriert, getestet und die User umgezogen. Alles gut, Zugriff über Outlook, OWA und ECP problemlos.

Bevor ich den Empfang auf den neuen Server umhänge, sollte da noch ein Virenscanner drauf… dachte ich mir <räusper>. Im System läuft Trend Micro Worry Free Business Security (TM WFBS) 9.0 (aktuelles Patchlevel).. WFBS hat außer den Security Agents für die Desktops und Server auch einen Messaging Security Agent für Exchange Server. Der wird installiert, indem der neue Exchange der Verwaltungskonsole der WFBS hinzugefügt wird.

Sofort nach der Installation konnten sich meine Outlook-Clients (2010 und 2016) nicht mehr verbinden. Ein neues Profil scheiterte daran, dass der Exchange angeblich nicht mehr erreichbar war,  OWA und ECP funktionierten weiter problemlos. Also habe ich erst mal alle betroffenen User mit OWA vertraut gemacht und dann Trend Micro und MS kontaktiert.

Hier mal die relevanten Antworten:

Antwort Trend Micro

Dear User

First of all, let me just provide you this information. Upon checking, looks like the Messaging Security Agent is not compatible with Exchange 2016. I believe that’s why the Exchange 2016 configuration was broken or not working anymore. Unfortunately, here’s the only possible solution that I can think of for this concern.

Make sure there are no more remnants of the MSA on the machine:

Refer to this helpful article for manual removal.

http://esupport.trendmicro.com/solution/en-US/1096694.aspx

Once done, you can try to check out this article from Microsoft on how to configure the MAPI over HTTP as they’ve mentioned to you.

https://technet.microsoft.com/en-us/library/mt634322(v=exchg.160).aspx

To tell you the truth, I’m not really familiar with this function itself from Microsoft so if you need assistance on this, you can refer to them instead.

Lastly, if all else fails, I believe we might resort to the re-installation of the Exchange as the Microsoft support suggested.

*Additional note: If you want protection for your Exchange 2016, you can try our Scanmail for Exchange (SMEX) instead.

Hope this answers your concern.

Let us know the results.

Thank you and have a good day!

Antwort Microsoft

This is a known issue which can be reproduced on Exchange 2016 Servers.

The installation of the TrendMicro application breaks the MAPI over HTTP protocol on the Exchange 2016 servers.

The only known workaround to the Problem is an installation of a new Exchange 2016 server.

The problem arises because of the use of a third party Application and is thus not supported from Microsoft perspective.

Ende

An dieser Stelle wurde dann auch nicht mehr versucht, MAPIoverHTTP wieder zum Leben zu erwecken. Wer weiß schon, was für faule Eier man sich noch ins Nest gelegt hat. Die Neuinstallation ist hier wahrscheinlich der einfachere Weg. Auf der Trend Micro Website habe ich keine Informationen gefunden, das Worry Free (netter Name in diesem Zusammenhang) schon kompatibel mit Exchange 2016 ist. Im Handbuch der Systemvoraussetzungen wird nur Exchange 2013 genannt, aber das scheint auch schon länger nicht mehr gepflegt zu werden, denn das SP für Exchange 2013 wird noch mit N/A angegeben:

Worry Free

Gerade Virenscanner verursachen immer wieder Probleme auf Exchange Servern, hier muss also die Kompatibilität unbedingt vorher sichergestellt werden. Auch die entsprechenden Ausschlüsse müssen konfiguriert werden:

https://technet.microsoft.com/en-us/library/bb332342(v=exchg.160).aspx

Falls Ihr auch solche Geschichten kennt, könnt ihr sie mir gerne zusenden. Ich finde es immer hilfreich von solchen Problemen im Vorfeld gehört zu haben :-)

Vielen Dank an dieser Stelle noch einmal an Silke, die der Veröffentlichung zugestimmt hat.

Ich gehe sogar soweit zu behaupten, dass auf Exchange Servern kein Virenscanner installiert werden muss, sondern ein etwas anderes Konzept zu mehr Erfolg und weniger Problemen führt:

Exchange

Wie seht ihr das? Meinungen dazu gerne in die Kommentare schreiben.

Der Beitrag Warnung: Trend Micro Worry Free 9 und Exchange 2016 erschien zuerst auf Franky's Web.

Exchange 2013/2016: EventID 106, Fehler beim Aktualisieren eines Leistungsindikators

$
0
0

Ich hasse Fehler im Eventlog, das Ereignis 106 ist da besonders hartnäckig. Es tritt bei mir immer mal wieder auf. Hier einmal ein Beispiel:

Event 106

Quelle: MSExchange Common

Ereignis-ID: 106

Fehler beim Aktualisieren eines Leistungsindikators. Der Indikatorname lautet ‘Percentage of MSAUserNetID Cache hits for last minute’, der Kategoriename ist ‘MSExchange Global Locator Processes’. Optionaler Code: 3. Ausnahme: The exception thrown is : System.InvalidOperationException: Der angeforderte Leistungsindikator muss als ReadOnly initialisiert werden, da er nicht benutzerdefiniert ist.
bei System.Diagnostics.PerformanceCounter.InitializeImpl()
bei System.Diagnostics.PerformanceCounter.get_RawValue()
bei Microsoft.Exchange.Diagnostics.ExPerformanceCounter.set_RawValue(Int64 value)
Last worker process info : System.ArgumentException: Es wird kein Prozess mit der ID 7816 ausgeführt.
bei System.Diagnostics.Process.GetProcessById(Int32 processId)
bei Microsoft.Exchange.Diagnostics.ExPerformanceCounter.GetLastWorkerProcessInfo()
Processes running while Performance counter failed to update:
2552 w3wp
..
0 Idle
Performance Counters Layout information: FileMappingNotFoundException for category MSExchange Global Locator Processes : Microsoft.Exchange.Diagnostics.FileMappingNotFoundException: Cound not open File mapping for name Global\netfxcustomperfcounters.1.0msexchange global locator processes. Error Details: 2
bei Microsoft.Exchange.Diagnostics.FileMapping..ctor(String name, Boolean writable)
bei Microsoft.Exchange.Diagnostics.PerformanceCounterMemoryMappedFile.Initialize(String fileMappingName, Boolean writable)
bei Microsoft.Exchange.Diagnostics.ExPerformanceCounter.GetAllInstancesLayout(String categoryName)

Das Event 106 wird für jeden Leistungsindikator erzeugt und erzeugt viele rote Fehler im Eventlog:

Event 106

Ich habe noch nicht rausgefunden warum das Event 106 immer mal wieder auftritt, aber immerhin einen Workaround. Wenn die Exchange Leistungsindikatoren neu registriert werden, ist erst einmal wieder Ruhe.

Für die Registrierung der Leistungsindikatoren kann das folgende kleine Script in der Exchange Management Shell (als Administrator) ausgeführt werden:

add-pssnapin Microsoft.Exchange.Management.PowerShell.Setup
$perfcounters = Get-ChildItem $exinstall\setup\perf\*.xml | foreach {$_.fullname}
foreach ($perfcounter in $perfcounters)
{
	write-host $perfcounter
	New-PerfCounters -DefinitionFileName $perfcounter
}

image

Die Leistungsindikatoren werden damit neu geladen, was sich an dem Event 1001 erkennen lässt:

image

Die Leistungsindikatoren für den Dienst msexchangeumcallrouteravailability (msexchangeumcallrouteravailability) wurden entfernt. Die Daten enthalten die neuen Werte der Registrierungseinträge “Last Counter” und “Last Help”.

Das Laden der Leistungsindikatoren dauert etwas, es gibt immerhin 272 bei einem Exchange 2016 Server. Während der Registrierung kommt es auch zu Fehlern, daher nehme ich an, dass es sich hier noch um Bugs handelt:

image

Der Beitrag Exchange 2013/2016: EventID 106, Fehler beim Aktualisieren eines Leistungsindikators erschien zuerst auf Franky's Web.

Installation Office Online Server und Anbindung an Exchange 2016

$
0
0

Vorwort

Ohne Office Online Server Integration kann das Word Dokument zwar runtergeladen werden, es lässt sich aber nicht direkt anzeigen:

Outlook on the Web

Installation

Unter Server 2012 R2 müssen zunächst die notwendigen Voraussetzungen installiert werden, am einfachsten wie immer mit der Powershell:

Install-WindowsFeature Web-Server,Web-Mgmt-Tools,Web-Mgmt-Console,Web-WebServer,Web-Common-Http,Web-Default-Doc,Web-Static-Content,Web-Performance,Web-Stat-Compression,Web-Dyn-Compression,Web-Security,Web-Filtering,Web-Windows-Auth,Web-App-Dev,Web-Net-Ext45,Web-Asp-Net45,Web-ISAPI-Ext,Web-ISAPI-Filter,Web-Includes,InkandHandwritingServices,Windows-Identity-Foundation

Voraussetzungen

Desweiteres werden noch die folgenden Pakete benötigt:

.NET Framework 4.5.2 sollte auf einem vollständig aktualisierten Server bereits per Windows Update installiert worden sein. Alternativ kann es wie oben unter dem Link oben runtergeladen und manuell installiert werden.

Jetzt kann auch schon die Office Online Server Installation beginnen. Die Installation ist selbsterklärend:

Installation

Installation

Installation

Installation

Die Installation ist nun abgeschlossen, weiter mit der Konfiguration.

Konfiguration von Office Online Server

Nach der erfolgreichen Installation on Office Online Server, wird zunächst ein Zertifikat für die neue Farm benötigt. In meinem Fall möchte ich die Farm unter office.frankysweb.de veröffentlichen, daher muss auf dem Zertifikat auch nur der entsprechende DNS-Eintrag konfiguriert werden. In diesem Fall hole ich mir ein Zertifikat von meiner Internen CA mit den folgenden Einstellungen:

Zertifikat

Wichtig ist an dieser Stelle der Anzeigename unter dem Reiter “Allgemein”, er wird für die Konfiguration der Farm benötigt:

Zertifikat

Natürlich kann auch ein Zertifikat von einer Öffentlichen CA verwendet werden. Wer ebenfalls eine interne CA verwenden möchte, kann sich weitestgehend an diesen Artikel halten:

Anstatt des Exchange Servers wird dann der Office Online Server auf der Vorlage berechtigt. Nachdem das Zertifikat ausgestellt wurde, kann die neue Farm erstellt werden:

Zertifikat

Mit dem folgenden Befehl wird die Farm erstellt:

New-OfficeWebAppsFarm -InternalURL "https://office.frankysweb.de" -ExternalURL "https://office.frankysweb.de" -CertificateName "Office Online Server"

Office Web App Farm

Interne und Externe URL sind in meinem Fall gleich. Hier empfiehlt es sich ebenfalls Split-DNS einzusetzen, sodass interne und externe Namen gleich sind.

Im IIS sollten jetzt zwei neue Websites erstellt worden sein, die Website mit dem Namen HTTP80 ist an das eben erstellte Zertifikat gebunden:

IIS

Ob alles bis hierher funktioniert hat, lässt sich testen in dem die Discovery Website aufgerufen wird:

https://office.frankysweb.de/hosting/discovery

OOS Test

Wenn eine XML-Datei angezeigt wird, hat es funktioniert und Exchange kann konfiguriert werden:

Konfiguration Exchange 2016

Die Konfiguration von Exchange 2016 ist jetzt schnell erledigt. Mit dem folgenden Befehl wird Office Online Server mit Exchange 2016 verheiratet:

Set-OrganizationConfig -WacDiscoveryEndpoint "https://office.frankysweb.de/hosting/discovery"

Exchange 2016

Jetzt muss nur noch der Pool neugestartet werden, damit die Konfiguration wirksam ist:

Restart-WebAppPool MsExchangeOwaAppPool

Exchange 2016

In OWA (oder Outlook on the Web) ist jetzt bei Office Dokumenten neben der Schaltfläche “Herunterladen” auch “Anzeigen” verfügbar:

Outlook on the Web

Mit einem Klick auf “Anzeigen” wird dann Word Online direkt in Outlook on the Web gestartet.

Office Online Server

Das funktioniert intern wunderbar, aber noch nicht von extern. Von extern muss der Office Online Server per Port 443 (HTTPS) erreichbar sein.

Wer wie ich allerdings nur eine öffentliche IP hat und Port 443 bereits mit Exchange belegt hat, hat hier zwangsläufig ein Problem.Ob sich Office Online auch unter einem anderen Port ansprechen lässt, habe ich nicht ausprobiert. Aber wer glücklicher Besitzer einer Sophos UTM mit Webserver Protection Lizenz ist, kann hier neben Exchange auch weitere Dienste unter Port 443 anbieten.

In diesem Artikel habe ich es bereits für Exchange 2016 mittels Sophos UTM 9.4 beschrieben:

https://www.frankysweb.de/sophos-utm-9-4-waf-und-exchange-2016/

Das Zertifikat muss neben den Exchange Einträgen dann auch den Office Online Server Namen enthalten. In meinem Fall also die folgenden Namen:

  • mail.frankysweb.de
  • autodiscover.frankysweb.de
  • office.frankysweb.de

Die entsprechende Konfiguration für Office Online Server findet sich im folgenden:

Konfiguration Sophos UTM 9.4

Um Office Online Server via Sophos UTM Webserver Protection (WAF) freizugeben, wird zunächst ein Firewall Profil erstellt:

UTM

Folgende Filterregeln müssen übergangen werden:

950109
950120
981173
981176
981204
973302
973347
973335
973334

Jetzt muss ein Real Webserver angelegt werden:

UTM

Und jetzt kann der Virtual Webserver angelegt werden:

UTM

Im öffentlichen DNS muss jetzt noch ein entsprechender HOST-A Eintrag angelegt werden (in meinem Fall office.frankysweb.de mit der öffentlichen IP der UTM).

Der Beitrag Installation Office Online Server und Anbindung an Exchange 2016 erschien zuerst auf Franky's Web.


Exchange 2013: Shell startet nicht, Keine Verbindung möglich

$
0
0

Hier mal wieder ein interessantes Exchange 2013 Problem, welches aufgetreten ist, nachdem jemand “aufgeräumt” hatte.

Fehlersituation

Outlook verbindet sich nicht mehr, Zugriff auch Exchange Shell und Exchange Administrative Center war auch nicht mehr möglich. Der Fehler ist aufgetreten nachdem der Exchange Server aufgrund einer fehlerhaften Konfiguration ein völlig falsches Datum hatte. Auch nachdem das Problem behoben war, wollte sich weder Outlook mit Exchange 2013 verbinden, noch war Zugriff auf die Verwaltungsoberflächen (Shell und EAC) möglich. Die Shell brachte nur diese Meldung:

Exchange 2013

AUSFÜHRLICH: Verbindung mit exchange.domain.local wird hergestellt.
New-PSSession : [exchange.doamin.local] Beim Verbinden mit dem Remoteserver “exchange.domain.local
ist folgender Fehler aufgetreten: [ClientAccessServer=EXCHANGE,BackEndServer=exchange.domain.local
d=c8d68f03-32d5-4c5a-affc-d9fd8fd4b413,TimeStamp=25.05.2016 18:44:58]  Weitere Informationen finden Sie im H
“about_Remote_Troubleshooting”.
In Zeile:1 Zeichen:1
+ New-PSSession -ConnectionURI “$connectionUri” -ConfigurationName Microsoft.Excha …
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : OpenError: (System.Manageme….RemoteRunspace:RemoteRunspace) [New-PSSession],
gTransportException
+ FullyQualifiedErrorId : -2144108477,PSSessionOpenFailed

Es wurde allerdings nicht direkt erkannt, das es sich im ersten Step nur um ein Zeitproblem handelte, also wurde viel probiert, optimiert und aufgeräumt… Etwas Zuviel, vielleicht…

Leider ist es nicht immer ganz einfach die relevanten Informationen aus der Fehlermeldung zu lesen, daher hier mal die Stichwörter an denen man eine grobe Richtung ausmachen kann, was den Fehler verursacht:

  • BackEndServer
  • exchange.domain.local
  • PSSessionOpenFailed

Hier könnte man also interpretieren, dass das Öffnen einer PowerShell Session (PSSessionOpenFailed) zum Exchange Server (exchange.domain.local) nicht funktioniert hat. Klingt logisch, denn die Shell startet nicht… Wichtig ist an dieser Stelle aber noch der Hinweis darauf, wo der Fehler liegt: BackEndServer.

Exchange 2013 unterteilt sich in zwei Rollen: FrontEnd (Client Access Rolle) und BackEnd (Mailbox Rolle), hier liegt also nah, dass es sich um ein Problem mit der Mailbox Rolle handelt. Beide Rollen haben jeweils eine eigene Website im IIS, mittlerweile werden fast nur noch MultiRole Server betrieben (FrontEnd und BackEnd auf dem gleichen Server), daher finden sich auch beide Websites auf dem gleichen Server:

IIS

Das Backend hat einen sprechenden Namen, das FrontEnd (Default Web Site) leider nicht. Mit dem Wissen aus der Fehlermeldung und dem Hintergrundwissen, dass die Exchange Shell eine Verbindung via IIS (PowerShell vDir) zum Exchange Server herstellen will, lässt sich der Fehler also zumindest eingrenzen.

In manchen Fällen ist es nötig die vDirs neu zu erstellen, zum Beispiel wenn Berechtigungen oder ähnliches hinüber sind.

In diesem Fall war es einfacher, es fehlte nur das Zertifikat in der IIS Webseiten Bindung:

Site Bindung

Normalerweise ist hier das Zertifikat mit dem Namen “Microsoft Exchange” zugewiesen. Sollte wie oben zu sehen nur “Nicht ausgewählt” angezeigt werden, kann das Zertifikat wieder hinzugefügt werden. Häufig tritt dieses Problem auf, wenn jemand unbedacht die “Zertifikate bereinigt”. Via IIS Manager kann zur Not auch ein neues Self Signed Zertifikat erstellt werden, und dieses entsprechend zugeordnet werden, sollte das Original Zertifikat nicht mehr vorhanden sein.

Zertifikat

Das Zertifikat kann dann in den Website Bindungen wieder ausgewählt werden. Nach einem IIS-Neustart (iisreset) funktionierte in diesem Fall auch der Zugriff auf Exchange wieder.

Dies gilt übrigens auch für Exchange 2016 Server.

Der Beitrag Exchange 2013: Shell startet nicht, Keine Verbindung möglich erschien zuerst auf Franky's Web.

Exchange 2010: Client Verbindungen der CAS Server anzeigen

$
0
0

Ab und an, kann man es ja doch mal ganz nützlich sein, wenn man weiß welcher CAS Server wie viele Client Verbindungen bedient. Könnte bei geplanten Updates oder bei Problemen mit dem Loadbalancer hilfreich werden.

Es gibt zwar schon einige Scripte, aber die funktionieren nicht auf Servern mit deutschem Betriebssystem / deutscher Exchange Installation, da hier die Performance Counter, welche durch das Script abgefragt werden, anders heißen.

Hier also eine Version, die auf Servern in deutscher Sprache und mit Exchange 2010 lauffähig ist:

$casservers = Get-ClientAccessServer

$stats = @()
foreach ($casserver in $casservers)
{
	$casservername = $casserver.name

	$OWA = $NULL
	$RPC = $NULL
	$EAS = $NULL
	$EWS = $NULL
	$POP = $NULL
	$IMAP = $NULL
	
	$OWA = (Get-Counter "\MSExchange OWA\Aktuelle eindeutige Benutzer" -ComputerName $casservername).CounterSamples[0].CookedValue
	$RPC = (Get-Counter "\MSExchange RPCClientAccess\Anzahl Benutzer" -ComputerName $casservername).CounterSamples[0].CookedValue
	$EAS = (Get-Counter "\MSExchange ActiveSync\Anforderungen/Sek." -ComputerName $casservername).CounterSamples[0].CookedValue
	$EWS = (Get-Counter "\MSExchangeWS\Anforderungen/s" -ComputerName $casservername).CounterSamples[0].CookedValue
	$POP = (Get-Counter "\MSExchangePOP3(_total)\Aktuelle Verbindungen" -ComputerName $casservername).CounterSamples[0].CookedValue
	$IMAP = (Get-Counter "\MSExchangeIMAP4(_total)\Aktuelle Verbindungen" -ComputerName $casservername).CounterSamples[0].CookedValue
	
	$OWA = "{0:N0}" -f $OWA
	$RPC = "{0:N0}" -f $RPC
	$EAS = "{0:N0}" -f $EAS
	$EWS = "{0:N0}" -f $EWS
	$POP = "{0:N0}" -f $POP
	$IMAP = "{0:N0}" -f $IMAP
	
	$stats += new-object PSObject -property @{CASServer="$casservername";OWA="$OWA";RPC="$RPC";EAS="$EAS";EWS="$EWS";POP3="$POP3";IMAP4="$IMAP"}
}

$stats | ft

Einfach in einer PS1 Datei abspeichern und via Exchange Management Shell ausführen. Die Ausgabe sieht dann in etwa so aus:

Verbindungen

Und ja, hier war der Loadbalancer die Ursache.

Der Beitrag Exchange 2010: Client Verbindungen der CAS Server anzeigen erschien zuerst auf Franky's Web.

Exchange Reporter 3.2 verfügbar

$
0
0

Heute ist es soweit, gerade habe ich Version 3.2 des Exchange Reporter hochgeladen. In der aktuellen Version konnte ich dank vieler Hinweise viele Fehler korrigieren. Vielen Dank an dieser Stelle an alle, die Fehler gemeldet haben. Ganz besonders möchte ich mich bei Ajdin bedanken, er hat nicht nur die meisten Fehler gefunden, sondern auch gleich den Fix mitgeliefert. Vielen Dank dafür!

Im folgenden findet sich eine Liste mit den Änderungen und Neuerungen. Ich muss zugeben das ich nicht alle Bugs aufgenommen habe, teilweise handelte es sich nur um einen Zeichendreher.

Ebenfalls gibt es 4 neue Module, im Handbuch findet sich die entsprechende Doku zu den Modulen.

Hier nun die Liste der Änderungen an Exchange Reporter:

  • Bugfixes
    • Erkennung Exchange Version verbessert
    • Kemp Einstellungen in Settings.ini eingefügt
    • Keine Daten bei mehreren AD-Domains
    • Office365Report: Keine Sortierung der größten Postfächer (Danke Kaari)
    • DGreport: Probleme bei Gruppen mit mehr als 1000 Mitgliedern behoben (Danke Marcel)
    • MXreport: Probleme beim SMTP Verbindungstest (Danke Ajdin)
    • RBLreport: In manchen Konfigurationen wurden nicht alle IPs geprüft (Danke Ajdin)
    • CAreport: Fehlerbehandlung verbessert
    • Exchange Reporter Temp Verzeichnis wird bei Start gelöscht
    • DMARC und RBLReport verwenden gleiche Varibale „UseExchangeDefaultDomain“ behoben (Danke Mario)
  • Neues Modul:
    • SSLLabsReport.ps1: Prüft Webserver und Exchange externe URLs mittels Qualys SSL Labs Test
    • POPconReport: Übersicht für Servolutions POPcon
    • PRTGReport: Ruft die Sensoren der Server aus Paessler PRTG ab und bindet sie in den Report ein (Siehe Modul Doku)
    • UTMReport: Extrahiert die AntiSPAM Übersicht der Sophos UTM Firewall aus den E-Mail Reports und bindet sie in den Exchange Report ein (Siehe Modul Doku)
  • Neue Funktionen:
    • UpdateReport: Zeigt neue Blogbeiträge von FrankysWeb innerhalb des Reportintervalls

Hier noch ein Screenshot des Moduls SSLLabsReport.

Exchange Reporter

Exchange Reporter kann hier runtergeladen werden:

Da sich das Formular zum Melden von Fehlern gut bewährt hat, führe ich es entsprechend weiter. Falls es also Probleme mit Exchange Reporter gibt, bitte das Formular nutzen:

* Erforderliches Feld

Erlaubte Dateiformate: doc,pdf,txt,gif,jpg,jpeg,png,eml,msg
Maximale Dateigröße: 1mb






Der Beitrag Exchange Reporter 3.2 verfügbar erschien zuerst auf Franky's Web.

FrankysWeb sieht jetzt etwas anders aus

$
0
0

FrankysWeb sieht jetzt ein bisschen anders aus. Die Unterschiede sind zwar nicht so groß, aber dennoch hat sich etwas am Design getan. Ich finde die Farben nach wie vor ganz schick, also habe ich es weitestgehend so belassen. Es hat sich allerdings ein bisschen was am Layout getan. Der Content Bereich ist etwas breiter geworden und die Schrift etwas größer, ich hoffe das Lesen fällt so etwas leichter.

Zum Vergleich hier noch ein Screenshot mit dem alten Design:

FrankysWeb

Ich habe noch etwas Arbeit vor mir, zum Beispiel müssen noch ein paar Strings übersetzte werden, aber das hole ich in den nächsten Tagen nach.

Ich hoffe es gefällt. Kritik, Anregungen, Glückwünsche, Danksagungen, Beleidigungen, wie immer gern per Kontaktformular oder einfach in die Kommentare.

Der Beitrag FrankysWeb sieht jetzt etwas anders aus erschien zuerst auf Franky's Web.

Neue Updates für Exchange Server 2013 / 2016

$
0
0

Heute wurden neue Updates für Exchange Server 2013 und Exchange Server 2016 veröffentlicht. Hier geht es direkt zum Download:

CU13 für Exchange 2013 und CU2 für Exchange 2016 bringen .NET 4.6.1 Support und beheben ein Problem beim Migrieren von Öffentlichen Ordnern, welches zu Datenverlust führen konnte.

Das Exchange Team empfiehlt erst das jeweilige Exchange CU zu installieren, bevor .NET Framework 4.6.1 installiert wird. Des weiteren werden die folgenden .NET Updates nach dem Upgrade benötigt:

Das CU 2 für Exchange 2016 aktualisiert auch das Active Directory Schema. Das CU2 steht jetzt nur noch als ISO-Datei zum Download bereit, das finde ich allerdings deutlich einfacher zu handhaben, als die alte große .EXE Datei. Allerdings ist die ISO Datei knapp 6,5 GB auch deutlich größer:

Updates

Das Exchange 2013 CU13 steht weiterhin als EXE-Datei zur Verfügung und ist “nur” knapp 1,7 GB groß. Beide CUs eignen sich für das Update sowie auch für eine Neuinstallation.

Zwar gab es mit den letzten CUs keine so sehr gravierenden Probleme das Updates zurückgezogen werden mussten, dennoch empfiehlt es sich wie immer nicht zu schnell zu aktualisieren und gründlich zu testen.

Der Beitrag Neue Updates für Exchange Server 2013 / 2016 erschien zuerst auf Franky's Web.

Kostenlose SAN-Zertifikate auch bei StartSSL

$
0
0

Neben Let’s Encrypt bietet auch StartSSL kostenlose SAN-Zertifikate für bis zu 5 Domains mit einer Laufzeit von 1 Jahr kosten los an. Die Zertifikate werden von allen gängigen Browsern und Geräten unterstützt.

Vorteil von StartSSL gegenüber Let’s Encrypt: Die Zertifikate sind 1 Jahr gültig, bei Let’s Encrypt sind es nur 3 Monate. Die Zertifikate müssen also nicht ganz so häufig getauscht werden.

StartSSL bietet ebenfalls einen Client an, der den IIS automatisch konfiguriert und das Zertifikat anfordert und installiert. Dieser Weg ist allerdings auf Exchange Servern mit Vorsicht zu genießen. Das Zertifikat nur an den IIS zu binden reicht nicht aus, es muss auch in der Exchange Konfiguration hinterlegt sein.

Ich rate also davon ab den Client zu benutzen. StartSSL bietet wie jede andere CA (Let’s Encrypt leider nicht) auch, die Möglichkeit einen CSR einzureichen und somit an das Zertifikat zu kommen. Ich finde die Variante via CSR immer noch am Besten, da man sich hier sicher sein kann, dass der private Schlüssel den Server nicht verlässt. Außerdem muss weder eine umständliche Firewall Anpassung (WAF) vorgenommen werden, noch verkonfiguriert ein Tool den IIS-Server.

Kleines Howto StartSSL SAN-Zertifikate und Exchange Server

Es wird ein Account bei StartSSL benötigt (kostenlos), damit via CSR Zertifikate angefordert werden können. Hier kann ein Account angelegt werden:

https://startssl.com/SignUp

Nachdem der Account angelegt wurde und das Client Zertifikat zur Anmeldung installiert ist, kann sich hier mit dem Account angemeldet werden:

https://startssl.com/Account

image

Hinweis: StartSSL fragt hier ein Client Zertifikat ab, welches beim Anlegen des Accounts ausgestellt wird. Benutzer von Firewalls mit SSL-Inspection müssen also eine entsprechende Ausnahme konfigurieren.

Um an ein Zertifikat zu kommen, muss zunächst die Domain validiert werden. Domains können unter dem Punkt “Validation Wizard” validiert werden:

Zertifikate

in diesem Beispiel wird die Domain “frankysweb.com” validiert, damit später ein Zertifikat mit den Namen “outlook.frankysweb.com” und “autodiscover.frankysweb.com” angefordert werden kann:

image

Jetzt kann ausgewählt werden, an welche E-Mail Adresse der Code zur Verifikation geschickt werden soll:

image

Nachdem der Code eingegeben wurde, ist die Domain validiert und es kann ein CSR auf dem Exchange Server erzeugt werden:

New-ExchangeCertificate –Server "Servername" –GenerateRequest –FriendlyName "Exchange Zertifikat" –PrivateKeyExportable $true –SubjectName "c=LÄNDERCODE, s=BUNDESLAND, l=STADT, o=FIRMA, ou=ORGANISATIONSEINHEIT, cn=ALLEGMEINERNAME" –DomainName  outlook.frankysweb.de,autodiscover.frankysweb.de –RequestFile "\\SERVERNAME\C$\Anforderung.csr"

-Friendlyname ist der Anzeigename des Zertifikats in ECP, der Name ist frei wählbar

-SubjectName bestimmt die Eigenschaften des Zertifikats:

“c” steht für den Ländercode, beispielsweise “DE”
“s” steht für das Bundesland
“o” steht für die Firma
“ou” steht für die Organisationseinheit (IT, Exchange, EDV..)
“cn” steht für den allgemeinen Namen, der allgemeine Name sollte den FQDN für OWA enthalten

-DomainName: Hier werden alle alternativen Namen für das Zertifikat eingetragen, sowie auch der allgemeine Name, im Normalfall werden hier nur Autodiscover und eben der Zugriffsname für Outlook, OWA, ECP, ActiveSync etc benötigt, in diesem Beispiel also:

outlook.frankysweb.com
autodiscover.frankysweb.com

-Requestfile: Eine Freigabe auf der die Anforderung gespeichert werden kann

Hier als Beispiel für meinen CSR:

New-ExchangeCertificate –Server "EX1" –GenerateRequest –FriendlyName "StartSSL Exchange Cert" –PrivateKeyExportable $true –SubjectName "c=DE, s=NRW, l=Liemke, o=FrankysWeb, ou=IT, cn=outlook.frankysweb.com" –DomainName  outlook.frankysweb.com,autodiscover.frankysweb.com –RequestFile "\\EX1\C$\Anforderung.csr"

image

Hier wird der CSR auch direkt angezeigt, dieser kann jetzt bei StartSSL eingereicht werden. Dazu wird bei StartSSL der Punkt “Certificate Wizard” und “Web Server SSL/TLS Certifikate” ausgewählt

image

Anschließend müssen die Domains und der CSR eingetragen werden:

image

Nach einem Klick auf “Submit”, kann im Anschluss das Zertifikat runtergeladen werden. Der Download besteht aus einem ZIP Archiv, in dem das Zertifikat in verschiedenen Formaten vorliegt:

image

IIS-Server ist hier goldrichtig. In dem Order IISServer befindet sich das Zwischenzertifikat (1_Intermediate) und das Exchange Zertifikat (2_outlook.frankysweb.com)

image

Zunächst wird das Zwischen Zertifikat installiert:

image

image

Jetzt kann das Exchange Zertifikat mit dem folgenden Befehl installiert werden:

Import-ExchangeCertificate -FileData ([Byte[]]$(Get-Content -Path c:\2_outlook.frankysweb.com.crt -Encoding byte -ReadCount 0))

image

Nachdem das Zertifikat installiert und somit die Anforderung abgeschlossen wurde, müssen noch die Exchange Dienste an das neue Zertifikat gebunden werden (Das ist der Teil, den die Tools leider außer Acht lassen):

Enable-ExchangeCertificate -Thumbprint "ThumbprintVomImport" -Services POP,IMAP,SMTP,IIS

image

Wichtig: Eine Erinnerung setzen, damit das Zertifikat rechtzeitig vor Ablauf erneuert werden kann. Hier gibt es eine einfache Zertifikatsverwaltung mittels Excel und PowerShell.

Der Beitrag Kostenlose SAN-Zertifikate auch bei StartSSL erschien zuerst auf Franky's Web.

Microsoft Technical Summit 2016 in Darmstadt

$
0
0

Auch in diesem Jahr findet wieder der Microsoft Technical Summit 2016 in Darmstadt statt. Den Termin vom 06.12. bis zum 08.12.2016 kann man sich schon mal im Kalender blocken.

Technical Summit

Die größte deutsche Microsoft-Konferenz für Entwickler und IT-Professionals geht in die dritte Runde. Im Dezember ist es wieder soweit, nationale und internationale Experten betreten auf dem Technical Summit 2016 die Bühne und geben ihr wertvolles Fachwissen an Sie weiter.

Bleiben Sie dank einer ausgewogenen Agenda mit verschiedenen Keynotes, Workshops und Sessions getreu dem Motto „connecting.technologies.“ auf dem aktuellsten Stand der Technik, lernen Sie kommende Technologien kennen und schnuppern Sie in neue Themen hinein.

Profitieren Sie außerdem von der tollen Möglichkeit, Microsoft-Experten, Community-Größen, Partnerunternehmen, Firmenvertreter und viele Gleichgesinnte zu treffen, sich mit Ihnen auszutauschen und so das eigene persönliche Netzwerk zu erweitern.

Merken Sie sich den 6. bis 8. Dezember 2016 für einen Besuch des Technical Summit 2016 in Ihrem Kalender vor. Die Anmeldung zur Konferenz wird in Kürze freigeschaltet.

Quelle: https://www.microsoft.com/germany/technical-summit/default.aspx

Ich war auf den letzten 2 Technical Summits und sehr angetan von der Veranstaltung, daher werde ich auch im diesen Jahr wieder versuchen teilzunehmen.

Das Programm steht noch nicht fest, aber es kann ja nicht schaden, immer mal wieder einen Blick auf die Seite zu werfen um einen der begehrten Plätze für den Workshop Tag zu ergattern.

Der Beitrag Microsoft Technical Summit 2016 in Darmstadt erschien zuerst auf Franky's Web.


Exchange: Abwesenheitsnachrichten werden nicht verschickt

$
0
0

Ab und an gibt es Probleme mit dem Abwesenheitsassistent. Ich hatte da kürzlich ein interessantes Problem mit den Abwesenheitsnachrichten, die Lösung möchte ich nicht vorenthalten.

Der Abwesenheitsassistent wurde vom Benutzer korrekt eingerichtet und auch die Mailtips waren in Outlook für interne Benutzer sichtbar. Allerdings wurde keine E-Mail über die Abwesenheit geschickt, weder an interne noch an externe Adressen

image

Wie schon erwähnt war der Abwesenheitsassistent korrekt konfiguriert, auch in der Exchange Shell sah alles normal aus:

image

Ebenfalls war Versenden von Abwesenheitsnachrichten an externe Domains erlaubt:

image

Trotzdem wurde wie schon erwähnt keine Nachricht an interne sowie externe Benutzer verschickt. In der Nachrichtenverfolgung war ersichtlich, dass keine Nachricht abgewiesen oder verworfen wurde. Es wurde schlichtweg keine Mail erstellt.

Mittels MFCMapi konnte ich das Problem schließlich beheben (Download MFCMapi):

Zuerst den Abwesenheitsassistenten deaktivieren. Dann MFCMapi ausführen und mit dem entsprechenden Postfach verbinden:

image

Nach dem Logon doppelt auf das Postfach klicken:

image

Unter dem Ordner “IPM_SUBTREE” einen Rechtsklich auf “Posteingang” ausführen und “Open associated contents table” wählen

image

In meinen Fall gab es zig Einträge mit der MessageClass “IPM.Note.Rules.OofTemplate.Microsoft”. Diese Einträge habe ich alle gelöscht.

image

Nachdem alle Einträge gelöscht wurden, kann der Abwesenheitsassistent wieder eingeschaltet werden. Jetzt sollten die Abwesenheitsnachrichten wieder funktionieren:

Abwesenheitsnachrichten

Folgende Klassen können ebenfalls problematisch sein:

  • Message class: IPM.Rule.Message
    0x65EB001E == Microsoft Exchange OOF Assistant
    0x65EC001E == Microsoft.Exchange.OOF.InternalSenders.Global
  • Message class: IPM.Note.Rules.OofTemplate.Microsoft
  • Message class:IPM.Rule.Message
    0x65EB001E == MSFT:TDX OOF Rules
  • Message class:IPM.Rule.Message
    0x65EB001E == Microsoft Exchange OOF Assistant
    0x65EC001E == Microsoft.Exchange.OOF. AllExternalSenders.Global
  • Message class: IPM.Note.Rules.ExternalOOFTemplate.Microsoft
  • Message class: IPM.ExtendedRule.Message
    0x65EB001E == Microsoft Exchange OOF Assistant
    0x65EC001E == Microsoft.Exchange.OOF.KnownExternalSenders.Global

Wie schon erwähnt waren in meinen Fall die Einträge doppelt und dreifach vorhanden. Bei mir hat es gereicht diese Nachrichten zu löschen: IPM.Note.Rules.OofTemplate.Microsoft

Der Beitrag Exchange: Abwesenheitsnachrichten werden nicht verschickt erschien zuerst auf Franky's Web.

Ein Blick hinter die Kulissen und Aufbau einer Testumgebung

$
0
0

Häufig erreichen mich Fragen wie diese hier (aus ein paar gesammelten Mails):

Ich habe keine feste IP Adresse, möchte aber einen eignen Exchange Server betreiben, geht das?

Ich möchte zuhause eine Exchange Testumgebung aufbauen, wie machst du das?

Ich habe einen ganz kleinen Kunden der Exchange einsetzen möchte, was brauche ich dazu?

Da diese Fragen relativ häufig in meinem Postfach landen, möchte ich an dieser Stelle mal wieder einen kleinen Einblick hinter meine eigene kleine Exchange Organisation gewähren. Hier gab es diesen Blick hinter die Kulissen schon einmal, allerdings war des “damals” noch Exchange Server 2010. Hier also die aktuelle Umgebung, die sich auch für die eigene Testumgebung, Mini Exchange Organisation oder einfach nur zum Spielen eignet.

Update: Während ich diesen Artikel verfasst habe, ist mir in den Sinn gekommen, das ich hier auch den kompletten Aufbau zum Nachbau dokumentieren könnte. Es werden also ein paar Beiträge mit einer meiner Testdomains folgen. Wo Schritt für Schritt die nachstehende Umgebung aufgebaut wird.

Die Umgebung / Testumgebung

Testumgebung

Meine Domain wird nach wie vor von Strato gehostet, bisher kann ich absolut nichts schlechtes berichten, ich hatte bisher nur wenig Notwendigkeit den Support zu kontaktieren, aber der war durchweg schnell und kompetent. Von daher: Daumen hoch!

Großer Vorteil von Strato: Es lassen sich Subdomains anlegen, die sich dynamisch aktualisieren lassen, dazu später mehr.

Internetzugang erfolgt über eine VDSL-Leitung (100/50Mbit), die Einwahl übernimmt dabei eine Fritzbox.Die Fritzbox wiederrum leitet Port 80 (HTTP) und Port 443 (HTTPS) an die virtuelle Firewall weiter.

Die virtuelle Firewall (Sophos UTM) ist auf einem ESXi Server beheimatet. Der schluckt dank dem aktuellen Core-i7 und SSDs angenehm wenig Strom (~30 Watt unter Normallast). Mit 32 GB DDR4 RAM ist er auch ausreichend schnell. Für meine Exchange Organisation laufen auf dem ESXi 3 VMs: Domain Controller, Exchange Server und POP3 Connector VM.

Netzwerk

Netzwerk

Da mein ESX Server nur 2 Netzwerkkarten hat, habe ich diverse VLANs konfiguriert, VLAN 9 dient als Transfer Netz zwischen Fritzbox und Sophos UTM. DC und Exchange Server befinden sich im VLAN 10, welches sich hinter der Sophos UTM befindet. VLAN 11 ist die DMZ. In der DMZ befindet sich ein Windows Server, der die Mails via POP3 von Strato aus der Catchall Mailbox abholt und via SMTP an die UTM schickt (enin, nicht direkt an den Exchange). VLAN 20 ist für die Clients vorgesehen. Default Gateway ist für alle LANs die Sophos UTM. Es gibt noch weitere VLANs, aber die sind aus Exchange Sicht nicht relevant.

Mailfluss (Eingehend)

Mailfluss

Die POP3 Connector VM holt sich die Mails aus dem Strato Catchall Postfach via POP3 ab und leitet die via SMTP an die Sophos UTM weiter. Die UTM wiederrum leitet die Mail via SMTP an den Exchange Server weiter. Man könnte natürlich auch die Mail direkt vom POP3 Connector aus an den Exchange Server weiterleiten, ich habe mich allerdings dagegen entschieden. Die UTM hat einen recht guten SPAM Filter in der E-Mail Protection, der SPAM Filter arbeitet allerdings am liebsten mit dem SMTP Protokoll, zwar kann die UTM auch als POP Proxy fungieren und somit Viren ausfiltern, allerdings muss man dann ein paar Einschnitte in Kauf nehmen. Da ich recht viel teste und rumspiele, kann ich in dieser Konfiguration mittels SMTP-Profilen einzelne Domains auf andere Exchange Server umleiten, etwa wenn ich eine neue Testumgebung installiere.Zudem funktioniert so auch die SPAM Quarantäne.

Mailfluss (Ausgehend)

Mailfluss_A

Ausgehend sendet Exchange die Mails zunächst an die UTM, die hat wiederum den Strato SMTP Server als Smarthost konfiguriert, zwar könnte Exchange auch direkt an den Strato SMTP Server senden, allerdings bleibt in dieser Konfiguration dank der SMTP Profile der UTM wieder viel Freiheit für Testszenarien usw.

Active Directory / DNS / Exchange

Das Active Directory hört auf den Namen frankysweb.de, ich wollte es an dieser Stelle möglichst einfach halten, so brauche ich nicht mit alternativen Suffixen arbeiten. Da es sich bei mir ja nur um eine winzige Umgebung handelt, habe ich so auf einfachste Weise die E-Mail Adresse zum Benutzernamen gemacht. So ergibt sich auch das DNS-Split Brain:

dns

Bei Strato sind zwei Subdomains angelegt, die von der UTM mit der dynamischen IP meines Internetanschlusses aktualisiert wird. Auf meinem internen DNS Sever verweisen die Einträge Outlook und Autodiscover auf die IP Adresse des Exchange Servers.

Die Exchange Verzeichnisse (intern sowie extern mit Ausnahme von Autodisover) sind alle mit dem Namen outlook.frankysweb.de konfiguriert, somit lassen sich offizielle Zertifikate verwenden und es taucht nirgendwo eine Zertifikatswarnung auf.

Veröffentlichung Exchange Dienste

Die Exchange Dienste (Outlook Anywhere, OWA bzw Outlook on the Web, Autodiscover, EWS usw.) werden ebenfalls über die Sophos UTM veröffentlicht. Hierzu nutze ich die Webserver Protection der UTM.

waf

Die Fritzbox leitet Port 80 (HTTP) und Port 443 (HTTPs) an die Sophos UTM weiter. Die Webserver Protection der UTM führt dann eine HTTP zu HTTPs Umleitung durch, falls Verbindungen unverschlüsselt ankommen.

Zusammenfassung

Als Testumgebung, Spielereien oder die eigene kleine Umgebung eignet sicher dieser Aufbau. Ob man eine Single-Server Lösung als Unternehmen betreiben will, muss jeder selbst entscheiden. Ich habe keine großen Verfügbarkeitsanforderungen. Wenn mein ESX Server abbrennt, finde ich das ärgerlich, aber ich kann mein Backup schnell wieder auf meiner Workstation als Hyper-V VM zurückspielen, bis ich einen neuen ESX Server habe :-)

Ein HowTo zum Nachbau folgt noch.

Der Beitrag Ein Blick hinter die Kulissen und Aufbau einer Testumgebung erschien zuerst auf Franky's Web.

Aufbau einer kleinen Exchange 2016 Organisation (Teil 1)

$
0
0

Wie ja hier bereits angekündigt, gibt es hier auch die detaillierte Konfiguration zu meiner Exchange 2016 Organisation. Ziel ist es diese Umgebung aufzubauen:

Organisation

Hierfür benutze ich eine meiner Testdomains (frankysweb.org), die von Strato gehostet wird. Ich fange auf der grünen Wiese an, lediglich folgende Dinge sind bereits vorbereitet:

  • 2 x Windows Server 2012 R2 als VM mit allen Windows Updates
  • 1 x Fritzbox mit konfigurierten Internetzugang und dynamischer IP vom Provider
  • 1 x Sophos UTM als VM (WAN Port der UTM an LAN Port der Fritzbox, LAN Port der UTM im gleichen Netz wie die beiden Windows Server
  • gehostete Domain bei Strato (frankysweb.com)

Die beiden Windows Server sind bereits mit statischen IPs konfiguriert und wurden mit Windows Updates versorgt, hier die Namen und die IPs:

  • DC 172.16.100.12/24
  • Exchange: 172.16.100.13/24

Die UTM Sophos UTM (Basiskonfiguration) hört auf die folgenden IPs:

  • WAN: 192.168.10.105/24
  • LAN: 172.16.100.254/24

Die Fritzbox ist mit folgenden IPs konfiguriert:

  • WAN: dynamisch vom Provider
  • LAN: 192.168.10.1

Im ersten Teil dieser Artikelserie geht es um die Einrichtung des Active Directorys und der Konfiguration.

Installation Active Directory

Der Server mit dem sprechenden Namen DC wird Domain Controller für das Active Directory frankysweb.org. Das AD heißt also genauso wie die Domain bei Strato. Es funktioniert natürlich auch jeder andere Name, aber diese Konfiguration ist in kleinen Umgebungen schön einfach.

Hier noch einmal die IP Einstellungen des Servers DC:

image

Statische IP wie eingangs schon erwähnt, DNS zeigt auf die UTM.

Um ein neues Active Directory zu erstellen, muss zuerst die Serverrolle installiert werden, also Servermanager starten und Rolle mit den vorgeschlagenen Komponenten installieren

image

Nachdem die Rolle installiert wurde, kann der Server zum Domain Controller hochgestuft werden

image

Im ersten Dialog wird eine neue Gesamtstruktur mit dem Namen frankysweb.org erzeugt.

image

Im darauffolgenden Dialog, muss nur das Passwort für den Wiederherstellungsmodus vergeben werden, die anderen Einstellungen werden so belassen

image

Die Warnung im nächsten Dialog ist normal und bedeutet das beim authorativen DNS Server (in diesem Fall Strato) keine Delegierung für den Server DC eingerichtet werden kann, das wollen wir auch nicht tun, den wir verwenden DNS Split Brain, dazu später mehr.

image

Der Netbios Name mit nächsten Dialog, kann ebenfalls belassen werden. In meinem Fall ist es “FRANKYSWEB”

image

Die Pfade können ebenfalls übernommen werden, ich würde die Pfade auch nicht anpassen, denn mir fallen auf Anhieb ein paar Programme ein, die anderen Pfaden ein Problem haben,

image

Jetzt wird noch eine Zusammenfassung der Einstellungen angezeigt

image

Nachdem die Voraussetzungsüberprüfung abgeschlossen ist, kann installiert werden. Die Warnungen sind auch in diesem Fall wieder normal, wie oben schon erwähnt.

image

Der Server wird automatisch nach der Installation neugestartet, nachdem der Neustart erfolgt ist, kann die Konfiguration erfolgen.

Konfiguration DNS

Die Konfiguration des DNS Servers ist nicht weiter schwierig und schnell gemacht. Es gibt lediglich ein paar Dinge zu beachten. Für die Domain frankysweb.org gibt es nun 2 DNS Server, einen öffentlichen DNS Server bei Strato und einen internen DNS Server den wir eben mit der AD-Rolle installiert haben. Wenn ein interner Client, beispielweise ein PC, nun versucht www.frankysweb.org aufzurufen, wird der DC mit Non-Existent antworten.

image

Der interne DNS (DC) kennt eben keinen Host mit dem Namen www, also muss er entsprechend angelegt werden. Damit intern auf www.frankysweb.org zugegriffen werden kann, muss also ein HOST-A Eintrag mit dem Namen www. erstellt werden. Als IP Adresse wird die öffentliche IP des Webservers bei Strato eingegeben:

image

Jetzt sieht die DNS Konsole in etwa so aus:

image

Und auch die Namensauflösung von externen Hosts funktioniert:

image

Als es also noch weitere öffentliche Hosts geben soll, die intern erreichbar sein sollen (blog.frankysweb.org oder shop.frankysweb.org) müssen diese Hosts auch am internen DNS Server eingetragen werden. Am öffentlichen Strato DNS, müssen wir natürlich nicht unseren DC bekannt machen, geht ja keinen was an, wer Domain Controller ist :-)

Als nächstes muss die Reverse Lookup Zone angelegt werden, damit auch später die Rückwärtsauflösung funktioniert:

image

Zonentyp: Primäre Zone

image

Zonenreplikationsbereich kann so belassen werden

image

IPv4 ist auch schön

image

Netzwerk-ID ist das entsprechende Subnetz, also in meinen Fall 172.16.100

image

Und wir erlauben nur sichere Updates

image

Schon fertig. Jetzt können die PTR Records erstellt werden, also in der Forward Lookup Zone einen Doppelklick auf den DC ausführen und das Häkchen bei “Entsprechenden Zeigereintrag (PTR) aktualisieren” setzen

image

Bei dem Host www ist das nicht erforderlich, denn wir haben und brauchen auch keine Reverse Lookup Zone dafür.

Jetzt kann auch direkt noch ein Host Eintrag für die UTM angelegt werden:

image

Fertig. Weiter geht es mit dem Actove Directory

Konfiguration Active Directory

In der Konsole “Active Directory Standorte und Dienste” legen wir jetzt ein neues Subnetz an

image

Als Präfix wird das Subnetz angegeben und dem Standort (Default-First-Site-Name) zugeordnet:

image

Das war schon alles. Jetzt kann man sich eine schöne OU-Struktur überlegen, hier muss jeder selbst überlegen, wie er Benutzer, Gruppen und Computer am besten verwalten kann. Ich habe für meine Testumgebung 4 Organisationseinheiten angelegt:

image

Benutzer, Gruppen, Server und PCs. In der OU Benutzer habe ich ein paar Benutzer angelegt, hier ein Beispiel:

image

Sieht schon verdächtig wie eine schöne E-Mail Adresse aus, oder? :-) Auch eine Gruppe habe ich schon einmal erzeugt und meinen Benutzer hinzugefügt:

image

Das war schon alles.

Zusammenfassung

An dieser Stelle haben wir ein Active Directory, welches sich für die Installation einer Exchange Server Organisation eignet. Ein Testbenutzer und eine Gruppe ist ebenfalls schon angelegt. Wichtig ist das Thema DNS-Split Brain, externe Server müssen auch am internen DNS angelegt werden, damit sie aus dem internen Netz erreichbar, bzw. auflösbar sind (siehe Beispiel www). In kleinen Umgebungen, finde ich es völlig in Ordnung so zu verfahren, da sich meistens nur wenige Änderungen ergeben und es nur eine Handvoll entsprechender Einträge gibt. Für größere Umgebungen, gibt es andere Konzepte (schon wieder ein Thema für entsprechende Beiträge) :-) Falls etwas unklar ist, bitte in die Kommentare.

Der Beitrag Aufbau einer kleinen Exchange 2016 Organisation (Teil 1) erschien zuerst auf Franky's Web.

Aufbau einer kleinen Exchange 2016 Organisation (Teil 2)

$
0
0

In Teil 1 wurde bereits das Active Directory und DNS installiert und konfiguriert. Im zweiten Teil wird nun der Exchange Server in der Testumgebung installiert.

Hier noch einmal die Umgebung die aufgebaut wird:

Testumgebung

Zur Übersicht die IP-Adressen der beiden Server:

  • DC 172.16.100.12/24
  • Exchange: 172.16.100.13/24

Im ersten Teil hatte ich ja bereits erwähnt das ich die Windows Server schon installiert habe, zum einen denke ich, es wäre ein bisschen übertrieben, den Installationsprozess von Windows auch noch zu dokumentieren, aber bei dem Exchange Server möchte ich doch ein paar Worte zur Windows Konfiguration loswerden.

Vorwort

Auch wenn es sich nur um eine kleine Umgebung handelt, sollten ein paar Dinge beachtet werden:

  • Exchange Server nicht auf C: installieren
  • Auslagerungsdatei fest einstellen (RAM + 10 MB, aber nicht mehr als 32GB)
  • Auslagerungsdatei auf separate Partition
  • 8 GB RAM sind das absolute Minimum, in kleinen Umgebungen reichen meist 16 GB RAM aus
  • Minimum 2 CPU Kerne
  • Ausreichend Speicherplatz einplanen (Minimum 200 GB)

Daraus ergibt sich für diese Testumgebung eine VM mit 2 CPU Kernen, 16 GB RAM und der folgenden HDD Konfiguration:

  • 30 GB System C:
  • 17 GB Swap D:
  • 200 GB Exchange E:

Hier einmal die HDD Konfiguration:

image

Die Auslagerungsdatei wurde fest auf 16394 MB eingestellt (16 GB RAM * 1024 + 10 MB), wer 32 GB RAM oder mehr einsetzte, kann die Auslagerungsdatei auf 32 GB einstellen.

image

Hier die Netzwerkkonfiguration des Exchange Servers. IPv6 bleibt aktiviert und nur der DC ist als DNS Server konfiguriert:

image

Der Exchange Server ist bereits Mitglied er Domain frankysweb.org und das Computerkonto wurde in die OU “Server” verschoben.

image

Installation Exchange Server

Zuerst müssen die Voraussetzungen für Exchange Server  installiert werden. Die benötigen Windows Rollen und Features können am einfachsten per PowerShell installiert werden:

Install-WindowsFeature RSAT-ADDS, AS-HTTP-Activation, Desktop-Experience, NET-Framework-45-Features, RPC-over-HTTP-proxy, RSAT-Clustering, RSAT-Clustering-CmdInterface, RSAT-Clustering-Mgmt, RSAT-Clustering-PowerShell, Web-Mgmt-Console, WAS-Process-Model, Web-Asp-Net45, Web-Basic-Auth, Web-Client-Auth, Web-Digest-Auth, Web-Dir-Browsing, Web-Dyn-Compression, Web-Http-Errors, Web-Http-Logging, Web-Http-Redirect, Web-Http-Tracing, Web-ISAPI-Ext, Web-ISAPI-Filter, Web-Lgcy-Mgmt-Console, Web-Metabase, Web-Mgmt-Console, Web-Mgmt-Service, Web-Net-Ext45, Web-Request-Monitor, Web-Server, Web-Stat-Compression, Web-Static-Content, Web-Windows-Auth, Web-WMI, Windows-Identity-Foundation

Danach muss noch die UCMA Runtime 4.0 installiert werden und der Patch für .NET Framework 4.6.1:

Unified Communications Managed API 4.0 Runtime Download

Nach der Installation der Voraussetzungen stehen auch wieder Windows Updates an, also entsprechend aktualisieren. Da die Installation von Exchange 2016 CU2  recht langweilig ist, gibt es an dieser Stelle nur die relevanten Screenshots.

“Don’ use recommeded settings” auswählen, sonst fehlen ein paar Einstellungen:

image

Es muss nur dir Mailbox Rolle ausgewählt werden:

image

Als Installationsverzeichnis wird E:\Exchange Server angegeben, das ist in meinem Fall das 200 GB Laufwerk.

image

Der Name der Exchange Organisation kann frei gewählt werden. In meinem Fall FrankysWeb

image

Die Warnungen sind normal und weisen darauf hin, dass das Active Directory Schema für Exchange erweitert wird und es danach nicht mehr möglich ist frühere Versionen von Exchange Server zu installieren.

image

Testumgebung

Zusammenfassung

Active Directory, DNS und Exchange Server sind installiert. Active Directory und DNS sind bereits konfiguriert. Aber es fehlt noch einiges, denn so ist es nicht nutzbar. Der nächste Teil behandelt dann die Exchange Konfiguration inkl. Zertifikate, POP3 Connector und Strato Domain Konfiguration. Danach geht es dann weiter mit der Sophos UTM.

Der Beitrag Aufbau einer kleinen Exchange 2016 Organisation (Teil 2) erschien zuerst auf Franky's Web.

Aufbau einer kleinen Exchange 2016 Organisation (Teil 3)

$
0
0

Im ersten und zweiten Teil dieser Beitragsserie wurde bereits AD und DNS der Exchange Organisation installiert und konfiguriert. In Teil 2 wurde dann Exchange 2016 installiert. In diesem Teil geht es um die Exchange 2016 Konfiguration.

Um es etwas einfacher zu machen, hier noch einmal die Darstellung der Umgebung die installiert wird:

Organisation

Vorwort

Bevor es mit der Konfiguration losgeht, müssen wir uns Gedanken über den Namespace machen. Das Active Directory in dieser Testumgebung hört auf den Namen frankysweb.org, der Exchange Server hört auf den Hostnamen “Exchange”. das ergibt folglich den FQDN exchange.frankysweb.org. Das hört sich doch schon einmal wie ein ordentlicher Name an. Trotzdem möchte ich gerne den Namen outlook.frankysweb.org für den Zugriff auf Exchange nutzen. Ich finde Outlook.frankysweb.org ist für die Benutzer einfacher zu merken, außerdem kommt irgendwann eine Migration und im Falle eines Releasewechsels möchten wir den Namen ja gerne beibehalten.

Also wird folgendes konfiguriert:

  • OWA, Outlook, EWS, ActiveSync verbinden sich alle via outlook.frankysweb.org mit dem Exchange Server
  • Autodiscover wird über den namen autodiscover.frankysweb.org veröffentlicht

 

Starten wir also mit der Konfiguration

Konfiguration der virtuellen Verzeichnisse

Damit der Zugriff via outlook.frankysweb.org (bzw Autodiscover via autodiscover.frankysweb.org) funktioniert, brauchen wir zuerst 2 DNS Einträge auf dem internen DC / DNS Server:

image

In der Zone frankysweb.org werden also die Host Einträge “outlook” und “autodiscover” jeweils mit der IP des Exchange Servers angelegt. In meinem Fall ist es die 172.16.100.13. Für die beiden Host-A Einträge muss der Haken bei “Verknüpften PTR-Eintrag erstellen” entfernt werden. Gleiches gilt für “autodiscover”

image

Jetzt können auf dem Exchange Server die entsprechenden URLs konfiguriert werden. am einfachsten und schnellten funktioniert das via Exchange Management Shell mit den folgenden Befehlen:

Get-OwaVirtualDirectory -Server Exchange | Set-OwaVirtualDirectory -internalurl https://outlook.frankysweb.org/owa -externalurl https://outlook.frankysweb.org/owa
Get-EcpVirtualDirectory -server Exchange | Set-EcpVirtualDirectory -internalurl https://outlook.frankysweb.org/ecp -externalurl https://outlook.frankysweb.org/ecp
Get-WebServicesVirtualDirectory -server Exchange | Set-WebServicesVirtualDirectory -internalurl https://outlook.frankysweb.org/EWS/Exchange.asmx -externalurl https://outlook.frankysweb.org/EWS/Exchange.asmx
Get-ActiveSyncVirtualDirectory -Server Exchange  | Set-ActiveSyncVirtualDirectory -internalurl https://outlook.frankysweb.org/Microsoft-Server-ActiveSync -externalurl https://outlook.frankysweb.org/Microsoft-Server-ActiveSync
Get-OabVirtualDirectory -Server Exchange  | Set-OabVirtualDirectory -internalurl https://outlook.frankysweb.org/OAB -externalurl https://outlook.frankysweb.org/OAB
Get-MapiVirtualDirectory -Server Exchange  | Set-MapiVirtualDirectory -externalurl https://outlook.frankysweb.org/mapi -internalurl https://outlook.frankysweb.org/mapi
Get-OutlookAnywhere -Server Exchange | Set-OutlookAnywhere -externalhostname outlook.frankysweb.org -internalhostname outlook.frankysweb.org -ExternalClientsRequireSsl:$true -InternalClientsRequireSsl:$true -ExternalClientAuthenticationMethod 'Negotiate'
Get-ClientAccessServer Exchange  | Set-ClientAccessServer -AutoDiscoverServiceInternalUri https://autodiscover.frankysweb.org/Autodiscover/Autodiscover.xml

Bei den Befehlen muss jeweils mur der Servername hinter dem Parameter “-Server” entsprechend angepasst werden und die jeweilen URLs (-internalurl / –externalurl). Das sollte selbsterklärend sein.

Jetzt hört der Exchange Server auf die Namen outlook.frankysweb.org und autodiscover.frankysweb.org

image

Konfiguration Webmaster Postfach bei Strato

Dies ist ein kleiner Zwischenschritt, bevor es an die Konfiguration der Zertifikate geht. Damit später die Zertifikate ausgestellt werden können, ist eine E-Mail Adresse für Domainvalidierung erforderlich. Hierzu wird beim Webhoster (in meinem Fall Strato) ein Postfach mit der E-Mail Adresse webmaster@frankysweb.org angelegt.

Wichtig: Das Postfach wird beim Webhoster angelegt (noch nicht auf dem Exchange Server!

Bei Stro funktioniert das wie folgt. Im Kundenbereich, kann unter dem Punkt E-Mail ein neues Postfach erzeugt werden:

image

Adresse angeben und Passwort vergeben, fertig:

image

Auf dieses Postfach kann jetzt via Strato Webmail zugegriffen werden:

image

image

Hintergrund: Ich gehe davon aus, das es eine grüne Wiese ist. Im nächsten Schritt wird StartSSL als CA für das Zertifikat verwendet. StartSSL stellt Domain validierte Zertifikate aus. Dazu wird eine E-Mail an eine von mehreren vorgegebenen Adressen mit einem Code verschickt. Man muss also in der Lage sein, E-Mails an eine dieser Adressen (zum Beispiel webmaster@) zu empfangen um an den Code zu kommen.

Dieses Postfach dient also nur dazu an der Zertifikat für den nächsten Schritt zu kommen.

Anforderung Zertifikat mittels StartSSL

Natürlich brauchen wir für Exchange auch ein entsprechendes Zertifikat. ist aber nicht schwierig und kostet nix. In der Konfiguration der virtuellen Verzeichnisse haben wir die URLs festgelegt, über die auf Exchange zugegriffen werden soll (outlook.frankysweb.org und autodiscover.frankysweb.org) und nur diese beiden Namen werden auf dem Zertifikat benötigt.

Um an ein ordentliches Zertifikat zu kommen, kann StartCom (StartSSL) verwendet werden, hier gibt es Zertifikate mit 12 Monaten Laufzeit kostenlos. Ein Account kann hier kostenlos angelegt werden:

https://startssl.com/SignUp

Nachdem ein Account angelegt wurde, muss die Domain validiert werden, dies geschieht über den Reiter “Validations Wizard”:

image

Im nächsten Schritt wird angegeben, an welche E-Mail Adresse der Verification Code geschickt werden soll (siehe oben “Webmaster Postfach”)

image

Nach kurzer Zeit kommt der Code beim Webmaster an, da unsere Exchange Umgebung noch nicht fertig ist, wird halt Strato Webmail genutzt:

SNAGHTML4a0893

Hinweis: Man könnte das Webmaster Postfach auch auf dem Exchange einrichten, ich werde aber den Teil Empfang / Versand von E-Mails in einem eigenen Artikel behandeln. Daher der Umweg über Strato Webmail etc. Es passt sonst thematisch schlecht in die Artikel.

Mit dem Code kann nun der Wizard abgeschlossen werden.

Jetzt kann eine Zertifikatsanforderung auf dem Exchange Server erstellt werden. das funktioniert wieder einfach per Shell:

New-ExchangeCertificate –Server "Exchange" –GenerateRequest –FriendlyName "StartSSL Exchange Cert" –PrivateKeyExportable $true –SubjectName "c=DE, s=NRW, l=Liemke, o=FrankysWeb, ou=IT, cn=outlook.frankysweb.org" –DomainName  outlook.frankysweb.org,autodiscover.frankysweb.org –RequestFile "\\Exchange\C$\Anforderung.csr"

Der Befehl ist auch wieder selbsterklärend, falls nicht, hier gibt es eine entsprechende Erklärung:

https://www.frankysweb.de/kostenlose-san-zertifikate-auch-bei-startssl/

Die Zertifikatsanforderung kann nun direkt aus dem Shell Fenster kopiert werden:

SNAGHTML53d359

Die Zertifikatsanforderung wird jetzt über den Punkt “Certificates Wizard bei StartSSL” eingereicht:

image

Im Wizard selbst, werden jetzt die Domainnamen angegeben, also nur outlook.frankysweb.org und autodiscover.frankysweb.org, angegeben und die Zertifikatsanforderung hochgeladen.

SNAGHTML91fbf2

In meinem Fall möchte mich StartSSL noch einmal überprüfen:

image

Normalerweise bekommt man das Zertifikat allerdings direkt als Download einer ZIP-Datei angeboten. Sobald das ZIP-Archiv mit den Zertifikaten vorhanden ist, kann es auf dem Exchange Server abgelegt werden.

Installation des Zertifikats

Das ausgestellte Zertifikat von StartSSL liegt in einem ZIP-Archiv in mehreren Formaten vor:

image

Im Ordner IISServer liegt das eigentliche Zertifikat und das Zertifikat der Zwischenzertifizierungsstelle (Intermediate):

image

Beide Zertifikate werden in einen Ordner entpackt (Als Beispiel C:\Cert). Das Zwischenzertifikat wird als Erstes installiert

image

Das Zertifikat muss im Zertifikatsspeicher des Computers gespeichert werden:

image

Als Speicherort wird “Zwischenzertifizierungsstellen” angegeben:

image

Nachdem das Zertifikat installiert wurde, muss noch das Zertifikat für den Exchange Server installiert und aktiviert werden. Das Installieren funktioniert auch wieder einfach per Shell:

Import-ExchangeCertificate -FileData ([Byte[]]$(Get-Content -Path C:\Cert\2_outlook.frankysweb.org.crt -Encoding byte -ReadCount 0))

Der Befehl ist ebenfalls wieder selbsterklärend, es muss nur der Pfad angepasst werden. Nach dem Import wird auch der Thumbprint des Zertifikats angezeigt, dieser wird zum aktivieren des Zertifikats benötigt und kann direkt innerhalb der Shell verwendet werden:

image

Mit folgendem Befehl wird das Zertifikat aktiviert:

Enable-ExchangeCertificate -Thumbprint F109BC84E8A477902C8E021A4D4E5CBAD13EC596 -Services POP,IMAP,SMTP,IIS

image

So schlimm ist das Thema Zertifikat doch gar nicht…

Authentifizierung anpassen

Jetzt können wir zur Abwechslung auch mal die EAC benutzen, so lässt sich auch gleich das Zertifikat verifizieren:

image

Ausgestellt von StartCom, hat also alles geklappt. Der Internet Explorer wirft hier natürlich eine Zertifikatswarnung, da via https://localhost auf EAC zugegriffen wird.

Das eigentliche Ziel ist es allerdings, den Benutzern das Login mit Ihrer E-Mail Adresse zu erlauben. Dazu haben wir bereits alle notwendigen Voraussetzungen geschaffen (AD Name frankysweb.org):

image

UPN und E-Mail Adresse werden später frank@frankysweb.org sein, dazu muss die Authentifizierungsmethode für OWA umgestellt werden. Dies geschieht über die EAC. Server –> Virtuelle Verzeichnisse –> owa –> Authentifizierung –> Benutzerprinzipalname (UPN):

image

Abschließend ein iisreset:

image

Sendeconnector erstellen

Der Sendeconnector kann schon einmal erstellt werden, auch wenn die UTM noch garnicht darauf vorbereitet ist, Mails von von Exchange anzunehmen und entsprechend weiterzuleiten. Ich füge diesen Schritt hier ein, damit es thematisch zum Artikel passt. Damit also in Zukunft Mails versendet werden können, wird ein Sendeconnector benötigt, dieser lässt sich wieder schnell per Shell anlegen:

New-SendConnector -Internet -Name "UTM-Route-to-Internet" -AddressSpaces * -SmartHosts 172.16.100.254 -Fqdn outlook.frankysweb.org

Der Befehl muss nur wieder geringfügig angepasst werden, IP der UTM und FQDN entsprechend angeben, in meinen Fall also 172.16.100.254 (IP UTM) und outlook.frankysweb.org (FQDN für den wir ein gültiges Zertifikat haben)

Verschieben und Umbenennen der Datenbank

Zum Schluss wird noch die Mailbox Datenbank mit einem freundlichen Namen versehen und an einen anderen Speicherort verschoben. Ich habe meinen Exchange Server mit einer 200 GB Disk ausgestattet, auf der sowohl die Exchange Installation, als auch die Datenbank gespeichert wird. Für kleine Organisationen reicht es meist aus, auch die Trennung zwischen Datenbank und Logfiles nehme ich nicht vor. Es geht hier immerhin nur um eine kleine Umgebung. Wer es gerne anders mag, hat hier die Gelegenheit:

Get-MailboxDatabase -Server Exchange | Set-MailboxDatabase -Name "MailboxDB"
Move-DatabasePath "MailboxDB" -EdbFilePath E:\MailboxDB\MailboxDB.edb -LogFolderPath e:\MailboxDB

image

Zusammenfassung

Wir haben jetzt einen entsprechend konfigurierten Exchange 2016 Server mit einem gültigen Zertifikat einer öffentlichen CA. Zwar ist es bisher noch nicht möglich Mails von extern zu empfangen oder zu versenden, dazu fehlt noch die Konfiguration der UTM, aber intern kann schon getestet werden. Hier einmal als Beispiel von einem Windows 10 Client:

OWA ohne Zertifikatswarnung und Login mit der E-Mail Adresse:

image

Outlook 2016 (Autodiscover und Login via E-Mail Adresse funktioniert auch ohne Domain Mitgliedschaft ohne Zertifikatswarnungen):

image

image

Alle Verbindungen laufen über outlook.frankysweb.org:

image

Im nächsten Teil ist dann die Konfiguration der UTM dran.

Der Beitrag Aufbau einer kleinen Exchange 2016 Organisation (Teil 3) erschien zuerst auf Franky's Web.

Viewing all 838 articles
Browse latest View live