遵循本教程: 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
命令后会得到哪些文件 - PEM of KEY file?
编辑:我明白这个命令的结果:
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
但是很好奇为什么这个快捷方式代码不起作用?语法错误在哪里?
@drookie 和 @andytech 的评论帮助我解决了这个问题。没有错误,只是缺乏理解和关注。
在进一步寻找答案后,我发现了一篇关于 SSL-key 生成的好文章:https ://msol.io/blog/tech/create-a-self-signed-ssl-certificate-with-openssl/
关于
.pem
缺席,我错过了证书是生成到/etc/dovecot/cert.pem
而不是生成到/etc/dovecto/private/cert.pem
.