0

I'm facing a weird problem with my Apache reverse proxy setup for a Sharepoint server. When I log into the Sharepoint via proxy and then someone else opens the Sharepoint via proxy, he is already logged in with my account. Do you have an idea what might be wrong?

This is the Apache config:

<VirtualHost *:443>
    SSLEngine On
    SSLProxyEngine On
    SSLCertificateFile /etc/apache2/ssl/sharepoint.pem

    ProxyPreserveHost Off
    ProxyRequests Off

    ProxyHTMLExtended On
    ProxyHTMLLogVerbose On
    LogLevel Debug
    ProxyHTMLURLMap https://sharepoint.portal.de/ /
    SetOutputFilter INFLATE;proxy-html;DEFLATE

    Header edit Location ^https(\:\/\/sharepoint.portal.de)(.*)$ https://192.168.120.19$2

    ProxyPass / https://sharepoint.portal.de:443/
    ProxyPassReverse / https://sharepoint.portal.de:443/
</VirtualHost>
2
  • Hi, could we know what type of authentification is configured on the sharepoint server?
    – Olivier S
    Mar 19, 2014 at 19:49
  • NTLM and BasicAuth are activated. It happens with both NTLM via IE/Chrome and also with Firefox which has no NTLM suppot enabled.
    – Konrd
    Mar 20, 2014 at 10:21

2 Answers 2

1

Here is what I try for the 4 last hours:

The only reasonable explanation I can think of is that the sharepoint server has keepalive enabled and serveral apache clients are proxied through the same "keepalived" connexion between apache and sharepoint.

If this is the case the following 2 lines ( to be inserted in your vhost configuration ) showld solve the issue:

SetEnv force-proxy-request-1.0 1
SetEnv proxy-nokeepalive 1

Alternatively you could also disable keepalives on the sharepoint server. Disabling / Enabling keepalive on apache should make no difference.

Edit: This will not work with NTLM Authentication because NTLM is connexion oriented and requires the keep-alive. Actually the question is already answered here: Setting up mod_proxy to pass http authentication to server

This SF post gives a working configuration, with keep-alive enabled.

1
  • Thanks a lot for your help! Unfortunately the Sharepoint denies (401) every attempt to login once the environment variables are set.
    – Konrd
    Mar 24, 2014 at 10:25
0

I did it for Microsoft Exchange with ntlm passthru auth and MSExchange RPCoHTTP/HTTPS on CentOS 6.

I've used:

HTTPD 2.4.10
mod_proxy_msrpc

These are the steps I did:

yum -y install gcc make patch pcre-devel openssl-devel libuuid-devel
cd
wget http://www.apache.org/dist/httpd/httpd-2.4.10.tar.gz
wget "httpd-2.4.10-deps.tar.gz"
tar xzvf httpd-2.4.10.tar.gz 
tar xzvf httpd-2.4.10-deps.tar.gz 
cd httpd-2.4.10
./configure --enable-so --enable-deflate --enable-expires --enable-headers --enable-rewrite --with-crypto --enable-session-crypto --with-included-apr --with-included-apr-util
make
make install

----------

yum -y install git
mkdir /root/gitrepo
cd /root/gitrepo
git clone https://github.com/bombadil/mod_proxy_msrpc
cd mod_proxy_msrpc
cd src
/usr/local/apache2/bin/apxs -c mod_proxy_msrpc.c msrpc_pdu_parser.c msrpc_sync.c

----------

Use "OutlookAnywherePassthrough On" on VirtualHost section to allow RPCoHTTP/HTTPS

Try them and let me know how it went.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .