OWA und ECP mit Sophos per 2FA bzw. OTP zusätzlich schützen

OWA und ECP mit Sophos per 2FA bzw. OTP zusätzlich schützen

Heute bin ich über einen interessanten Artikel gestolpert bei networkguy.de. Dort wird OWA (Outlook Web Access bzw. Outlook Web App) und ECP (Exchange Control Panel) mit einer 2FA (2 Factor Authentification) bzw. OTP (One Time Password) geschützt.

Dies wird mit der Sophos UTM Firewall realisiert, da ich diese in der Homeversion einsetze stehen auch mir diese Optionen dafür offen.

Dafür wird in der Lizensiert die WAF (Web Application Firewall) benötigt.

Die Konfiguration stellt sich in 3 Schritten dar:

  • Umstellen der Sicherheit vom IIS (Internet Information Services) auf Basic und neustarten des Dienstes
  • Erstellen der WAF Regeln in der Sophos
  • Aktivieren der OTP Option in der Sophos

Umstellen der Sicherheit:

  • Melden Sie sich auf dem Exchange Server an
  • Öffnen Sie den Internetinformationsdienste Manager
  • Gehen Sie links im Verzeichnisbaum auf SERVERNAME > Sites > Default Web Site > rechts auf Authentifizierung
  • Wählen Sie bei Standardauthentifizierung auf Aktiviert
  • Gehen Sie auf Start > Ausführen > und geben Sie iisreset gefolgt von einem Enter ein

Nun kommt der 2. Teil, Erstellen der WAF Regeln:

  • Da die Grundkonfiguration der WAF/Exchange-anbindung umfangreicher ist, verweise ich hier auf die Anleitung von networkguy.de – dort ist es geschildert: https://networkguy.de/?p=998
  • Weiter geht es nun nach Webserver Protection > Reverse Authentification > Profiles > Neues Profil erstellen wie folgt:
  • Jetzt diesem Profil noch 2 Regeln erstellen unter Webserver Protection > Web Application Firewall > Site Path Routing > wie folgt:

Anschließend nun der 3. Teil:

  • Dazu unter Definitions & Users > Authentification Services > Ine-Time Password > One-Password Service Status aktivieren und wie folgt einrichten:

Anschließend können sich die User im Userportal dann die App einrichten und OWA bzw. ECP gesichert nutzen. Dazu im Userportel anmelden mit den Anmeldedaten, dann mit der Sophos oder Google Authentificator App den QR Code kopieren.

Dann auf Fortsetzen, beim erneuten Anmelden dann jedoch hinten an dem Passwort noch den Code aus der Authentificator App einfach anhängen (sonst landet man wieder beim QR Code).

Alternativ kann man sich ein Template einrichten, wo man das eigene Design und auch andere Felder – bei mir habe ich Passwort und PIN in eigene Felder gepackt:

Weiterhin muss im ECP noch unter Server > Virtuelle Verzeichnisse > einmal unter OWA und einmal unter ECP Doppelklick > Authentifizierung > Mindestens ein Standardauthentifizierungsverfahren verwenden > Standardauthentifizierung auswählen.

Anschließend mit iisreset den Webserver neustarten.

Nun ist alles eingerichtet und erfolgreich getestet – jetzt können Sie sich am OWA oder ECP anmelden.

Weitere Links:

Hinweis: Sichern Sie vorher unbedingt ihre Server, mindestens jedoch ein Backup der Sophos runterladen und beim IIS die Metabase sichern – besser sind jedoch Vollbackups. Achten Sie auch darauf, das wenn sie 2FA oder OTP denn Zugriff zum Webadmin beschränken, in gewissen Situationen keinen Zugriff mehr haben wenn die App oder das Gerät verloren geht!!


Outlook 2016/365 fordert immer wieder Anmeldedaten an bzw. Outlook kann nicht eingerichtet werden trotz korrektem Autodiscover

