我试图建立与Apache的代理设置,能够安全地支持SSL一路过关斩将:我的代理服务器有一个主机名配置SSL安全Apache代理
Client <--> Proxy @ somehostname.com <--> Server @ 123.45.67.89
注意,但远程服务器不。客户端和代理之间的SSL设置可以使用letsencrypt设置正常工作。但是,我很努力确保代理和远程服务器之间的连接。
由于远程服务器没有主机名,并且letsencrypt不仅仅为IP颁发证书,我的想法是生成自签名证书并将证书复制到代理中,以便仅相信该证书一。不幸的是我不知道如何。
如果我只是禁用这些证书检查,连接的作品,作为代理只是相信每个证书:
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
虽然加密将正常工作,我的理解真实性受到损害,我受到MITM攻击在握手期间。这并不理想。
相反,我已经指示阿帕奇与
SSLProxyCACertificateFile /path/to/cert.pem
信任我的自签名的证书,然后试图强制执行与
SSLProxyVerify require
的有效证书,但尽管我明确列出的证书,和SSLProxyCACertificateFile
的文档说“这些用于远程服务器身份验证”,它似乎不信任它。
有没有办法确保代理和远程服务器之间的连接是安全的,例如通过强制Apache始终使用特定证书连接到代理?