Integration von Sophos PureMessage in Outlook Web Access (OWA)
Wer bereits Sophos PureMessage als Antiviren- und Antispam-Gateway in seiner Microsoft Exchange Server Infrastruktur einsetzt, kennt sicher die Vorzüge des Produkts. Ich möchte hier keine Schleichwerbung für die Software machen, kann aber aus Erfahrung berichten, dass wir selbige erfolgreich und durchaus zufrieden bei einer Vielzahl unserer Kunden einsetzen.
In den meisten Fällen wird das Produkt direkt auf dem Microsoft Exchange Server (ab 2003 SP2) installiert und untersucht eingehende, ausgehende und interne E-Mail-Nachrichten und den Exchange Informationstore auf Spam, Viren, Spyware und Phishing. Weitere Informationen zum gesamten Funktionsumfang erhält man auf der Herstellerseite.
E-Mails, die als SPAM identifiziert wurden, landen bei PureMessage (und entsprechender Einstellung) in einer Quarantäne-Datenbank und nicht im Junk-E-Mail-Ordner des Empfängers. Letzterer erhält aber – zu konfigurierten Zeiten – eine E-Mail-Nachricht mit einem Link zur internen Webseite, auf der die aussortierten Nachrichten zugestellt oder gelöscht werden können.
Problem
Die Benutzer, die lokal am Standort arbeiten, können mit dieser Konfiguration einwandfrei leben. Doch für die Benutzer die extern über Outlook Web Access auf ihre Nachrichten zugreifen, können mit einem internen Link wenig anfangen, da er für sie nicht (öffentlich) erreichbar ist.
Lösung und Umsetzung
In der folgenden Dokumentation möchte ich die relativ einfache Veröffentlichung der Sophos PureMessage Quarantäne Webseite über ein Microsoft Forefront TMG inkl. Anpassung des Outlook Web Access Templates vorstellen. Dabei setze ich eine existierende und funktionierende Veröffentlichung von Outlook Web Access voraus. Außerdem ist für den Exchange Server (CAS Rolle) ein internes und ein externes Zertifikat (oder ein SAN-Zertifikat) erforderlich.
Einstellung bei Sophos PureMessage
Innerhalb von Sophos PureMessage (Configure end user spam digest email) lässt sich der Inhalt der Nachricht, die an Benutzer mit empfangenen SPAM-Nachrichten versendet wird, wie folgt editieren:
Die Variable %LINK% wird von PureMessage eigentlich durch die interne URL ersetzt. Da wir aber eine durchgängig einheitliche Lösung erstellen (und nicht den von Sophos vorgegebenen Port 8091 verwenden), ersetzen wir die Variable %LINK% durch:
https://<interne-exchange-server-adresse>/quarantine
Den externen Link muss man in jedem Fall selber definieren, in diesem Beispiel:
https://<externe-exchange-server-adresse>/quarantine
Über diesen externen Link sollen Benutzer die PureMessage-Quarantäne-Webseite aus Ihrem E-Mail-Programm heraus aufrufen können. Damit diese Adresse auch aus dem Internet erreichbar ist, muss sie in der Firewall entsprechend publiziert werden. Obwohl im folgenden Beispiel die Konfiguration mit einem Microsoft Forefront TMG verwendet wird, kann auch ein beliebiges anderes System zum Einsatz kommen.
Einstellung in der Firewall
Wer mit dem TMG bereits Outlook Web Access publiziert, der hat schon die entsprechende Veröffentlichungsregel für Exchange definiert. In deren Konfiguration muss nun im Reiter Pfade unser Unterordner /quarantine/* hinzugefügt werden:
Diese Einstellung gilt selbstverständlich nur für den Fall, das Sophos PureMessage auf dem Exchange Server mit der CAS Rolle (Client Access Rolle) installiert wurde und so auch den selben Internet Information Service (IIS) nutzt.
Einstellung auf dem Exchange Server
In dieser Dokumentation dient ein Microsoft Exchange Server 2010 als Beispiel. Zunächst muss im Internet Information Server (IIS) eine neue Anwendung in der Default Web Site erstellt werden, da die von Sophos erstellte Webseite unter Port 8081 läuft und so nicht den gleichen Hostheader und Port 443 (SSL) verwendet. Die neu erstellte Anwendung wird mit dem Pfad der Sophos PureMessage EndUserWebsite konfiguriert:
Der Datei-Pfad zum Ordner lautet bei einer Standardinstallation von Sophos PureMessage:
%ProgramFiles%\Sophos\PureMessage\EndUserWebsite
Im Anschluss werden für die neue Anwendung die Authentifizierungsmethoden eingestellt – da wir mit SSL-verschlüsselten Verbindungen arbeiten, kann sowohl die Standard- als auch die Windows-Authentifizierung verwendet werden:
Damit funktioniert bereits der Aufruf der PureMessage Webseite über die interne und externe Adresse. Allerdings kann man die Outlook Web Access Oberfläche so anpassen, dass der Aufruf der PureMessage Seite direkt möglich ist.
Dazu editiert man auf dem Microsoft Exchange Server (mit der CAS Rolle) die Datei startpage.aspx im Ordner
%ExchangeInstallPath%\ClientAccess\Owa\forms\premium
In dieser Datei sucht man ab Zeile 136 den Eintrag:
<div id="divUserTileSep"></div>
Vor diesem Eintrag müssen die folgenden Zeilen eingefügt werden:
<div id="divUserTileSep"></div> <div id="SpamLink" style="float:right;height:42px;padding:5px 0px;"> <a href="https://<externe-exchange-server-adresse>/quarantine" target="_blank" id="aLogOff"> <span class="userTileTxt">PureMessage</span></a> </div>
Natürlich muss hier der Link zur externen Seite angepasst werden. Der Name PureMessage kann ebenfalls den eigenen Wünschen entsprechend geändert werden. Nach dem Speichern (und Sichern) der Datei kann Outlook Web Access neu aufgerufen werden. Hier befindet sich nun am rechten oberen Rand zwischen dem Abmelde-Button und dem Benutzer-Button der Link für PureMessage:
Ein Vorteil dieser Lösung ist, dass auf Grund der bereits erfolgten Anmeldung des Benutzers im OWA keine neue Authentifizierung für die PureMessage-Seite erforderlich wird und sich die Sophos PureMessage Webseite sofort in einem neuen Browser-Fenster öffnet:
Eine einfache und doch schicke Lösung, die ich bereits bei mehreren Kunden so umgesetzt habe.
Problem: A server-side error has occurred
Bei einer meiner Einrichtungen erhielt ich allerdings beim Aufruf der PureMessage Webseite folgenden Fehler im Browser:
PureMessage A server-side error has occurredError: Failed to create object (SavexWebAgent.QuarDigestProxy)
Code: -2147024891 (0x80070005)
Description: 006~ASP 0178~Server.CreateObject-Zugriffsfehler~Fehler beim Aufrufen von Server.CreateObject während des Überprüfens der Berechtigungen. Der Zugriff auf dieses Objekt wurde verweigert.
Nach langem Suchen und verschiedenen Tests fand ich schließlich die Ursache. In der DCOM-Konfiguration des Computers auf dem Sophos PureMessage installiert wurde, mussten die Start- und Aktivierungsberechtigungen der Komponente SavexWebAgent angepasst werden:
Hier besitzen im Standard der IUSR und die Domänen-Benutzer die Rechte für den lokalen Start und Aktivierung und für den Remote-Start und -Aktivierung.
In meinem Fall befand sich mein Testbenutzer aber in einer Sub-Domäne der Gesamtstruktur – nachdem ich die Gruppe der Domänen-Benutzer dieser Sub-Domäne hinzugefügt und mit den nötigen Rechten versehen hatte, funktionierte die Sophos Webseite im Anschluss ohne Probleme.
Fazit
Zugegebenermaßen ist die Kombination der aufgeführten Produkte aus Microsoft Exchange Server und Sophos PureMessage (und Microsoft Forefront TMG) nicht in allen kleineren IT-Strukturen in genau dieser Konstellation anzutreffen, ich vermute und hoffe trotzdem, dass vielleicht der eine oder andere Administrator einen Nutzen in der vorgestellten Lösung sieht. Für mich lohnt sich der Artikel ohnehin, da ich bei der nächsten Umsetzung direkt nach Plan arbeiten kann.
Für Verbesserungsvorschläge, Kritik oder Fragen bin ich immer offen und freue mich über jederzeit über einen Kommentar.
Einen Blog am Leben zu erhalten kostet Zeit und Geld. Da ich auf meiner Seite weder Werbung einbinde, noch andersweitige Zuwendungen erhalte, freue ich mich über jede kleine Spende. Einfach und unkompliziert geht das über PayPalMe. Du unterstützt damit diesen Blog. Vielen Dank.
Auf Grund der am 25. Mai 2018 in Kraft tretenden europäischen Datenschutz-Grundverordnung wurden alle Kommentare abgeschaltet und gelöscht. Damit wird die Erhebung personenbezogener Daten vermieden. Das DSGVO wurde von Professor Thomas Hoeren zu "einem der schlechtesten Gesetze des 21. Jahrhunderts" gekürt, mit der Bemerkung, dass überbordene Werk sei "hirnlos". Ich bedaure sehr, das damit die Möglichkeit zum Austausch von Informationen von Gleichgesinnten verhindert wird.