У меня проблема с моим сертификатом StartSSL. Когда я пытаюсь использовать его для активации SSL-шифрования на Dovecot, я получаю следующую ошибку в моем журнале, когда клиент пытается подключиться к серверу imap:
dovecot: imap-login: Fatal: Couldn't parse private ssl_key: error:0906D06C:PEM routines:PEM_read_bio:no start line: Expecting: ANY PRIVATE KEY
dovecot: master: Error: service(imap-login): command startup failed, throttling for 16 secs
Однако я следовал этому руководству: SSL как установить ssl на сервер Dovecot IMAP | ErlyCoder и мой закрытый ключ (без ключевой фразы) и сертификат присутствуют там, где они должны быть, поэтому я не понимаю, почему он не работает
В моем файле dovecot.conf:
ssl_key = /home/mail/ssl/****.key
ssl_cert = /home/mail/ssl/****.pem
Файл сертификата содержит в следующем порядке:
ОС: Debian 8
Спасибо
Наконец я нашел, как заставить мой сертификат StartSSL работать с Dovecot и OpenSMTPD (5.4.2p1):
Для Dovecot вам нужно объединить ключ и сертификат в файл pem - спасибо @Alexus - и добавить эти строки в файл конфигурации dovecot:
# blablabla
ssl = required
ssl_key = </home/mail/ssl/dovecot.pem # Key
ssl_cert = </home/mail/ssl/dovecot.pem # Certificate
ssl_ca = </home/mail/ssl/ca-bundle.pem # Server Certificate Bundle with CRLs
# blablabla
Видеть http://wiki.dovecot.org/SSL/DovecotConfiguration Чтобы получить больше информации. В ca-bundle.pem
исходит из StartSSL
Что касается OpenSMTPD, прошло много времени, прежде чем я понял, что он работает идеально:
Я использовал Thunderbird для проверки подключения к Dovecot и OpenSMTPD, однако "ошибка" влияет на Thunderbird и заставляет меня думать, что OpenSMTPD имеет неправильную конфигурацию:
https://github.com/OpenSMTPD/OpenSMTPD/issues/451
Чтобы использовать Thunderbird с OpenSMTPD, вы должны выбрать STARTTLS для аутентификации на вашем SMTP-сервере, иначе у вас будет эта ошибка при попытке подключения:
Aug 26 22:06:47 asterix smtpd[5866]: smtp-in: New session 8b475ba3c3415a4d from host 37-161-XX-XX.coucou-networks.fr [37.161.XX.XX]
Aug 26 22:06:47 asterix smtpd[5866]: smtp-in: Bad input on session 8b475ba3c3415a4d: 500 5.5.1 Invalid command: Pipelining not supported
Aug 26 22:06:47 asterix smtpd[5866]: smtp-in: Closing session 8b475ba3c3415a4d
Мой smtpd.conf:
pki <hostname> key "/home/mail/ssl/opensmtpd.key"
pki <hostname> certificate "/home/mail/ssl/opensmtpd.crt"
pki <hostname> ca "/home/mail/ssl/ca-bundle.pem"
listen on eth0 port 25 hostname <hostname> tls pki <hostname>
listen on eth0 port 587 hostname <hostname> tls-require pki <hostname> auth mask-source
PS: ключ и сертификат находятся в разных файлах для OpenSMTPD, а не в .pem, таком как Dovecot
в соответствии с этим документом, который вы предоставили, попробуйте поместить только закрытый ключ и сертификат в .pem
и используйте то же самое для файла ssl_cert
и ssl_key
.
следующее из моей собственной системы:
[root@j /usr/local/etc/dovecot/conf.d]# grep ^ssl_ 10-ssl.conf
ssl_cert = </usr/local/etc/dovecot/alexus.biz.pem
ssl_key = </usr/local/etc/dovecot/alexus.biz.pem
[root@j /usr/local/etc/dovecot/conf.d]# grep ^- /usr/local/etc/dovecot/alexus.biz.pem
-----BEGIN RSA PRIVATE KEY-----
-----END RSA PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
[root@j /usr/local/etc/dovecot/conf.d]#