Diese Lösung ist nur für Problemfälle mit einem lokalen bzw. on-Premise Exchange Server – NICHT für Office 365 Exchange Systeme.

Um als erstes ein Problem mit den Anmeldedaten auszuschließen, melden Sie sich an OWA (Outlook Web Access) an und prüfen Sie ob diese richtig sind.

Wenn ja, dann kann es sein, das Outlook versucht ihre Daten mit Office 365 Server abzugleichen – obwohl Sie einen eigenen Exchange Server haben. Da dann ihre Zugangsdaten nicht akzeptiert werden vom Office 365 Server kommt immer wieder die Anmeldemaske bzw. kann die Outlook-konfiguration nicht abgeschlossen werden.

Dies sehen Sie daran, das wenn Sie ihre Emailatokonfiguration prüfen (Outlook öffnen, STRG Taste gedrückt halten und mit der rechten Maustaste auf das Outlook Icon, dann sehen Sie dort den Eintrag) und dann Verbindungsversuche kommen nach outlook.office365.com .

Um dies Outlook abzugewöhnen, können Sie einen folgenden Registryeintrag erstellen (entweder von Hand oder über GPO) unter:

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\Outlook\AutoDiscover

  • Typ: DWORD
  • Name: ExcludeExplicitO365Endpoint
  • Wert: 1 (0x00000001, HEX)

Sollte das immer noch nicht klappen, so kann man noch eine weitere Lösung zu rate ziehen:

Erstellen sie in ihrem DNS eine Zone für outlook.office365.com mit einem Hosteintrag auf die IP ihres Exchange Servers (z.B. CAS Server). Warten Sie ab, bis die Einstellung im DNS repliziert ist, leeren sie den Cache des DNS Servers bzw. des Clients (ipconfig /flushdns).

Clients die mobil arbeiten könnte man die Hostsdatei anpassen.

Prüfen Sie dann erneut ob alles funktioniert.

Update 2019:

Der saubere Weg wäre das eigene AD mit Office 365 zu verbinden, dies ist jedoch umfangreich. Eine Anleitung finde ihr hier:
https://www.leibling.de/office-365-mit-active-directory-verbinden/


Exchange 2016: Emails gehen nicht raus

Bei einem frisch installierten Exchange Server hatte ich das Problem das Mails nicht raus gingen. Weder direkt per MX noch über Relay.

Der Exchange sollte Mails an ein Mailrelay auf einer internen Sophos übergeben, die Mails gingen weder rein noch raus.

Wurden Mails im OWA versendet, lagen diese in Entwürfe und gaben die Meldung „Es ist ein Fehler aufgetreten“ und im Outlook blieben die Mails einfach im Postausgang liegen.

Testweise habe ich dann mit Telnet eine Mail an den Exchange gesendet um zu schauen ob ich einen Fehler sehe – und siehe da, mir wurde gemeldet: „4.5.1 Temporary Server Error PRX2“.

Bei einer Recherche fand ich dazu 2 Möglichkeiten:

Zum einen sollte in den Servereigenschaften (ECP) der DNS Server überschrieben werden, da es Probleme geben kann wenn ein interner (z.B. DC) und ein externer DNS (z.B. Provider DNS oder Firewall/Router mit Forwarder nach außen) verwendet werden in den Servernetzwerkeinstellungen. Zusätzlich könnte man auch in der Hosts-Datei alle internen Server mit IP, Hostname und FQDN aufnehmen.

Zum anderen kann es zu Problemen kommen wenn mehrere Connectoren den selbern Port verwenden (auch wenn die unterschiedliche Quelladressen verwenden). Da der SMTP und ein Relayserver auf dem selben Port lagen, habe ich kurzerhand den Relay auf die Sophos umverlegt.

Nach einem Serverneustart funktionierte nun wieder alles.

Quellen:

http://www.servolutions.de/support/articles/temporaryservererror2013.htm

https://www.servolutions.de/support/installexchg2013.htm#section3


Exchange 2010: Leere Seite oder Fehlermeldung nach Anmelden am OWA

Sollte nach einem Anmelden ans OWA nur eine Leere Seite erscheinen oder eine Seite mit dem Hinweis das die Seite nicht geladen werden konnte so sollte man wie folgt vorgehen:

  • Prüfen ob alle Exchange Updates installiert sind (Stand 11.12.15 SP3 RU 11), wenn nicht diese installieren
  • Dann Updatecas.ps1 ausführen (C:\Programme\Microsoft\Exchange Server\V14\Bin in Exchange Powershell, beim Starten aus dem selben Verzeichnis noch .\ vor dem  Befehl setzen)
  • Nach Erfolg noch einen IISReset (CMD mit Administratorrechten)

 


Exchange 2010/2013/2016 ohne SAN Zertifikat betreiben

Sollte man von einem SAN Zertifikat umsteigen auf ein herkömmliches Zertifikat, so muss man auch noch einige Einstellungen im Exchange vornehmen, damit keine Fehlermeldungen mehr erscheinen beim öffnen von Outlook usw.

Vorbereitungen:

  • In der ECP die externe Adresse unter Nachrichtenfluss > Akzeptierte Domänen einrichten.
  • Danach in der ECP unter Nachrichtenfluss > E-Mail-Adressrichtlinie die Default Policy bearbeiten mit der externen Adresse und Anwenden.
  • Im Internen DNS (AD-DNS und DNS für die echte Emailadresse) sowie im Externen DNS folgendes einrichten:
    • Hosteintrag auf dem das Zertifikat läuft
    • CNAME von autodiscover auf die Zertifikatsadresse.
    • Servicerecord erstellen mit den folgenden Werten:

Service: _autodiscover
Protokoll: _tcp
Priorität: 0
Gewichtung: 0
Port: 443
Host: Adresse des Hostes auf dem das Zertifikat läuft

Danach müssen in der Exchange Management Shell folgende Änderungen vorgenommen werden:

Set-ClientAccessServer -Identity servername -AutoDiscoverServiceInternalUri “https://exchange.domain.de/Autodiscover/Autodiscover.xml”

Set-AutodiscoverVirtualDirectory -Identity “servername\Autodiscover (Default Web Site)” -InternalUrl “https://exchange.domain.de/Autodiscover/Autodiscover.xml” -ExternalUrl “https://exchange.domain.de/Autodiscover/Autodiscover.xml”

Set-WebServicesVirtualDirectory -Identity “servername\EWS (Default Web Site)” -InternalUrl “https://exchange.domain.de/EWS/Exchange.asmx” -ExternalUrl “https://exchange.domain.de/EWS/Exchange.asmx”

Set-OWAVirtualDirectory -Identity “servername\OWA (Default Web Site)” -InternalUrl “https://exchange.domain.de/owa” -ExternalUrl “https://exchange.domain.de/owa”
Set-ECPVirtualDirectory -Identity “servername\ECP (Default Web Site)” -InternalUrl “https://exchange.domain.de/ecp” -ExternalUrl “https://exchange.domain.de/ecp”
Set-ActiveSyncVirtualDirectory -Identity “servername\Microsoft-Server-ActiveSync (Default Web Site)” -InternalUrl “https://exchange.domain.de/Microsoft-Server-Activesync” -ExternalUrl “https://exchange.domain.de/Microsoft-Server-Activesync”
Set-MapiVirtualDirectory -Identity „servername\mapi (Default Web Site)“ -InternalUrl https://exchange.domain.de/mapi -ExternalUrl https://exchange.domain.de/mapi -IISAuthenticationMethods NegotiateSet-OABVirtualDirectory -Identity “servername\OAB (Default Web Site)” -InternalUrl “https://exchange.domain.de/OAB” -ExternalUrl “https://exchange.domain.de/OAB”
Enable-OutlookAnywhere -Server servername -ExternalHostname “exchange.domain.de” -ClientAuthenticationMethod “Basic”-SSLOffloading:$False

Weitere Infos: