Чтение онлайн

на главную - закладки

Жанры

Сетевые средства Linux

Смит Родерик В.

Шрифт:

:0:

* То: . *list@mailinglist\ .example\ .com

$MAILDIR/mailinglist

Листинг 19.3 иллюстрирует некоторые важные особенности рецептов Procmail.

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

postmaster
. (Это достигается посредством оператора отрицания, указанного в условиях включающего рецепта.) Аналогичный результат можно получить, включив условие
*! \ То: .*postmaster
в состав
каждого из фильтров, предназначенных для блокирования спама. В данном простом примере это может несколько сократить объем конфигурационного файла. В более сложных фильтрах при использовании вложенных рецептов объем файла уменьшается. Кроме того, применение вложенных фильтров уменьшает вероятность ошибки, так как некоторые условия при этом указываются однократно.

• Регулярные выражения. В листинге 19.3 содержатся три рецепта, предназначенные для фильтрации рекламных сообщений. Первый из них проверяет тело сообщения (на это указывает флаг

В
) на наличие строки, содержащей последовательности
301, S
и
1618
. Этот рецепт предназначен для перехвата писем, содержащих указание на раздел
301
и номер
S.1618
, которые часто используются спамерами для создания иллюзии официального сообщения. Второй из рецептов, предназначенных для фильтрации спама, блокирует все письма из домена
badspammer.net
, а третий фильтр блокирует сообщения, содержащие в поле
Subject:
последовательность
$$$
. Обратите внимание на использование обратной косой черты для отмены специального значения символов. Все три рассматриваемых здесь рецепта направляют сообщения в файл
/dev/null
, т.е. удаляют их. После копирования в файл
/dev/null
письма уже не могут быть восстановлены. Файл блокировки для этих рецептов не требуется, так как сообщения не сохраняются ни в одной папке.

• Копирование сообщений. Вместо того чтобы записывать сообщение в файл, второй рецепт, приведенный в рассматриваемом примере, передает его другому пользователю. На это указывают флаг

с
и восклицательный знак в начале описания действия. Сообщение должно удовлетворять двум критериям: отправителем его должен быть пользователь
david@pangaea.edu
, и оно должно содержать слово
rug
в поле заголовка
Subject:
. Если хотя бы одно из условий не выполняется, сообщение не копируется.

• Сортировка сообщений. Последний рецепт распределяет сообщения по папкам. Письма, адресованные

list@mailinglist.example.com
, помещаются в отдельную папку, расположенную в подкаталоге рабочего каталога пользователя, предназначенного для работы с почтой. Во многих списках рассылки поле заголовка сообщения используется для идентификации самого списка, а информация о получателе сообщения включается в поле
То:
заголовка конверта. Для того чтобы выбрать наиболее удобный способ распределения писем по папкам, вам следует выяснить, какие данные содержатся в заголовках писем, распространяемых посредством списков рассылки.

Рецепты, приведенные в листинге 19.3, предельно просты, и их вряд ли можно использовать для решения конкретных задач, однако на их основе вы можете создать реальные рецепты. Кроме того, при необходимости вы можете внести изменения в фильтры, полученные из других источников.

Использование существующих наборов фильтров

Создание фильтров Procmail — достаточно сложная задача, отнимающая много сил и времени.

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

• SpamBouncer. Этот пакет представляет собой набор фильтров Procmail, предназначенных для блокирования спама. Фильтры, входящие в состав SpamBouncer, достаточно сложны, но при необходимости вы можете адаптировать некоторые из них для решения собственных задач. Подробно эти фильтры описаны в документации, поставляемой в составе пакета. Чтобы скопировать SpamBouncer, надо обратиться на его Web-страницу, расположенную по адресу

http://www.spambouncer.org
.

• SmartList. Этот пакет, реализующий список рассылки, создан на основе Procmail. Дополнительную информацию о нем вы можете получить из документа SmartList FAQ, доступного по адресу

http://www.hartzler.net/smartlist/SmartList-FAQ.html
.

• Советы и рецепты Тимо. Тимо Салми (Timo Salmi) поддерживает Web-страницу (

http://www.uwasa.fi/~ts/info/proctips.html
), посредством которой он распространяет информацию о простых рецептах Procmail. Информацию, представленную на этой странице, нельзя рассматривать как готовый к использованию пакет, такой как SpamBouncer или SmartList, однако вы можете найти на ней "заготовки" для своих фильтров.

