我在 Digital Ocean 的 Ubuntu 12.04 x64 Apache/iRedMail 服务器上安装了通用 RapidSSL 证书。它在浏览器中验证良好,当我使用 RapidSSL 的检查器工具时。
但是,此服务器专门用于邮件,当我在 Mail (Mac OS) 或我的 iPhone 等上设置帐户时,我必须进行安全异常,因为它给了我错误“此根证书不受信任。” 由于某种原因,它显示该位置为中国广东。
我与 eNom 的支持人员(我在那里购买了 SSL 证书)进行了交谈,他提到使用根域而不是子域进行邮件可能存在问题,并且我可能需要通配符证书。这个建议对我来说没有逻辑意义。
我的一般问题是:在根域上设置具有通用 SSL 证书的邮件服务器与在具有通配符 SSL 证书的子域上设置邮件服务器有什么区别?
还是我的 Apache 配置有问题?
谢谢!:)
更新:
所以现在我做了以下事情:
在 /etc/dovecot/dovecot.conf
改变:
ssl_cert = </etc/ssl/certs/iRedMail_CA.pem
ssl_key = </etc/ssl/private/iRedMail.key
至:
ssl_cert = </etc/ssl/certificate.crt
ssl_key = </etc/ssl/certificate.key
ssl_ca = </etc/ssl/intermediate.crt
然后在 /etc/postfix/main.cf
我变了:
smtpd_tls_cert_file = /etc/ssl/certs/iRedMail_CA.pem
smtpd_tls_key_file = /etc/ssl/private/iRedMail.key
至:
smtpd_tls_cert_file = /etc/ssl/certs/certificate.crt
smtpd_tls_key_file = /etc/ssl/certificate.key
smtpd_tls_CAfile = /etc/ssl/intermeidate.crt
然后,我重新启动服务器。并且 Apache 挂起,得到这个错误:
root@host:~# service apache2 status
Apache2 is NOT running.
root@host:~# service apache2 restart
* Restarting web server apache2
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
Action 'start' failed.
The Apache error log may have more information.
...fail!
root@host:~#
所以,然后我这样做:
netstat -ltnp | grep ':80'
结果:
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1464/apache2
然后我这样做:
kill -9 1464
之后 Apache 重新启动正常,但 roundcube 不允许我登录,我根本无法连接到 IMAP 或 SMTP。
鸽舍日志 说:
11 月 7 日 04:31:43 imap-login:错误:SSL 私钥文件受密码保护,但未提供密码
11 月 7 日 04:31:43 imap-login:致命:无法解析私有 ssl_key
再次更新:
Dovecot 的一切现在都运转良好。必须执行以下操作,因为我的证书是用密码加密的:
killall 鸽舍
鸽舍 -p
然后输入我的密码。
现在我的问题是 Postfix,它根本不起作用。我假设它不喜欢受密码保护的密钥。