Linux: Полное руководство
Шрифт:
Рис. 14.5. Настройка Netscape Messenger
14.3. Агент доступа — fetchmail
Программа fetchmail используется для загрузки сообщений с сервера входящей почты в почтовый ящик пользователя. В домашнем каталоге того пользователя, от имени которого будет запускаться fetchmail, создайте файл
Provider.ru —
Запускать программу fetchmail можно как демон, а можно с помощью планировщика cron. В первом случае просто выполните команду:
При этом fetchmail будет проверять наличие новой почты через каждые 20 минут.
Во втором случае отредактируйте пользовательский crontab-файл и введите новое задание:
14.4. Автоматическая сортировка входящей почты — программа procmail
Лучше всего объяснять работу любой программы на практическом примере. Допустим, в вашей организации три отдела, и их адреса depl@firma.ru, dep2@firma.ru и dep3@firma.ru. У вас также есть пользователь mail, на имя которого будет приходить вся почта. Вам нужно сортировать приходящую почту по названию отдела: например, если в теле письма или в одном из его заголовков упоминается название отдела, отправить это сообщение одному из пользователей отдела. Кроме того, вы хотите, чтобы рассылка проекта LinuxRSP отправлялась вам по адресу adm@firma.ru.
Создайте в домашнем каталоге пользователя mail файл
Листинг 14.2. Файл .procmailrc — правила сортировки почты
Правила означают следующее: если в теме (заголовок Subject) присутствует название отдела, то сообщение будет отправлено нужному пользователю, который должен быть зарегистрирован в системе. Вместо имени пользователя можно указать адрес электронной почты.
Можно выполнить сортировку по любому другому полю. Например, последнее правило могло бы выглядеть так:
В
А теперь создадим почтовый автоответчик. Существуют два типа автоответчиков. Первые посылают автоответ только на определенные сообщения (например, отправляют клиенту прайс-лист вашей организации по его требованию), а вторые — на все (например, сообщают, что вы сейчас заняты, прочитаете письмо тогда-то). Автоответчик первого типа настраивается при помощи правила
А второй тип создается еще проще. Вы не определяете никаких условий, поэтому файл
Владельцем файла
Вызывать агент доставки procmail можно с помощью правил программы sendmail, но сейчас мы рассмотрим другой способ. В этом же каталоге ($HOME/mail) создайте файл
Используйте procmail с большой осторожностью, потому что если вы неправильно укажете условия сортировки, почта будет просто утеряна без возможности восстановления.
Строки файла конфигурации
Строки, начинающиеся с последовательности символов :0 или :0:, определяют правила, на основании которых procmail выполнит действие над сообщением. После символов :0 можно указать опции поиска и исполняемый файл, которому будет передано сообщение. Общий синтаксис такой:
Опция H (header) означает, что условие будет применяться к заголовку письма, а опция В — к телу. Опция D указывает программе различать нижний и верхний регистры символов. По умолчанию используется опция H, то есть условие применяется только к заголовку, а верхний и нижний регистры не различаются. Подробнее об опциях вы прочитаете на man-странице программы procmail.
Условие задается с помощью регулярных выражений. Каждое условие начинается символом * и записывается в отдельной строке. Регулярные выражения задаются как обычно, а именно:
♦ Символ ^ указывает на начало строки, а $ — на ее конец.
♦ Символ . обозначает любой символ, кроме CR (возврат каретки).
♦ Символы ? и * читаются как «ноль или более раз».
♦ Символ + — «один или более раз».
♦ Символ | обозначает логическую операцию ИЛИ : x|у — x ИЛИ у.