如何使Apache代理http请求https:
我试图配置透明代理svn镜像,如here所述,但使用https获得困难时间。
目前的设置是:
如何使Apache代理http请求https:
- 主服务器是公开的,并通过HTTPS保护。
- 从服务器位于nginx反向代理之后,通过http服务,但nginx使用https保护所有外部流量。
所以我设法安装svnsync的在这个奇怪的设置工作,但writethruproxy挣扎:
mod_proxy_http不喜欢HTTPS的另一端,并说这样的:
[debug] proxy_util.c(1525): [client ccc.ccc.ccc.ccc] proxy: *: found reverse proxy worker for https://xxx.xxx.xxx.xxx:yyyy/svn/my_repo/!svn/me
[debug] mod_proxy.c(1020): Running scheme https handler (attempt 0)
[debug] mod_proxy_http.c(1954): proxy: HTTPS: declining URL https://xxx.xxx.xxx.xxx:yyyy/svn/my_repo/!svn/me (mod_ssl not configured?)
[debug] mod_proxy_ajp.c(677): proxy: AJP: declining URL https://xxx.xxx.xxx.xxx:yyyy/svn/my_repo/!svn/me
[debug] mod_proxy_ftp.c(842): proxy: FTP: declining URL https://xxx.xxx.xxx.xxx:yyyy/svn/my_repo/!svn/me - not ftp:
[debug] mod_proxy_connect.c(100): proxy: CONNECT: declining URL https://xxx.xxx.xxx.xxx:yyyy/svn/my_repo/!svn/me
[warn] proxy: No protocol handler was valid for the URL /svn/brisbane/!svn/me. If you are using a DSO version of mod_proxy, make sure the proxy submodules are included in the configuration using LoadModule.
TLDR:是有什么办法可以配置mod_ssl和mod_proxy_http将http流量转发到https?
- TIA
你首先需要(的Debian/Ubuntu的盒子例如a2enmod ssl
,或改变配置您的安装根据需要加载模块)启用了mod_ssl。
然后,你需要配置SSLProxy*
指令作为mod_proxy
文档中所示,更具体地说,至少SSLProxyCACertificateFile
或SSLProxyCACertificatePath
与CA你愿意相信(因为你的Apache httpd服务将是一个客户端这方面)。
thanx,那帮了!不过,添加证书并不是必需的。我做的唯一的事情就是启用mod_ssl并在**上面的** svn部分添加SSLProxyEngine。 – user1308092 2012-04-03 10:17:15
@ user1308092,默认的'SSLProxyVerify none'选项使代理和实际服务器之间的连接易受MITM攻击,因为它不验证任何内容。您通常应将其设置为“required”,然后按照[文档中的红色框](http://httpd.apache.org/docs/2.2/mod/mod_ssl.html#sslproxyverify)中的说明操作。 – Bruno 2012-10-18 22:35:41
请详细说明TLDR的意见 – dldnh 2012-04-02 13:22:45
的窍门就是加上 SSLProxyEngine on – user1308092 2012-04-02 15:04:18