Apache代理服务器ssl和非ssl

时间:2015-07-27 13:47:37

标签: apache ssl https proxy openssl

尝试将Apache配置为SSL和非SSL的代理,并能够修改响应主体(在我的情况下,弹出JS错误的警告)。 这样的事情:

  • HTTP< - > Apache代理(更改响应)< - >公司代理< - > 互联网(HTTP)
  • HTTPS< - > Apache代理(更改响应)< - >公司代理< - > 互联网(HTTPS)

在扼杀了一下后,我为非SSL示例做了一遍:

ProxyRequests Off
ProxyPreserveHost On
ProxyPass / http://<corporate proxy>/
ProxyPassReverse / http://<corporate proxy>/
<IfModule substitute_module>
    AddOutputFilterByType INFLATE;SUBSTITUTE;DEFLATE text/html
    Substitute "s|(<head.*?>)|$1<script type='text/javascript'>window.onerror=function(error){\n alert(error);\n};\n</script>|i"
</IfModule>

可悲的是,我并没有为SSL做同样的事情......并且连接无法建立.. (我认为配置中的某些内容或者可能是对这种代理如何工作的理解)

来自httpd-ssl文件:

SSLEngine On
SSLProxyEngine On

ProxyRequests Off
ProxyPreserveHost On

ProxyPass / http://<corporate proxy>/
ProxyPassReverse / http://<corporate proxy>/

SSLCertificateFile "c:/Apache24/ssl/rootCA.pem"
SSLCertificateKeyFile "c:/Apache24/ssl/rootCA.key"

要生成证书,请运行下一个命令

创建根密钥

openssl genrsa -out C:\Apache24\ssl\rootCA.key 2048

自签此证书

openssl req -x509 -new -nodes -key C:\Apache24\ssl\rootCA.key -days 1024 -out C:\Apache24\ssl\rootCA.pem

我实际上是在尝试替换(Fiddler)我将其配置为Decrypt HTTPS,请参阅以下链接中的屏幕截图

Fiddler HTTPs Configuration

任何想法?

1 个答案:

答案 0 :(得分:0)

可悲的是,看起来Apache不支持我的配置(在公司代理后面工作,需要级联代理支持)。 而且这不应该是反向代理,而是带有终止的SSL转发代理...我没有找到任何关于如何在Apache代理中设置它的文档。

所以,在Apache支持这个之前,我建议关闭这个帖子。