使用Let’s Encrypt证书

作者:mailstore,发布时间:2020-05-11 18:01:28

背景

为了确保真实性和安全性,MailStore Server在所有提供的服务中使用TLS证书。在安装过程中,MailStore Server允许

  • 创建一个自签名证书,
  • 使用现有的证书,
  • 或从“Let’s Encrypt”获取证书。

首次安装MailStore Server时,通常会使用默认的创建自签名证书的选择,因为它没有附带任何要解决的外部依赖项。虽然这在非生产设置中非常好,但不建议将其用于生产,因为自签名证书不受其他客户端计算机的信任,因为未由受信任的证书颁发机构进行签名,并且用户可能习惯了忽略证书警告,使它们容易受到中间攻击。

使用正在使用自签名证书的MailStore Web Access打开时,将显示以下或类似的警告消息。

使用Let’s Encrypt证书-1

为了消除这些警告,提高安全性并增强可用性,需要将MailStore重新配置为使用由受信任的证书颁发机构签发的证书。

下面介绍了如何从免费证书颁发机构“Let’s Encrypt”中获取和使用证书。如果您已经拥有由受信任的证书颁发机构签署的证书(即,您的域的通配符证书),或者您想从您喜欢的CA手动请求证书,请参阅使用您自己的SSL证书有关详细说明。

关于Let’s Encrypt

“Let’s Encrypt”是一个免费,自动和开放的证书颁发机构,受到所有主要网络浏览器和操作系统的信任。来自IT行业的许多知名大型赞助商都支持“Let’s Encrypt”工作,以帮助使互联网成为更安全的地方。

全自动的证书批准过程消除了通常需要几天时间的传统证书颁发机构的电子邮件或电话验证。

让我们加密证书仅可使用90天,因此需要定期更新。完成初始配置后,MailStore Server服务将处理自动续订。

先决条件

  • MailStore Server计算机的公用DNS记录(A或CNAME)必须存在并指向其公用IP地址。
  • 必须通过Internet在TCP端口80(HTTP)上访问MailStore Server计算机,以进行“加密”的自动域批准过程。在防火墙或网关上可能需要端口转发。由于“Let’s Encrypt”从不同的IP地址进行验证,因此可能需要的防火墙规则不能仅限于某些源IP地址。

方案1:局域网(LAN)上的MailStore服务器

MailStore Server安装的最常见方案是在组织机构内部的本地网络上。通常,MailStore Server计算机具有一个专用IP地址(例如192.168.0.10),并且Internet连接是通过路由器建立的,该路由器使用ISP为其分配的自己的外部IP地址来屏蔽所有内部IP地址。这称为网络地址转换(NAT)。

对于这种情况,我们假设MailStore Server在新的专用计算机上运行。

  1. 要求您的Internet访问提供商为路由器分配一个静态的公共IP地址。
  2. 从您的本地网络向MailStore Server计算机分配一个可用的静态IP地址。
  3. 在路由器上创建一个端口转发规则,该规则将所有连接转发到步骤1中分配的公用IP地址上的TCP端口80到步骤2中分配的MailStore Server计算机的内部IP地址。
  4. 将A或CNAME记录添加到您的公共域的DNS区域中,例如,指向步骤1中分配的公共IP地址的mailstore.example.com。
  5. 根据本地网络中DNS解析的处理方式,您还需要在内部DNS服务器或路由器上添加相应的DNS记录。该记录应指向MailStore Server计算机的内部IP地址。

方案2:外部网络上的MailStore服务器

如果MailStore Server计算机已经位于使用公共IP地址的网络上,例如在数据中心或DMZ中,则满足先决条件要容易得多。

对于这种情况,我们假设MailStore Server在新的专用计算机上运行。

  1. 从您的公用网络向MailStore Server计算机分配一个可用的公用IP地址。
  2. 如果存在防火墙,请创建防火墙规则,该规则允许与公用IP地址上的TCP端口80的所有连接都通过。
  3. 将A或CNAME记录添加到您的公共域的DNS区域中,例如,指向步骤1中分配的公共IP地址的mailstore.example.com。

取得证书

  • 打开MailStore Server服务配置。
  • 选择网络设置
  • 在“证书”部分中,单击证书旁边的省略号
  • 从“Let’s Encrypt”中选择请求…
  • 显示了先决条件。

使用Let’s Encrypt证书-2

  • 单击下一步继续。

使用Let’s Encrypt证书-3

  • 在相应的字段中输入您的电子邮件地址和服务器名称
  • 单击链接以打开“加密用户协议”。
  • 阅读并理解“让我们加密订户协议”后,勾选我接受“让我们加密订户协议”复选框
  • 单击下一步继续。
  • MailStore现在针对Let’s Encrypt的暂存环境测试设置。如果发生问题,MailStore将显示警告。请查看日志输出,解决该问题,然后重试。
  • 如果测试成功,MailStore将自动从Let’s Encrypt的生产系统中请求证书,并确认设置成功。
  • 点击完成。
  • 只要没有手动选择其他证书,就可以每60天自动更新“Let’s Encrypt”证书。