2024年6月22日

HYEOS

随事而为

域名解析及SSL证书配置

2 min read

iRedMail 在安装过程中会生成一个自签名的 SSL 证书,它是 如果您只想保护网络连接(通过 POP3/IMAP/SMTP TLS、HTTPS),但邮件客户端或 Web 浏览器会提示烦人的消息 警告您此自签名证书不受信任。 为了避免这种情况 烦人的消息,你必须从 SSL 证书购买 SSL 证书 提供商。 搜索 buy ssl certificate在谷歌会给你很多 SSL 提供者,选择您喜欢的那个。
获取 SSL 证书
从 Let's Encrypt 申请免费证书//或查看本站文章使用acme获取证书

我们还有另一个教程向您展示如何从 Let's Encrypt 申请免费证书: 从 Let's Encrypt 申请免费证书 。
从值得信赖的 SSL 供应商处购买

要从受信任的供应商处购买 ssl 证书,您需要生成一个新的 SSL 服务器上的密钥和签名请求文件 openssl命令:

警告

不要使用小于 2048有点,没有安全感。

# openssl req -new -newkey rsa:2048 -nodes -keyout privkey.pem -out server.csr

此命令将生成两个文件:

privkey.pem:用于解密您的 SSL 证书的私钥。
server.csr:用于申请的证书签名请求(CSR)文件 用于您的 SSL 证书。 SSL 证书需要此文件 提供商。

openssl 命令将提示输入以下 X.509 属性 证书:

Country Name (2 letter code): 使用不带标点符号的双字母代码 为国家。 例如:美国、加拿大、中国。
State or Province Name (full name):完整拼出状态; 不要 州或省名称的缩写,例如:California。
Locality Name (eg, city):城市或城镇名称,例如:伯克利。
Organization Name (eg, company): 您的公司名称。
Organizational Unit Name (eg, section): 部门名称或 发出请求的组织单位。
Common Name (e.g. server FQDN or YOUR name): 服务器 FQDN 或您的姓名。
Email Address []: 您的完整电子邮件地址。
A challenge password []: 键入此 ssl 证书的密码。
An optional company name []:可选的公司名称。

注意 :某些证书只能在使用 Common Name在注册时指定。 例如,域的证书 domain.com如果访问名为 www.domain.com 或者 secure.domain.com, 因为 www.domain.com和 secure.domain.com是 不同于 domain.com.

现在你有两个文件: privkey.pem和 server.csr. 前往网站 您首选的 SSL 提供商,它会要求您上传 server.csr归档到 签发 SSL 证书。

通常,SSL 提供商会给你 2 个文件:

cert.pem
fullchain.pem(一些 SSL 提供商使用名称 server.ca-bundle)

我们需要以上 2 个文件,以及 privkey.pem. 将它们上传到您的服务器,您可以 将它们存储在您喜欢的任何目录中,推荐的目录是:

在 RHEL/CentOS 上: cert.pem和 fullchain.pem应该放在 /etc/pki/tls/certs/, privkey.pem应该 /etc/pki/tls/private/.
在 Debian/Ubuntu、FreeBSD 上: cert.pem和 fullchain.pem应该 置于 /etc/ssl/certs/, privkey.pem应该 /etc/ssl/private/.
在 OpenBSD 上: /etc/ssl/.

使用购买的证书

使用购买的证书最简单快捷的方法是更换 iRedMail 安装程序生成的自签名 SSL 证书,然后 重新启动使用证书文件的服务。
替换证书文件

警告

如果您使用 iRedMail Easy 平台部署了 iRedMail,ssl 证书文件 存储在 /opt/iredmail/ssl/:

key.pem: 私钥
cert.pem: 证书
combined.pem: 全链

在 RHEL/CentOS 上:

mv /etc/pki/tls/certs/iRedMail.crt{,.bak} # Backup. Rename iRedMail.crt to iRedMail.crt.bak
mv /etc/pki/tls/private/iRedMail.key{,.bak} # Backup. Rename iRedMail.key to iRedMail.key.bak
cp fullchain.pem /etc/pki/tls/certs/iRedMail.crt
cp privkey.pem /etc/pki/tls/private/iRedMail.key

在 Debian/Ubuntu、FreeBSD 和 OpenBSD 上:

mv /etc/ssl/certs/iRedMail.crt{,.bak} # Backup. Rename iRedMail.crt to iRedMail.crt.bak
mv /etc/ssl/private/iRedMail.key{,.bak} # Backup. Rename iRedMail.key to iRedMail.key.bak
cp fullchain.pem /etc/ssl/certs/iRedMail.crt
cp privkey.pem /etc/ssl/private/iRedMail.key

重启网络服务

PS:重点是将原证书删除,将新证书链接至旧证书保存的地方,这样做可以避免修改多处文件

最后,需要对mail.domain_name.com进行域名解析设置修改,文件在/etc/nginx/site-enables/00-default-ssl.conf可自行查看

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注