Squid 3.2 unter Ubuntu als Reverse Proxy für Exchange 2010

Gute Nachrichten für alle die Squid als Reverse Proxy für Exchange einsetzen möchten. Mit der Version von dieser Seite (leider nur Ubuntu 10 bzw. 12) laufen sämtliche Exchange Services (OWA, Anywhere und ActiveSync) problemlos. Vorallem die Performance ist genial. Somit ist auch bei Outlook Anywhere als Auth-Methode NTLM voll unterstützt. Aktuell funktioniert noch nicht die Frei/Gebucht Dienste.

Download-Mirror für Ubuntu:
http://www.mydlp.com/now-squid3-ssl-packages-in-mydlp-repository/

Die Konfiguration von Squid hat sich mit Squid 3.2 ebenalls ein bisschen geändert:
Configuring Squid to Accelerate/ACL RPC over HTTP

Und so könnte die Squid.conf aussehen:

visible_hostname extern.fqdn.de

extension_methods RPC_IN_DATA RPC_OUT_DATA
https_port 443 cert=/etc/squid/ssl/EXTERN_SERVERZERTIFIKAT.crt key=/etc/squid/ssl/EXTERN_SERVERZERTIFIKAT.key  defaultsite=extern.fqdn.de

cache_peer EXCHANGESERVERIP parent 443 0 no-query originserver login=PASS ssl sslflags=DONT_VERIFY_PEER sslcert=/etc/squid/ssl/INTERN_SERVERZERTIFIKAT.crt sslkey=/etc/squid/ssl/INTERN_SERVERZERTIFIKAT.key name=ExchangeServer

# Zugriff auf folgende Adressen ist erlaubt
acl EXCH url_regex -i ^https://extern.fqdn.de/owa.*$
acl EXCH url_regex -i ^https://extern.fqdn.de/Microsoft-Server-ActiveSync.*$
acl EXCH url_regex -i ^https://extern.fqdn.de/ews.*$
acl EXCH url_regex -i ^https://extern.fqdn.de/autodiscover.*$
acl EXCH url_regex -i ^https://extern.fqdn.de/rpc/.*$

acl all src all
cache_peer_access ExchangeServer allow EXCH
never_direct allow EXCH
http_access allow EXCH
http_access deny all
miss_access allow EXCH
miss_access deny all

access_log /var/log/squid/access.log squid

extern.fqdn.de = Servername der nach Außen sichtbar ist.

EXTERN_SERVERZERTIFIKAT.crt = Öffentlich gültiges Zertifikat für den Server
EXTERN_SERVERZERTIFIKAT.key = Privater Schlüssel zum Serverzertifikat

EXCHANGESERVERIP = IP-Adresse des Exchange-Servers im LAN (z.B. 10.10.10.10)

INTERN_SERVERZERTIFIKAT.crt = Gültiges Serverzertifkat des Exchanges
INTERN_SERVERZERTIFIKAT.key = Privater Schlüssel zum Serverzertifikat

EXCH = Name der Zugriffsliste
————————————————————————————————————————————–
Durch das Auskommentieren von verschiedenen ACL’s (Zeile 9-16) können verschiedene Dienste deaktivieren werden, so dass ein Zugriff vom Internet nicht möglich ist. Die Variablen habe ich extra groß geschrieben!

Nach Abschluss der Konfigurationsänderung bitte den Squid neustarten (service squid3 restart).
Um die Verbindung zum Exchange zu testen, empfehle ich diese Seite.