Какое имя хоста отправляет exim?
Имя HELO можно найти в логах exim4. Остановите демон exim4, затем перезапустите его вручную с включенной отладкой:
/usr/sbin/exim4 -bd -d+all 2>&1 | egrep 'HELO|EHLO'
(эта 2>&1|egrep 'HELO|EHLO'
часть является необязательной, она просто перенаправляет stderr в stdout, затем направляет журнал в egrep
, что отфильтрует все, кроме строк, содержащих HELO или EHLO).
Отправьте электронное письмо, и в следующей форме должна быть одна или две строки:
SMTP>> EHLO foobar.example.com
HELO зовут foobar.example.com
.
Есть также несколько полезных инструментов онлайн-проверки, которые предоставляют эту информацию (и много других полезных), например:
- https://www.mail-tester.com (будьте осторожны, только 3 бесплатных почтовых чека в день);
- check-auth@verifier.port25.com (бесплатно);
- mailtest@unlocktheinbox.com (большая часть отзывов не бесплатная, но для этого есть).
Как я могу изменить это?
Вместо того, чтобы редактировать транспортный файл, как это было предложено Дэвидом, я бы предпочел использовать определения констант exim4 (?) И задать имя в /etc/exim4/conf.d/main/00_local_settings
(в раздельной конфигурации), например:
REMOTE_SMTP_HELO_DATA=$sender_address_domain
Не забудьте запустить update-exim4.conf
прежде, чем перезапустить exim4.
Я установил имя_хоста […] в /etc/exim4/exim4.conf.template
Как упомянул Дэвид, это, вероятно, не лучшая идея. В раздельной конфигурации вы можете установить основное имя хоста, добавив
MAIN_HARDCODE_PRIMARY_HOSTNAME = subdomain.example.com
в /etc/exim4/conf.d/main/00_local_settings
. Кажется, это будет PRIMARY_HOST_NAME
в монолитной конфигурации exim4.