Killfile почтовых вложений - как внести в черный список вложений подписи по имени файла - PullRequest
0 голосов
/ 16 июня 2011

Как лучше всего внедрить минимальную серверную систему фильтрации почты, которая делает одну вещь: удаляет подписные вложения по имени.

В каждом письме некоторых коллег есть встроенные встроенные «signature.gif» или «signature-nn.gif» (где nn увеличивается до тех пор, пока их почтовый клиент не будет перезапущен). Необходимость идентифицировать письма с (значимыми) вложениями затруднена тем фактом, что все их электронные письма имеют (бессмысленные) вложения.

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

Mailserver - это Exim на Debian Linux, поэтому серверные почтовые фильтры, такие как procmail, вполне подойдут. На клиентской стороне у нас есть множество почтовых приложений, поэтому клиентское решение не такое подходящее.

Как это можно сделать с помощью Exim + Procmail (или эквивалент?)

1 Ответ

1 голос
/ 07 августа 2011

Без доступа к образцам сообщений это будет немного умозрительно, но, возможно, что-то вроде этого:

blacklist='signature|logo'  # maintaining in an external file left as an exercise

:0B
* $ ^Content-disposition: attachment; filename="$blacklist(-[0-9][0-9])?\.gif"
idiotbox

Главное, чтобы условие уникального соответствия только этим сообщениям было необходимо.Надеюсь, этого будет достаточно, чтобы вы начали.Это пытается посмотреть на строку заголовка MIME в теле сообщения - если этого нет, или если она выглядит немного иначе, чем у меня здесь (из памяти), вам нужно адаптировать регулярное выражение.

IIRC Страница man procmailex (5) содержит пример того, как хранить вещи во внешнем файле.

...