База знаний по Open Source
Авторизация
Поиск по базе знаний

fetchmail [опция…] [сервер…]

Установка в Ubuntu

sudo apt-get install fetchmail

Описание

Fetchmail – это надежная, бесплатная, полнофункциональная и хорошо документированная программа для удаленного получения и переадресации почты, предназначенная для использования с соединениями TCP/IP «по требованию» (например, по протоколам SLIP или PPP). Программа поддерживает все почтовые протоколы, используемые в настоящее время в Интернете: POP2, POP3, RPOP, APOP, KPOP, все разновидности IMAP, ESMTP ETRN. Fetchmail поддерживает также протоколы IPv6 и IPSEC. Утилита fetchmail может быть запущена в режиме демона для регулярной проверки и приема почты с одного или нескольких серверов.

Каждое сообщение, принятое fetchmail, затем обычно пересылается по SMTP на порт 25 локальной машины, на которой он запущен (localhost), как будто это сообщение было принято по обычному каналу TCP/IP. Затем почта доставляется локально системным транспортным агентом (MDA – Mail Delivery Agent – smail, mmdf, exim, postfix, qmail). Все механизмы управления доставкой обрабатываются системным MDA, и после этого срабатывают агенты локальной доставки почты.

fetchmail управляется опциями командной строки и кофигурационными файлами – /etc/fetchmailrc и/или ~/.fetchmailrc, синтаксис которого будет рассмотрен ниже (именно этот файл редактирует программа fetchmailconf). Опции командной строки имеют более высокий приоритет над опциями в ~/.fetchmailrc.При запуске fetchmail запрашивается каждый сервер, указанный в командной строке. Если сервера в командной строке не указаны, их имена берутся из файла ~/.fetchmailrc.

Для облегчения использования fetchmail в скриптах и потоках, он возвращает код завершения.

Большинство опций имеют соответствующее ключевое слово, используемое в файле fetchmailrc и управлять работой fetchmail всё-таки лучше через файл конфигурации. Поэтому здесь приводятся только основные параметры командной строки:

 

-V, –version
Вывод информации о вашей текущей копии fetchmail. Прием почты не производится. Вместо этого для каждого из указанных серверов выводятся все опции. Непечатные символы в паролях и прочих строках выводятся в С-стиле как ESC-последовательности,с обратной чертой. Эта опция полезна для проверки правильности ваших настроек.
-c, –check
Возвращает код состояния, оповещающего о наличии почты. Прием почты не производится (см. Коды возврата). Эта опция выключает режим демона. Она не очень хорошо работает с запросами нескольких серверов и не работает с ETRN или ODMR. Она возвращает ложный положительный ответ, если осталась прочтенная, но не удаленная почта в почтовом ящике на сервере, а ваш почтовый протокол не различает новые и прочитанные сообщения. Это значит, что эта опция будет работать с протоколом IMAP, не будет с POP2 и может сбоить на протоколе POP3.
-s, –silent
Тихий режим. Подавляет весь вывод сообщений о процессе/состоянии, которые обычно выводятся на stderr во время приема почты (это не влияет на сообщения об ошибках). Опция –verbose переопределяет этот режим.
-v, –verbose
Информативный режим. Все управляющие сообщения, проходящие между fetchmail и почтовым сервером, дублируются на stdout. Двойная опция (-v -v) увеличивает объем выдаваемой диагностики.

В основном fetchmail запускается в режиме демона и всё управление его работой ведется через конфигурационный файл fetchmailrc.

Несколько примеров:

set daemon 60
poll mail.example.com protocol pop3: username "admin" password "dir3cti0n" is "squire" here; username "fore" password "0rd3r" is "foreman" here; 
poll mail.example.org protocol protocol imap: user "betty" password "p1nk" mda "/usr/bin/procmail -d %T"

В первом fetchmail будет забирать почту с сервера mail.example.com для пользователей “admin” и “fore” и передавать её локальному mda по умолчанию для пользователей “squire” и ”foreman” соответственно.

Во втором случае fetchmail будет забирать почту с сервера mail.example.com для пользователя “betty” и передавать её для дальнейшей обработки mda procmail.

Первая строчка

set daemon 60

говорит, чтобы fetchmail опрашивал внешнюю почту раз в 60 секунд.
Остальные параметры можно посмотреть в man Linux.

 

Добавить комментарий