首页 > 解决方案 > mailu docker - 如何包含容器 id 来加密证书?

问题描述

我现在搜索了几个小时扔互联网,但没有找到适合我的情况。

我的服务器上安装了一个 mailu docker,我想从我的流星应用程序发送电子邮件扔了这个容器。

我设置了 MAIL_URL 变量process.env.MAIL_URL = 'smtps://USERNAME:PASSWORD@DOCKER-IP:465';,当我也使用全局变量NODE_TLS_REJECT_UNAUTHORIZED = 0但出于安全原因我不想使用它时,这可以正常工作。

当我从笔记本电脑上的流星应用程序发送电子邮件并使用我的电子邮件服务器 mail.foo.com 而不是 docker-idsmtps://USERNAME:PASSWORD@mail.foo.com:465时,它也可以工作。所以从外面我没有问题,但是当我在服务器上时,我不能使用 localhostsmtps://USERNAME:PASSWORD@localhost:465smtps://USERNAME:PASSWORD@mail.foo.com:465.

正如@natevw 在Node.js Hostname/IP 中所说的与证书的 altnames 不匹配

最好先诊断证书未授权的原因,然后看看是否可以修复。

我会说我的问题是内部 docker-ip 地址不在包含的证书中。所以在我看来,我会说我有两个选择:

  1. 我可以以某种方式将 IP 地址添加到证书中
  2. 我可以以某种方式使用 localhost 或域名而不是内部容器 id

但遗憾的是,我不知道如何实现其中之一。

如果您需要一些配置或类似的东西,请发表评论,我将编辑这篇文章。

在此先感谢,迈克尔

标签: dockermeteorlets-encrypt

解决方案


推荐阅读