为 Dovecot 和 Postfix 生成 SSL 密钥

为 Dovecot 和 Postfix 生成 SSL 密钥

按照本教程操作: https://www.vultr.com/docs/simple-mailserver-postfix-dovecot-sieve-debian

尝试为我的邮件服务器创建自签名 SSL 证书以进行测试,使用代码:

openssl req -newkey rsa:4096 -sha512 -x509 -days 365 -nodes -keyout /etc/dovecot/private/mykey.key -out /etc/dovecot/mycert.pem

现在,修改 Postfix 和 Dovecot 配置文件。我不明白的是这段代码是如何做到的:

smtpd_tls_cert_file = /etc/dovecot/private/mykey.pem
smtpd_tls_key_file = /etc/dovecot/private/mycert.pem
smtpd_use_tls = yes

还有这段代码:

ssl = yes
ssl_key = /etc/dovecot/private/mykey.pem
ssl_cert = /etc/dovecot/private/mycert.pem

应该如何工作?首先,只创建一个文件 - /etc/dovecot/private/mykey.key

也许有人可以解释一下运行命令后应该得到什么文件openssl——KEY 文件的 PEM?

编辑:我理解这个命令的结果是:

openssl req -newkey rsa:4096 -sha512 -x509 -days 365 -nodes -keyout /etc/dovecot/private/mykey.key -out /etc/dovecot/mycert.pem

应该生成 2 个文件 - mykey.pem(未签名密钥) 和mycert.pem(自签名证书),但是没有生成。我以不同的方式完成了此操作:

openssl genrsa -out key.pem 2048
openssl req -new -key key.pem -out csr.pem
openssl req -x509 -days 365 -key key.pem -in csr.pem -out certificate.pem

但好奇的是,为什么这个快捷代码不起作用?语法错误在哪里?

答案1

@drookie 和 @andytech 的评论帮助我解决了这个问题。没有错误,只是缺乏理解和关注。

经过进一步寻找答案后,我发现了一篇关于 SSL 密钥生成的好文章:https://msol.io/blog/tech/create-a-self-signed-ssl-certificate-with-openssl/

关于.pem缺席,我错过了证书生成到/etc/dovecot/cert.pem不是进入/etc/dovecto/private/cert.pem

相关内容