首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我无法用apache配置SSL反向代理

我无法用apache配置SSL反向代理
EN

Ask Ubuntu用户
提问于 2020-06-14 14:42:39
回答 1查看 2.6K关注 0票数 0

我正在配置Apache反向代理,用于从中间件调用后端服务器,该服务器具有客户端证书和密钥。短期内:

代码语言:javascript
复制
               http               https
middleware -----------> proxy -------------> backend

中间件甚至不知道后端服务器,这是反向代理的诀窍。

我(认为)能够操作代理信标,因为我收到了

AH02268:代理客户端证书回调:(localhost:80)下游服务器需要客户端证书,但没有配置,因此我发现代理试图调用后端,但最后一个抱怨的是代理没有向他传递证书。

所以我错过了正确配置证书的机会。AFAIK我必须编译conf.d/modes-enabled/ssl.confD3*和SSLProxyMachineCertificate*节。我试过这样做

代码语言:javascript
复制
SSLRandomSeed startup file:/dev/urandom  256
SSLRandomSeed connect builtin
SSLEngine off
SSLProxyEngine on
SSLProtocol all

# proxy
SSLProxyMachineCertificateFile /usr/local/etc/apache2/ssl.crt/certificate.pem
SSLProxyMachineCertificateChainFile /usr/local/etc/apache2/ssl.crt/chain.pem
SSLProxyCACertificateFile /usr/local/etc/apache2/ssl.crt/ca.pem

# certificate
SSLCipherSuite DEFAULT:!EXP:!SSLv2:!DES:!IDEA:!SEED:+3DES
SSLCertificateFile /usr/local/etc/apache2/ssl.crt/all.pem
SSLCertificateChainFile /usr/local/etc/apache2/ssl.crt/certificate.pem

# key
SSLCertificateKeyFile /usr/local/etc/apache2/ssl.key/server.key
SSLPassPhraseDialog  exec:/usr/local/etc/apache2/pwf.sh

几个注意事项:

  • certificate.pem是服务器证书。
  • chain.pem是证书的中间链,边框除外。
  • ca.pem是根CA证书。
  • server.key是RSA私钥。

我用pwf.sh脚本代替了普通的对话框模式输入密码,但是我甚至不能启动apache,因为我有以下消息

AH02252:为SSL代理配置的不完整客户端证书(丢失或加密私钥?)AH02312:初始化mod_ssl时发生致命错误,退出。AH00016:配置失败

现在我读到(遗憾的是)没有办法克服这个问题,因为正如apache.org站点所说,在所有SSLProxyMachine*指令下:

(目前不支持加密私钥)

我迷路了吗?

EN

回答 1

Ask Ubuntu用户

回答已采纳

发布于 2020-06-14 15:04:19

您已经意识到自己不支持加密的私钥。如果你坚持使用加密的私钥,你就会迷路。如果提供纯文本中的私钥是可以接受的,那么就这样做。将加密的私钥转换为普通密钥使用(用于RSA密钥)

代码语言:javascript
复制
  openssl rsa -in encrypted_key.pem -out decrypted_key.pem
票数 1
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1250260

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档