Heute stand ich vor der Aufgabe, dass unsere interne Sharepoint-Seite über unseren Apache Reverse-Proxy veröffentlicht werden sollte. An sich hätte das kein Problem sein sollen – war es im Endeffekt aber.
Bei uns schaut es schematisch so aus, dass der Apache als Proxy agiert und alle Anfragen anhand des Domain-Namens auf die virtuellen Server weiterreicht: Internet -> Apache / DMZ -> Virtueller Host / Backend Server.
Anhand des Blog-Eintrags von Todd Klint habe ich den Sharepoint-Service so eingerichtet, dass er auf die richtige URL lauscht. Die Konfigurationsdatei des virtuellen Hosts sah dann folgendermaßen aus:
<VirtualHost *:443> SSLEngine On SSLProxyEngine On SSLCertificateFile "$CERT_FILE" SSLCertificateKeyFile "$CERT_KEY_FILE" SSLProxyCACertificateFile "$CERT_CA_FILE" ProxyRequests Off ProxyVia On ServerAdmin admin@sps.mydomain.com DocumentRoot $VHOST_DIR/sps/web ServerName sps.mydomain.com:443 ErrorLog "|rotatelogs.exe $VHOST_DIR/sps/logs/%Y%m%d_ssl_error.log 86400" CustomLog "|rotatelogs.exe $VHOST_DIR/sps/logs/%Y%m%d_ssl_access.log 86400" common # AddDefaultCharset ISO LogLevel debug ProxyPreserveHost Off KeepAlive Off ProxyPass / http://backend-srv:8080/ ProxyPassReverse / http://backend-srv:8080/ <Proxy *> Order allow,deny Allow from all </Proxy> <Directory "$VHOST_DIR/sps/"> Order allow,deny Allow from all </Directory> </VirtualHost>Es ist noch zu sagen, dass der Sharepoint nicht mit HTTPS sondern mit Plain-HTTP läuft. Der Apache kümmert sich um die Verschlüsselung und terminiert diese. Im IIS muss außerdem als Authentifizierungsmethode für die Sharepoint-Seite Standardauthentifizerung und nicht Integrierte Windows-Authentfizierung benutzt werden. Apache 2.0.63 kam bei mir mit der Benutzung von NTLM nicht klar.
Ein weiterer Fehler der auftrat war, dass der Sharepoint-Server über zwei Netzwerkkarten verfügte, die zu veröffentlichende SharePoint-Instanz aber an keine IP fest gebunden gewesen ist. Der Apache hatte damit arge Probleme (sporadisches “Verbindung fehlgeschlagen”), deshalb habe ich der Sharepoint-Instanz eine IP-Adresse direkt im IIS zugewiesen.
0 Comments