• Примеры рецептов Procmail с комментариями. Web-узел

http://handsonhowto.com/pmail102.html
содержит примеры рецептов Procmail, снабженные комментариями, которые поясняют их работу.

Дополнительную информацию о фильтрах и рецептах, пригодных для использования, вы получите, выполнив в Internet поиск по ключевым словам

Procmail recipes
. Многие полезные ссылки можно найти на Web-узле Procmail по адресу
http://www.procmail.org
.

Простые наборы фильтров можно разместить в рабочем каталоге пользователя в файле

.procmailrc
. Если фильтр должен воздействовать на систему в целом, его надо включить в файл
/etc/procmailrc
. Некоторые пакеты, например SpamBouncer, содержат специальные файлы, поэтому при инсталляции необходимо следить, чтобы они были установлены корректно.

Внимание

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

Совет

Как системный администратор, вы можете позволить себе роскошь создать специальную учетную запись для тестирования. Такую запись удобно использовать для проверки фильтров Procmail. Пробные сообщения можно передавать, изменив настройку программы подготовки писем и даже непосредственно взаимодействуя с сервером SMTP посредством программы

telnet
(для этого надо при установлении соединения указать порт 25).

Запуск Procmail

При обсуждении принципов фильтрации предполагалось, что программа Procmail уже запущена и обрабатывает поступающие сообщения. В большинстве версий Linux почтовые серверы уже сконфигурированы для использования Procmail при доставке почты. Действия, необходимые для настройки серверов, описаны ниже.

• 

sendmail
. Чтобы настроить сервер для использования Procmail, необходимо включить в конфигурационный файл m4 три записи. Первая из них,

Поделиться:
Популярные книги

ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание

Троелсен Эндрю
Компьютеры и Интернет:
программирование
5.00
рейтинг книги
ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание

Ледовый апокалипсис

Ладлэм Роберт
7. Прикрытие-Один
Детективы:
триллеры
5.00
рейтинг книги
Ледовый апокалипсис

Я уже князь. Книга XIX

Дрейк Сириус
19. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.50
рейтинг книги
Я уже князь. Книга XIX

Цикл "Идеальный мир для Лекаря". Компиляция. Книги 1-30

Сапфир Олег
Лекарь
Фантастика:
боевая фантастика
юмористическое фэнтези
аниме
фэнтези
5.00
рейтинг книги
Цикл Идеальный мир для Лекаря. Компиляция. Книги 1-30

Звездный свет (сборник)

Клемент Хол
Классика мировой фантастики
Фантастика:
научная фантастика
6.25
рейтинг книги
Звездный свет (сборник)

Я бог. Книга XXXIX

Дрейк Сириус
39. Дорогой барон!
Фантастика:
юмористическое фэнтези
аниме
попаданцы
5.00
рейтинг книги
Я бог. Книга XXXIX

Архимаг. Пробуждение. Трилогия

Рудазов Александр
56. В одном томе
Фантастика:
научная фантастика
9.32
рейтинг книги
Архимаг. Пробуждение. Трилогия

Дырка для ордена; Билет на ладью Харона; Бремя живых

Звягинцев Василий
Фантастика:
альтернативная история
фэнтези
8.12
рейтинг книги
Дырка для ордена; Билет на ладью Харона; Бремя живых

Заговор «Аквитания»

Ладлэм Роберт
Детективы:
политические детективы
5.00
рейтинг книги
Заговор «Аквитания»

Окопники

Коллектив авторов
Проза:
военная проза
5.00
рейтинг книги
Окопники

В лапах зверя

Зайцева Мария
1. Звериные повадки Симоновых
Любовные романы:
остросюжетные любовные романы
эро литература
5.00
рейтинг книги
В лапах зверя

Генерал Корнилов

Кузьмин Николай Павлович
Документальная литература:
биографии и мемуары
6.25
рейтинг книги
Генерал Корнилов

Животворящая сила

Сытин Георгий Николаевич
Научно-образовательная:
психология
медицина
7.00
рейтинг книги
Животворящая сила

Долина лошадей

Ауэл Джин Мари Антинен
2. Дети Земли
Приключения:
исторические приключения
8.15
рейтинг книги
Долина лошадей