Всё в одном: настраиваем fetchmail

()

Большинство администраторов хоть раз в жизни устанавливало почтовый сервер. Возможно даже кто-то это делал по одному из руководств с этого сайта.

Но иногда возникает необходимость отдельным пользователям забирать почту с нескольких ящиков. Конечно это можно сделать и средствами почтового клиента, однако гораздо интереснее делать это на стороне сервера. Удобство от этого особенно ощущается при использовании веб-интерфейса. Всё почта находится в одном месте и доступна в несколько щелчков мыши из любой точки мира.

Для организации подобного сервиса удобно использовать fetchmail. Далее будет показано как установить и настроить fetchmail на почтовом сервере под управлением Ubuntu 7.10 Server.

Собственно установка сводится к выполнению команды:

apt-get install fetchmail

Переходим к настройке. Первым делом в файле /etc/default/fetchmail нужно заменить строку:

START_DAEMON=no

на

START_DAEMON=yes

Далее компируем "умолчальный" конфиг в /etc/fetchmailrc:

cp /usr/share/doc/fetchmail/examples/fetchmailrc.example /etc/fetchmailrc

Открываем его в редакторе и первым делом снимаем комментарий и правим в соответствии со своими желаниями строчку:

set daemon     300

Эта строка задаёт интервал, с которым нужно проверять почту. Всё остальное можно оставить по умолчанию. Далее добавляем в конец файла строки вида:

poll СЕРВЕР protocol ПРОТОКОЛ user ЛОГИН password ПАРОЛЬ to ЛОГИН_НА_ЛОКАЛЬНОМ_СЕРВЕРЕ here

У автора этой заметки добавлено две строки (логины и пароли изменены по понятным причинам):

poll pop.newmail.ru protocol pop3 user login1@nm.ru password 1password1 to moose here
poll pop.mail.ru protocol pop3 user login2 password 2password2 to moose here

Подробное описание доступных параметров и их значений можно найти в man-странице fetchmail.

Добавив все строки, которые необходимо можно запустить сервис fetchmail:

/etc/init.d/fetchmail start

Важно: поскольку пароли хранятся открытом текстом, рекомендуется поменять права на /etc/fetchmailrc следующим образом:

chmod 600 /etc/fetchmailrc

На этом всё. Автор надеется, но не гарантирует, что эта заметка будет интересна и полезна читателю.

Ссылки:

Ключевые слова: fetchmail, fetchmailrc.

Комментарии:

Alex 2008-03-24 14:25:46 (#)

Я не уловил, а куда полученная почта будет складываться?

MooSE 2008-03-24 16:13:13 (#)

она передаётся smtp-севреру: 127.0.0.1:25. В качестве получателя указывается (в моём случае) "moose".

Alex 2008-03-25 22:58:43 (#)

В чем преимущества такой схемы, в отличие от схемы пересылания писем сразу локальному smtp серверу? Или предполагается, что он не смотрит наружу?

MooSE 2008-03-26 05:22:24 (#)

1. Мы можем устроить внутренний почтовый сервер, который будет забирать почту снаружи.

2. Не на всех почтовых серверах можно настроить пересылку. Но вот почту оттуда забирать можно всегда.

oermolaev 2011-02-13 09:49:40 (#)

1. Подскажите, можно ли с помощью fetchmail забирать не всю почту, а по какому то фильтру (например Subject: или To:)?
2. Или как по другому разложить почту с внешнего общего ящика по ящикам пользователей почтового сервера?

MooSE 2011-02-14 01:17:13 (#)

Цитата:

1. Подскажите, можно ли с помощью fetchmail забирать не всю почту, а по какому то фильтру (например Subject: или To:)?
2. Или как по другому разложить почту с внешнего общего ящика по ящикам пользователей почтового сервера?


Никогда не озадачивался. Либо читать man-страницу, либо гуглить в сторону procmail.

oermolaev 2011-02-14 08:42:04 (#)

Спасибо. Временно решил проблему локально с помощью фильтров Thunderbird

Anonymous 2011-12-30 07:16:19 (#)

А через imap можно сделать что синхронизить внутренний почтовый сервер с внешним? Я попробовал, мне в логах только написал сколько писем лежит и просмотрено и все.
Как мне лучше сделать чтобы с сервера yandex перелить всю почту на свой сервер, чтобы в дальнейшем переключить домен с yandexа на мой.

MooSE 2011-12-31 02:04:49 (#)

Цитата:

А через imap можно сделать что синхронизить внутренний почтовый сервер с внешним? Я попробовал, мне в логах только написал сколько писем лежит и просмотрено и все.
Как мне лучше сделать чтобы с сервера yandex перелить всю почту на свой сервер, чтобы в дальнейшем переключить домен с yandexа на мой.


А много почтовых ящиков? Может получится почтовым клиентом сделать дамп в виде Maildir или Mailbox и положить на свой сервер?
Новый комментарий



© 2006-2016 Вадим Калинников aka MooSE