Рейтинг:1

Обновлен EXIM4, теперь не используется TLS из-за сбоя проверки.

флаг gb

У меня есть домашний сервер, и я обновил системный диск до SSD, как это было на комбинации USB и жесткого диска для /home и /var. Поскольку USB был на предыдущей версии Debian, я сделал новую установку, которая также обновила меня до версии 4.95 EXIM, ранее я был на 4.94.2.

Несмотря на ту же конфигурацию smarthost, для использования SMTP-сервера моего интернет-провайдера он больше не использует TLS и выдает ошибку проверки.

/var/log/exim4/mainlog:

2022-04-12 03:30:25 1ne6I7-000AHw-MF Сеанс TLS: (проверка сертификата не удалась): доставка в незашифрованном виде в H=<DOMAIN> [<IP>] (не в hosts_require_tls)

Почта по-прежнему принимается в незашифрованном виде, но теперь почта с заданий cron помечается моим интернет-провайдером. как спам. Единственным изменением являются сообщения, являющиеся Получили заголовок, который перестал быть с esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) чтобы просто с esmtp (Exim 4.95). Так что, по-видимому, именно эта разница и привлекает к нему дополнительное внимание.

Я использовал тот же самозаверяющий ключ и сертификат (с отметкой времени 2013 года), что и при предыдущей установке. Я также попытался создать новую пару с аналогичным отсутствием эффекта.

После поиска в Интернете совета было предложено использовать конфигурацию letsencrypt, чтобы ее можно было проверить. Я уже использую это, но это вызвало такое же поведение в EXIM.

это моя конфигурация

/etc/exim4/update-exim4.conf.conf:

dc_eximconfig_configtype='умный хост'
dc_other_hostnames='<ЛОКАЛЬНЫЙ ДОМЕН>'
dc_local_interfaces='127.0.0.1 ; ::1'
dc_readhost=''
dc_relay_domains=''
dc_minimaldns = 'ложь'
dc_relay_nets=''
dc_smarthost='<ДОМЕН провайдера>:587'
CFILEMODE='644'
dc_use_split_config = 'истина'
dc_hide_mailname = 'ложь'
dc_mailname_in_oh = 'истина'
dc_localdelivery = 'maildir_home'

/etc/exim4/etc/exim4/conf.d/main/00_local_settings:

MAIN_TLS_ENABLE = да
MAIN_TLS_CERTIFICATE = /etc/letsencrypt/live/<ЛОКАЛЬНЫЙ ДОМЕН>/fullchain.pem
MAIN_TLS_PRIVATEKEY = /etc/letsencrypt/live/<ЛОКАЛЬНЫЙ ДОМЕН>/privkey.pem

/etc/letsencrypt/archive/<ЛОКАЛЬНЫЙ ДОМЕН>/*15.*

-rw-r--r-- 1 корень Debian-exim 1870 28 марта 00:48 /etc/letsencrypt/archive/<ЛОКАЛЬНЫЙ ДОМЕН>/cert15.pem
-rw-r--r-- 1 root Debian-exim 3749 28 марта 00:48 /etc/letsencrypt/archive/<ЛОКАЛЬНЫЙ ДОМЕН>/chain15.pem
-rw-r--r-- 1 root Debian-exim 5619 28 марта 00:48 /etc/letsencrypt/archive/<ЛОКАЛЬНЫЙ ДОМЕН>/fullchain15.pem
-rw------- 1 root Debian-exim 1708 28 марта 00:48 /etc/letsencrypt/archive/<ЛОКАЛЬНЫЙ ДОМЕН>/privkey15.pem

у меня тоже есть /etc/exim4/passwd.client файл с моими данными для входа в SMTP, и который, очевидно, вообще работает для отправки почты.

это домен, который указывает на мой домашний IP-адрес.

Записи ключей letsencrypt в 00_local_settings указывают на его симлинки, ведущие на текущие версии. На них я изменил владельца группы, чтобы EXIM мог видеть закрытый ключ, но оставил разрешения в покое.

Моя предыдущая рабочая конфигурация была такой же, но с самоподписанным exim.crt и exim.key файлы в /etc/exim4, и так без последних двух строк в моем файле 00_local_settings.

Я также попытался скопировать файлы letsencrypt в /etc/exim4 и называя их exim.cert и exim.key с теми же разрешениями 640 и ничего в 00_local_settings но это ничего не изменило.

Что особенно раздражает, так это то, что в качестве окончательного теста я просто удалил ключи без настройки, чтобы посмотреть, что произойдет. Я получил ту же ошибку, поэтому я не могу сказать, есть ли проблема с ключами, которые я использовал, или они просто их вообще не видят.

флаг us
ищите подсказки в /var/log/exim4/mainlog и /var/log/exim4/paniclog
флаг gb
К сожалению, `paniclog` не существует, и строка, которую я дал, является единственной подсказкой в ​​`mainlog`. Записи до и после такие же, как и в старой системе Debian, для подтверждения подключения и того, что почта принята. Но для ошибки TLS, которую я включил, все выглядит нормально. Даже ошибка конфигурации нигде не регистрируется при запуске Exim. Я совсем потерялся, что делать.
Рейтинг:2
флаг gb

Я продолжил исследования, и я нашел ответ, своего рода. Мне было непонятно, чей сертификат проверялся, я предположил, что это мой, но понял, что это может быть сертификат удаленного SMTP-сервера.

Добавление записи ниже в /etc/exim4/etc/exim4/conf.d/main/00_local_settings отключает проверку, разрешает использовать TLS.

REMOTE_SMTP_SMARTHOST_TLS_VERIFY_HOSTS = !*

Это можно подтвердить в заголовке сообщения, который теперь показывает, что оно получено. с esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.95)

Я предполагаю, что это то, что происходило раньше, и что либо Debian, либо Exim изменили значение по умолчанию на требование проверки с момента моей первоначальной настройки.

Предположительно, если удаленный сервер использует самогенерируемый сертификат, его нельзя проверить?

флаг us
при повторном чтении строки журнала я собирался предположить ту же причину.
флаг gb
Было немного неясно, кто кого проверял, поскольку это не дает никаких предположений, какой сервер сгенерировал ошибку. Учитывая, что я много искал, чтобы найти ответ, но безуспешно, надеюсь, что размещение его здесь означает, что любой другой человек в подобной ситуации найдет простое решение. Тем не менее, спасибо за внимание к вопросу.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.