【问题标题】:Docker + SSL + apache2 + x509码头工人 + SSL + apache2 + x509
【发布时间】:2015-08-07 10:24:45
【问题描述】:

我有一个最大的问题:SSL 我正在尝试在我的系统中安装证书,并且我的系统有 3 个由 vagrant 管理的容器。

数据库(码头工人) 主系统(码头工人) proxy(docker) - 这是一个反向代理

当我尝试在我的容器代理中安装并在文件夹中安装所有证书时。 我改变了

<Virtualhost>

    ## SSL directives
      SSLEngine on
      SSLCertificateFile       "/etc/apache2/ssl/www.mydomain.com.br.crt"
      SSLCertificateKeyFile "/etc/apache2/ssl/mykey.key"
      SSLCACertificateFile  "/etc/apache2ssl/sslroot.crt"
      SSLCertificateChainFile "/etc/apach2/ssl/Intermediate.crt"

</Virtualhost>

显然我在路径文件夹 /etc/apache2/ssl/ 中的证书

当我尝试重新启动我的 Apache 时,我的容器“代理”不再运行,并且它们的状态为已停止。我称之为 docker log 代理:

***[error] Init: Unable to read server certificate from file /etc/apache2/ssl/www.patobragado.gedvic.com.br.key
[Thu Aug 06 11:01:02 2015] [error] SSL Library Error: 218529960 error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
[Thu Aug 06 11:01:02 2015] [error] SSL Library Error: 218595386 error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error***

有人知道我该如何解决这个问题吗?

我需要在服务器中安装这个 SSL。

【问题讨论】:

    标签: ssl amazon-ec2 docker apache2 x509certificate


    【解决方案1】:

    假设您通过将代理容器正确链接到您的网络服务器容器来启动代理容器,例如:

    docker run -d --name webserver ...
    docker run -d --name proxy --link webserver ...
    

    当您重新启动 webserver 容器时,其内部 Docker IP 地址可能会在重新启动后更改,并且 proxy 容器 gets automatically updated as well 上的 /etc/hosts 文件可能会更改。所以我proxy突然连接到一个破坏SSL的不同IP地址时。

    因此,您还需要重新启动您的 proxy(或者如果可能的话,只需在容器内重新加载其配置以重新初始化 SSL 配置)。

    我还没有测试它。但您也可以尝试在 proxy 容器上定义 重启策略,例如:

    docker run -d --name proxy --link webserver --restart=always ...
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-01
      • 1970-01-01
      • 2016-01-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多