![Исправлено некорректное поле Message-ID в Exim ACL](https://rvso.com/image/760607/%D0%98%D1%81%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%BE%20%D0%BD%D0%B5%D0%BA%D0%BE%D1%80%D1%80%D0%B5%D0%BA%D1%82%D0%BD%D0%BE%D0%B5%20%D0%BF%D0%BE%D0%BB%D0%B5%20Message-ID%20%D0%B2%20Exim%20ACL.png)
Как ни странно, некоторые внешние отправители моего почтового домена раньше отправляли нам сообщения, в которых поле Message-ID устанавливалось $Null
следующим образом:
...
Date: Tue, 1 Dec 2020 07:16:22 +0000
Message-ID: $Null
Subject: Test
...
(похоже, это связано с настройкой Exchange + Outlook, используемой в их компании, но более подробной информации найти не удалось).
Это было небольшой проблемой до недавнего времени, так как Apple обновила почтовый клиент iOS, а последнее приложение Mail в iOS испортило все списки сообщений при попытке проанализировать такое сообщение.
Исправление, которое я пытаюсь реализовать, простое: я пытаюсь добавить это действие в Exim acl_check_data
:
warn
condition = ${if eq{$h_message-id:}{\$Null}}
remove_header = message-id : message_id : Message-ID : Message_ID
Я перепробовал много способов сослаться на строку заголовка Message-ID, но даже это условие приводит к true
действию «удалить заголовок», которое не удаляет строку заголовка Message-ID.
Так что, пожалуйста, дайте совет,как удалить или (лучше) заменить сломанную строку заголовка Message-ID на какое-то правильное значение?
решение1
Извините, я не знаком с Exim, однако я нашел документацию о message-id в Exim для справки. Проверьте, пожалуйста, может она вам поможет:Обработка сообщений( The Message-ID: header line
)
Вы развернули сервер Exchange для своих учетных записей? Если да, то вы можете создать транспортное правило для изменения message-id в заголовке сообщения в соответствии с условиями: