bg-tutorials

如何在 Courier IMAP 服务器上生成 CSR

本教程介绍如何在 Courier IMAP 服务器上使用 OpenSSL 生成 CSR(证书签名请求)。通过此 CSR 获取的证书可保护邮件客户端在 IMAP、POP3 和 SMTP 中使用的 TLS 连接,确保凭据和邮件在客户端与服务器之间加密传输。

在 Courier IMAP 服务器上生成 CSR

如果您已生成 CSR 并从证书颁发机构收到证书文件,请跳过本指南,直接前往在 Courier IMAP 服务器上安装 SSL 证书。

CSR 是一段编码文本,包含您希望认证的域名和组织信息。当您订购证书时,需要将其发送给证书颁发机构(CA)。生成 CSR 的同时也会创建一个与之匹配的私钥,该私钥保留在您的服务器上。之后安装证书时需要用到这个密钥,因此请勿删除或移动它。

您可以按照下方说明通过命令行使用 OpenSSL 生成 CSR,也可以使用我们的CSR 生成器在浏览器中生成 CSR 和密钥。

步骤一:运行 OpenSSL 命令

通过 SSH 连接到您的服务器,然后运行以下命令。它会在当前目录下生成一个新的 2048 位 RSA 私钥以及与之匹配的 CSR:

openssl req -new -newkey rsa:2048 -nodes 
  -keyout mail.yourdomain.com.key 
  -out mail.yourdomain.com.csr 
  -addext "subjectAltName=DNS:mail.yourdomain.com,DNS:imap.yourdomain.com,DNS:smtp.yourdomain.com"

-addext 选项会在请求中添加使用者备用名称(SAN)。这一项不是可选的:浏览器和邮件客户端会将服务器主机名与 SAN 而非 Common Name 进行匹配,因此证书必须列出客户端使用的每一个主机名。请将客户端连接所用的所有主机名列出,用逗号分隔。

请使用客户端实际用于 IMAP、POP3 和 SMTP 的主机名,例如 mail.yourdomain.com、imap.yourdomain.com 和 smtp.yourdomain.com。如果这三种服务共用一个主机名,只需列出该名称即可。除非邮件客户端直接连接到您的裸网站域名,否则应避免使用它。

关于该命令还有两点说明:rsa:2048 是公共 CA 接受的最小密钥长度,您也可以将其提升为 rsa:4096 以获得更大的密钥。-nodes 选项会在写入密钥时不设置口令,这是 Courier 所要求的,因为它在启动时会自动加载密钥,不会提示输入口令。

步骤二:回答提示信息

接下来 OpenSSL 会询问构成证书识别名称(Distinguished Name)的相关信息,顺序如下:

  • Country Name(2 letter code):您所在国家/地区的两字母 ISO 代码,例如 US 或 GB。
  • State or Province Name:完整的省/州名称,不要使用缩写。
  • Locality Name:您的组织注册所在的城市。
  • Organization Name:您组织的法定名称,例如 GPI Holding LLC。
  • Organizational Unit Name:请留空并按回车键。公共 CA 已不再包含 OU 字段。
  • Common Name:您要保护的主要邮件主机名,例如 mail.yourdomain.com。它应与步骤一中的某个 SAN 名称匹配。
  • Email Address:可选。您可以留空,因为公共 CA 不会将其包含在证书中。

在识别名称之后,OpenSSL 还会询问两个额外属性:A challenge password 和 An optional company name。两者均留空并按回车键即可,公共 CA 不使用这些信息。

如果提示中显示方括号内的值,那是默认值:按回车键即可接受,或输入新值。请勿将整个识别名称留空,因为部分 OpenSSL 版本在此情况下会拒绝写入 CSR。至少需要填写国家、组织和 Common Name。

步骤三:复制 CSR 并订购证书

OpenSSL 会在当前目录中保存两个文件:mail.yourdomain.com.key(您的私钥)和 mail.yourdomain.com.csr(您的 CSR)。您可以使用任意纯文本编辑器打开 CSR,或将其输出到终端:

cat mail.yourdomain.com.csr

复制整个内容块,包括 -----BEGIN CERTIFICATE REQUEST----- 和 -----END CERTIFICATE REQUEST----- 这两行。内容大致如下:

-----BEGIN CERTIFICATE REQUEST-----
MIICvDCCAaQCAQAwXTELMAkGA1UEBhMCVVMx...
...the encoded body of your request...
-----END CERTIFICATE REQUEST-----

在购买证书时,将此内容块粘贴到订单表单中。提交前,可通过我们的CSR 解码器确认信息是否正确,它会显示该 CSR 中包含的 Common Name、SAN 条目、密钥长度以及组织信息。

请将 mail.yourdomain.com.key 保存在服务器上,并仅允许 root 用户读取。安装过程中您需要将其与颁发的证书合并使用,没有对应的私钥,证书是无法安装的。

一旦 CA 颁发了您的证书,您需要将其与此私钥以及 CA 证书链合并为一个 PEM 文件,并将 Courier 的 TLS_CERTFILE 设置指向该文件。我们的在 Courier IMAP 服务器上安装 SSL 证书的方法指南涵盖了完整流程。

立即订购 SSL 证书, 可节省 10% 的费用!

快速发行, 强大加密, 99.99% 的浏览器信任度, 专业支持和 25 天退款保证. 优惠券代码 SAVE10

龙飞行的详细图像
撰写人

经验丰富的内容撰稿人, 擅长 SSL 证书. 将复杂的网络安全主题转化为清晰, 引人入胜的内容. 通过有影响力的叙述, 为提高数字安全作出贡献.

Avatar of Sergiu Rosca
Technical Review by Sergiu Rosca

Sergiu Rosca is the core web developer behind SSL Dragon. He manages the technical infrastructure, platform performance, and backend integrations that keep the site running smoothly and securely. At SSL Dragon, Sergiu shares practical insights on web development, site optimization, and technical troubleshooting.

All SSL Dragon installation guides are tested on live server environments and undergo a strict peer-review process to ensure your infrastructure remains secure. Read our full Editorial Policy.