設定 SSL 通過 ProxyPass 的方式

因為限制 svn 必須使用 SSL (https), 但當 SVN Server 安裝在內部主機, 透過外部的 ProxyPass 方式轉入存取, 就會出現 ProxyPass 無法透過標準方式設定的問題。

  • 外部 ProxyPass 主機 : xen-www - CentOS 5.8 i386
  • 內部 SVN 主機 : c2q-q9400 (192.168.11.250) - CentOS 5.8 x86_64
  • /etc/httpd/conf/httpd.conf
    :
    LoadModule proxy_module modules/mod_proxy.so
    :
    LoadModule proxy_http_module modules/mod_proxy_http.so
    :
  • /etc/httpd/conf.d/proxypass.conf
    <IfModule mod_proxy.c>
    ProxyRequests Off
    
    <Proxy https://192.168.11.250/repos/>
        Order deny,allow
        Allow from all
    </Proxy>
    
    # Set TCP/IP network buffer size for better throughput (bytes)
    ProxyReceiveBufferSize 4096
    :
    </IfModule>
    # End of proxy directives.
    :
    :
    ProxyPass       /repos/ https://192.168.11.250/repos/
    ProxyPassReverse /repos/ https://192.168.11.250/repos/
    :
  • /etc/httpd/conf.d/ssl.conf
    :
    SSLSessionCache         shmcb:/var/cache/mod_ssl/scache(512000)
    :
    SSLEngine on
    SSLProxyEngine on
    :
  • /etc/httpd/conf.d/subversion.conf
    :
          SSLRequireSSL
    
          AuthType Basic
          AuthName "Authorization Realm"
          AuthUserFile /var/www/passwdfile
          Require valid-user
    </Location>
    :
  • tech/sslproxypass.txt
  • 上一次變更: 2012/04/09 17:26
  • jonathan