Раньше мои письма подписывались DKIM в заголовке. Теперь, если вы проверите источник электронной почты, он не подписывается.
Что случилось? Как я могу отладить, какие журналы можно посмотреть?
cat /etc/exim4/conf.d/main/00_local_macros
Возврат:
DKIM_CANON = relaxed
DKIM_SELECTOR = mail
DKIM_DOMAIN = ${sg{${lc:${domain:$h_from:}}}{^www\.}{}}
DKIM_FILE = /etc/exim4/keys/${dkim_domain}/mail.private
DKIM_PRIVATE_KEY = ${if exists{DKIM_FILE}{DKIM_FILE}{0}}
Расположение ключей:
ls -la /etc/exim4/keys/example.co.za/
Возврат:
-rwxr-x--- 1 Debian-exim Debian-exim 887 Mar 7 17:26 mail.private
-rwxr-x--- 1 Debian-exim Debian-exim 305 Mar 7 17:26 mail.txt
Проверьте свой основной журнал, чтобы узнать, какой транспорт доставляет вашу почту (T = строки). Единственный стандартный транспорт, подписывающий электронную почту, - это remote_smtp
. Если почта доставляется другим транспортом, она не подписывается.
РЕДАКТИРОВАТЬ: Я считаю, что, возможно, ваша проблема в том, что ${dkim_domain}
скорее всего не содержит значения DKIM_DOMAIN
:
DKIM_DOMAIN = ${sg{${lc:${domain:$h_from:}}}{^www\.}{}}
DKIM_FILE = /etc/exim4/keys/${dkim_domain}/mail.private
Пытаться:
DKIM_DOMAIN = ${sg{${lc:${domain:$h_from:}}}{^www\.}{}}
DKIM_FILE = /etc/exim4/keys/{DKIM_DOMAIN}/mail.private
Хотя я бы рекомендовал не отправлять из www
домены, чтобы вы могли определить DKIM_DOMAIN следующим образом. Вы можете использовать перезапись домена, чтобы удалить www
часть домена, хотя я бы вообще постарался избежать ее попадания туда.
DKIM_DOMAIN = ${lc:${domain:$h_from:}}
Я предпочитаю использовать разделенную конфигурацию, хотя конфигурация с одним файлом работает, если у вас есть только простые модификации. Любые изменения, которые я делаю, - это новые файлы с новыми именами. У меня есть несколько модифицированных версий Exim, предоставленных конфигурационных файлов, измененных в соответствии с моими потребностями. Этот метод сохраняет мои изменения, когда обновление Exim включает изменения конфигурации. В любом случае рассмотрите возможность использования системы контроля версий для отслеживания ваших изменений.
Идентификатор пользователя, запускающего exim, должен иметь возможность читать ключевые файлы и все каталоги, ведущие к файлам. Однако он не должен иметь возможность записывать или заменять ключи. Если у вас есть ключи в выделенном каталоге, вы можете защитить его, изменив режим на 750
, меняя владельца на root
и группа Debian-exim
или любая другая группа, от имени которой работает exim. Аналогичным образом защитите ключи, но установите режим 440
или 640
.