Различия
Здесь показаны различия между двумя версиями данной страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
| wiki:fetchmail [2017/01/16 19:20] Добавлен раздел "Использование fetchmail для получения почтовых вложений" | wiki:fetchmail [2017/01/31 00:09] (текущий) [Использование fetchmail для получения почтовых вложений] | ||
|---|---|---|---|
| Строка 16: | Строка 16: | ||
| <code bash>chmod 700 ~/.fetchmailrc</code> | <code bash>chmod 700 ~/.fetchmailrc</code> | ||
| - | В данном примере приведены настройки для работы с серверами по протоколам POP3 и IMAP, если у вас одна учетная запись почты, то выберете свой вариант, вместо <user_name> введите имя контакта, а вместо свой ''*******'' пароль. Параметр ''skip'' перед именем сервера указывает, что почту нужно проверять только по принудительному запросу. При таком конфигурационном файле обращение к почтовому серверу происходит с явным указанием: | + | В данном примере приведены настройки для работы с серверами по протоколам POP3 и IMAP, если у вас одна учетная запись почты, то выберете свой вариант, вместо <user_name> введите имя контакта, а вместо звездочек - свой пароль. Параметр ''skip'' перед именем сервера указывает, что почту нужно проверять только по принудительному запросу. При таком конфигурационном файле обращение к почтовому серверу происходит с явным указанием: | 
| <code bash>fetchmail [параметры] pop.mail.ru</code> | <code bash>fetchmail [параметры] pop.mail.ru</code> | ||
| ======Использование====== | ======Использование====== | ||
| Строка 84: | Строка 84: | ||
| ======Использование fetchmail для получения почтовых вложений====== | ======Использование fetchmail для получения почтовых вложений====== | ||
| - | Данный раздел описывает подобный сценарий работы: у вас есть сервер, принимающий почту, в письмах встречаются вложения, которые нужно сохранять отдельно (к примеру, вложенные в письма торрент-файлы, которые сразу ставятся на закачку). | + | <note important>Внимание: вместо параметров user, username, password и т.д. вы должны подставить свои значения</note> | 
| - | ======Ссылки===== | + | Данный раздел описывает следующий сценарий работы: у вас есть сервер, принимающий почту, в письмах встречаются вложения, которые нужно сохранять отдельно (к примеру, вложенные в письма торрент-файлы, которые сразу ставятся на закачку при сохранении их в определенный каталог). | 
| - | [[http://forum.ubuntu.ru/index.php?topic=191678.0|Тема]] с обсуждением данной статьи. | + | |
| + | Функционала "голого" fetchmail здесь не хватит, дополнительно установим криптографический пакет **openssl**, почтовый фильтр **procmail** и утилиту для сохранения вложений **uudeview**: | ||
| + | |||
| + | <code bash>sudo apt install openssl procmail uudeview</code> | ||
| + | |||
| + | Настройка описывается на примере gmail (сразу рекомендую в дебрях Гугла [[https://www.google.com/settings/security/lesssecureapps | разрешить непроверенным приложениям получать доступ к вашему почтовому ящику]], иначе не оберетесь проблем). Почтовый ящик я для указанной выше цели использую отдельный, все подряд на него не сыплется, поэтому фильтрацию вложений в этом гайде я не описываю. | ||
| + | |||
| + | Приводим конфигурационный файл ''~/.fetchmailrc'' к следующему виду: | ||
| + | |||
| + | <code bash> | ||
| + | set daemon 60 #интервал в секундах проверки почты демоном | ||
| + | |||
| + | poll imap.gmail.com | ||
| + | with nodns, | ||
| + | with protocol IMAP | ||
| + | user "user@gmail.com" there is "user" here,#строка "there is "user" here" позволяет соотнести логин почты с вашим пользователем Ubuntu по имени user; эта строка необязательна | ||
| + | with password PaSSWorD, | ||
| + | keep,#письма остаются на сервере после прочтения | ||
| + | with ssl, sslcertck;#при таких настройках сертификат не нужно перекачивать и хешировать вручную | ||
| + | mda 'procmail -d %T' | ||
| + | set syslog set logfile fetchmail/logs/fetchmail.log | ||
| + | </code> | ||
| + | |||
| + | Не забываем про права 600 (без них fetchmail не будет работать с конфигом - небезопасно же, пароль открыт всем - и выругается): | ||
| + | <code bash> | ||
| + | chmod 600 ~/.fetchmailrc | ||
| + | </code> | ||
| + | |||
| + | Создаем нужные нам каталоги для работы fetchmail: | ||
| + | |||
| + | <code bash>mkdir -p ~/fetchmail/logs/ ~/fetchmail/backup/ ~/fetchmail/attachments/</code> | ||
| + | |||
| + | По пути ''~/fetchmail/logs/fetchmail.log'' нам будет доступен лог работы fetchmail, что мне, к примеру, упростило поиск ошибок в настройках (гайды из интернета как всегда не работают, возможно, у вас не заработает именно этот гайд8-)). Лог нужно создать вручную: | ||
| + | <code bash> | ||
| + | > ~/fetchmail/logs/fetchmail.log | ||
| + | </code> | ||
| + | |||
| + | Создаем конфигурационный файл ''~/.procmailrc'' со следующим содержимым (учтите, что права на вашу директорию $HOME для работы procmail должны быть не более, чем 744, как и права на сам .procmailrc - без этого procmail будет заявлять, что конфиг подозрителен): | ||
| + | <code bash> | ||
| + | :0 | ||
| + | *^content-Type: | ||
| + | { | ||
| + | # сделаем копию принятого письма | ||
| + | :0c: | ||
| + | $HOME/fetchmail/backup | ||
| + | |||
| + | #здесь будут распакованы все файлы из письма и сложены в нужный нам каталог | ||
| + | #для этого сделаем форвард в uudeview, который распакует вложения в $HOME/fetchmail/attachments | ||
| + | #опция -a создает нумерованные копии файлов, если файлы с таким именем уже обнаружены | ||
| + | :0f | ||
| + | | uudeview -i +a +o -p $HOME/fetchmail/attachments - | ||
| + | } | ||
| + | </code> | ||
| + | |||
| + | Теперь остается добавить fetchmail в [[wiki:cron|cron]] для автозагрузки. В файле ''~/fetchmail/fetchmail.cron'' сохраняем следующее содержимое: | ||
| + | <code bash> | ||
| + | PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin | ||
| + | @reboot fetchmail | ||
| + | </code> | ||
| + | Добавляем информацию в планировщик: | ||
| + | <code bash> | ||
| + | crontab ~/fetchmail/fetchmail.cron | ||
| + | </code> | ||
| + | И запускаем клиент: | ||
| + | <code bash> | ||
| + | fetchmail | ||
| + | </code> | ||
| + | Если что-то не сработает - в первую очередь смотрите лог fetchmail, затем гуглите. | ||
| + | ======Ссылки====== | ||
| + | [[http://forum.ubuntu.ru/index.php?topic=191678.0|Тема]] с обсуждением данной статьи | ||
| + | |||
| + | [[http://youngblog.hoster-ok.com/ispolzuem-fetchmail-dlya-avtomatizatsii-razbora-pochty/ | Основная статья по настройке сохранения вложений]] | ||
| + | |||
| + | [[https://www.opennet.ru/base/net/fetchmail_setup.txt.html|Fetchmail на Opennet]] | ||
| ---- | ---- | ||
| {{tag>программы почта проверка консоль уведомление notify-osd}} | {{tag>программы почта проверка консоль уведомление notify-osd}} | ||
 
			 
	