Apache Config代理SSL

时间:2019-06-04 04:49:17

标签: apache ssl proxy port

我在使用Apache Proxy SSL时遇到麻烦,我需要在其中转发和使用443以外的其他端口(但没有SSL),但是如果没有SSL则无法正常工作,我可以做代理了,我需要您的帮助。

我尝试添加以下内容:请参见下面的代码:

<VirtualHost *:4040>

     ServerName example.com

     AllowCONNECT 4040
     SSLEngine On
     SSLCertificateFile /etc/ssl/certs/www_mydomain.crt
     SSLCertificateKeyFile /etc/ssl/certs/www_mydomain.key
     SSLCACertificateFile /etc/ssl/certs/ca.crt

     SSLProxyEngine On
     SSLProxyProtocol all -SSLv2 -SSLv3
     ProxyRequests Off
     SSLProxyVerify require
     SSLProxyVerifyDepth 1
     SSLProxyCACertificateFile /etc/ssl/certs/ca.crt

     ProxyPass "/" "https://192.168.90.6:9696/"
     ProxyPassReverse "/" "https://192.168.90.6:9696/"
</VirtualHost>

后端服务器已经使用SSL加密

<VirtualHost *:9696>

     ServerName 192.168.90.6:9696

     SSLEngine On
     SSLCertificateFile /etc/ssl/certs/www_mydomain.crt
     SSLCertificateKeyFile /etc/ssl/certs/www_mydomain.key
     SSLCertificateChainFile /etc/ssl/certs/ca.crt

</VirtualHost>

当我访问https://www.example.com:4040时,默认情况下应该有https://192.168.90.6:9696,但我收到

错误
  

该站点不能提供不安全的连接。

我陷入了困境,希望有人能帮助我正确配置代理。

我错过了什么还是被忽略了吗?我已经正确使用了所有证书并通过了我的CA验证,还是我需要其他格式或配置错误?

1 个答案:

答案 0 :(得分:0)

感谢您查看我的问题,

但是我通过以下更改修复了以下问题:

在代理服务器上:

 SSLCertificateFile /etc/ssl/certs/www_mydomain.crt <---- This should be in pem format

 SSLCertificateFile /etc/ssl/certs/www_mydomain.pem <---- This should contain your
                                                          concatenated server cert & rootca cert

 SSLCertificateKeyFile /etc/ssl/certs/www_mydomain.key <---- This remains the same key for your cert

删除SSLCertificateChainFile或对其进行注释。

在将在您的配置文件中提供SSL的后端服务器上也这样做。

好运的人!如果您遭受了同样的痛苦,并且可以解决问题,那就太好了!祝你有美好的一天