SSLを使用したApache ProxyPass


59

SSLサイトからのリクエストを非SSLサイト経由でプロキシしたい。私のApache httpd.confは次のようになります。

<VirtualHost 1.2.3.4:80>
    ServerName foo.com
    ProxyPass / https://bar.com/
</VirtualHost>

したがって、http://foo.comアクセスすると、Apacheがhttps://bar.comにリクエストを行い、取得したページを送信することを期待しています。

代わりに、500エラーが表示され、エラーログに次のように表示されます。

[error] proxy: HTTPS: failed to enable ssl support for 4.3.2.1:443 (bar.com)

おそらく、ここにディレクティブがありません。どっち?

セキュリティへの影響を気にしないでください。私はリスクを完全に理解しています。


どのバージョンのApacheを使用していますか?
サムハリック2009年

1
「セキュリティへの影響を気にしないでください。リスクを完全に理解しています。」-これは、「Hold My Beer」に相当するdevopsです。)
エリックキガティ

回答:


71

必要mod_sslmod_proxy応じて、オプションでmod_rewrite。ディストリビューションとApacheのバージョンによっては、ロードされているかどうかも確認する必要がmod_proxy_connectありmod_proxy_httpます。

SSLプロキシサポートを有効にするためのディレクティブはmod_sslにあります。

<VirtualHost 1.2.3.4:80>
    ServerName foo.com
    SSLProxyEngine On
    SSLProxyCheckPeerCN on
    SSLProxyCheckPeerExpire on
    ProxyPass / https://secure.bar.com
    ProxyPassReverse / https://secure.bar.com
</VirtualHost>

また使用できるIIRC:

    RewriteRule / https://secure.bar.com [P]    # don't forget to setup SSLProxy* as well

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.