У меня проблема с конфигурацией Postfix + Dovecot в Ubuntu 16.04. Я мог настроить свои почтовые ящики, и я могу правильно отправлять и получать электронные письма, и теперь я хотел настроить POP3 + IMAP.
Проблема в том, что при подключении я всегда получаю неправильный сертификат.
root@server:~# openssl s_client -connect server:993 #with or without servername parameter
CONNECTED(00000003)
depth=0 CN = localhost.localdomain
verify return:1
---
Certificate chain
0 s:/CN=localhost.localdomain
i:/CN=localhost.localdomain
Тогда он не возвращает сертификат, настроенный в /etc/dovecot/conf.d/10-ssl.conf. В этом файле я указываю ssl, ssl_cert, ssl_key, ssl_key_password и verbose_ssl. Для создания сертификата я объединил crt "example.com", пакет CA и ключ в одном файле.
Используемый сертификат был выпущен для example.com (без поддомена), и я настроил свой сервер /etc/postfix/main.cf включить "example.com" в поля myhostname и mydestination. Моя запись MX также указывает на example.com
Имя хоста машины - «сервер».
Единственные странные сообщения в журнале:
May 20 01:33:47 server dovecot: lda(root): Error: chdir(/root/) failed: Permission denied (euid=65534(nobody) egid=65534(nogroup) missing +x perm: /root, dir owned by 0:0 mode=0700)
May 20 01:33:47 server dovecot: lda(root): Error: chdir(/root) failed: Permission denied
May 20 01:33:47 server dovecot: lda(root): Error: User initialization failed: Namespace '': stat(/root/Maildir) failed: Permission denied (euid=65534(nobody) egid=65534(nogroup) missing +x perm: /root, dir owned by 0:0 mode=0700)
May 20 10:58:47 server dovecot: lda: Fatal: Invalid user settings. Refer to server log for more information.
May 20 01:33:47 server dovecot: lda: Fatal: Invalid user settings. Refer to server log for more information.
May 20 09:26:07 server postfix/smtpd[23663]: warning: cannot get RSA certificate from file "/etc/ssl/certs/mail_with_key_creationbyte_com.crt": disabling TLS support
May 20 09:26:07 server postfix/smtpd[23663]: warning: TLS library problem: error:140DC009:SSL routines:SSL_CTX_use_certificate_chain_file:PEM lib:ssl_rsa.c:708:
Корневая папка уже имеет разрешение root: root 0700.
Есть идеи, какие команды использовать для отладки? Я не понимаю, как голубятня решает, какой сертификат обслуживать.
Здесь было несколько проблем:
Файл 10-ssl.conf был заменен на файл с более высокой нумерацией: /etc/dovecot/conf.d/99-mail-stack-delivery.conf
Итак, независимо от того, что я ввел в 10-ssl.conf, он всегда возвращал значение по умолчанию, настроенное в 99-mail-stack-delivery.conf (сертификатом по умолчанию был localhost.localdomain)
Я также указывал не на тот порт. Мне нужно было использовать порт 143
Ошибка, которую я получил о сертификате, была вызвана тем, что команда cat неправильно сформировала его следующим образом: ----- END CERTIFICATE ---------- BEGIN CERTIFICATE ----- (отсутствует новая строка между два)
Затем была разница между сертификатом SMTP в конфигурационном файле postfix и сертификатом, указанным в 99-mail-stack-delivery.conf. Я настроил его в postfix с использованием зашифрованного файла ключей, но SMTP не позволяет использовать зашифрованные ключи. Поэтому мне пришлось указать незашифрованный ключ в конфигурации постфикса.
Надеюсь, вся эта информация поможет новичку вроде меня установить почтовый сервер.
Самыми полезными инструментами, которые я использовал, были:
# summary and validation of all config
dovecot -n
# errors and verbosing
tail -f /var/log/dovecot.log
openssl s_client -connect example.com:143 -servername example.com -starttls imap
openssl s_client -connect example.com:143 -servername example.com -starttls imap
С помощью этих 2 вы можете проверить свои сертификаты, и работает ли сервис.
https://letsencrypt.com предлагает бесплатные сертификаты SSL *!
Проверить очередь электронной почты: mailq command
Убедитесь, что папки ~ / Maildir {cur, new, tmp} существуют и имеют необходимые разрешения (youruser: youruser 0700)
Включите ведение журнала для Outlook: Файл -> Параметры -> Дополнительно -> Другое -> Включить ведение журнала для устранения неполадок. Журналы будут в AppData \ Local \ Temp \ Outlook Logging