The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Настройка клиентской почтовой системы в Linux (mail linux procmail mutt fetchmail)


<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>
Ключевые слова: mail, linux, procmail, mutt, fetchmail,  (найти похожие документы)
From: Дмитрий А. Аленичев <zlyden@nightmail.ru.> Newsgroups: email Date: Mon, 2 Dec 2004 14:31:37 +0000 (UTC) Subject: Настройка клиентской почтовой системы в Linux Оригинал: http://zlyden.nightmail.ru/docs/linuxmail.html Настройка почтовой системы в Linux Copyright © 2004 Dmitri A. Alenitchev История: Версия 1.0 30 Ноября 2004 Первая версия. Работа с почтой: fetchmail, procmail, mutt, abook. FAQ. Содержание Введение 1. Получение почты 2. Обработка почты 3. Просмотр и написание почты 4. Адресная книга Заключение. Пара слов об отправке почты FAQ. Часто задаваемые вопросы (ЧаВО) Дополнительные источники информации Введение Настроить Линукс для работы с почтой совсем не сложно. Нужно лишь написать конфигурационные файлы для нескольких ключевых узкоспециализированных программ, на которых и будет основана наша удобная и многофункциональная система работы с электронной почтой. Фактически эта статья описывает все основные аспекты работы с почтой в Linux. В качестве программ для работы с почтой я выбрал: * fetchmail - Прост в настройке. Все необходимые функции. * procmail - Неограниченные возможности по обработке почты! * mutt - Лучший консольный MUA (Mail User Agent). * abook - Очень удобная консольная адресная книга. * sendmail - Из комплекта ASPLinux. Ничего настраивать не нужно. Все эти программы поставляются с любым современным дистрибутивом Linux. Получение почты (fetchmail) В нашей почтовой системе fetchmail будет отвечать за прием почты. Итак, создаем файл /home/user_name/.fetchmailrc: $ touch /home/user_name/.fetchmailrc Изменяем права доступа, т.к. в этом файле будут храниться наши пароли от почты: $ chmod 0600 /home/user_name/.fetchmailrc Теперь открываем его своим любимым редактором и пишем: # .fetchmailrc - конфиг для fetchmail # записывать лог-файл set syslog # единые настройки для всех учетных записей defaults protocol pop3, timeout 60, nokeep, # удалять почту на сервере после получения fetchall # получать всю почту # можно настроить дополнительные параметры # # Учетная запись 1 poll "pop.mailhost.ru", user "username", password "pass"; # # Учетная запись 2 poll "mail.freemail.ru", user "username", password "pass"; Таймаут указывается в секундах, то есть, в данном случае, 1 минута. Таким же образом укажите в конфиге все свои почтовые ящики. Получение почты мы настроили. Теперь дело за обработкой. Обработка почты (procmail) Procmail будет раскладывать нашу корреспонденцию по отдельным почтовым файлам. Создаем конфиг (.procmailrc) и лог (procmail.log): $ touch /home/user_name/.procmailrc $ touch /home/user_name/Mail/procmail.log Открываем конфиг и пишем: # .procmailrc - конфиг для procmail # Переменные # MAILDIR=/home/user_name/Mail # каталог с почтой LOGFILE=/home/user_name/Mail/procmail.log # лог для записи всех операций DEFAULT=/home/user_name/Mail/mbox # файл для не отсортированных сообщений # # Правила сортировки почты # # Пример: сортировка почты, приходящей на e-mail user_name@host.ru :0 * ^To.*user_name@host.ru # условие (To: user_name@host.ru) host_mail # файл host_mail в каталоге MAILDIR # # Пример: mailing-list Moscow LUG :0 * ^To.*mlug@UnixCenter.RU # условие (To: mlug@UnixCenter.RU) mlug # файл mlug в каталоге MAILDIR # # Пример: сортировка от адресатов из friends.org :0 * ^From.*@friends.org # условие (From: *@friends.org) fromfriends # файл fromfriends в каталоге MAILDIR # # Пример: удаление писем от адресата spammer@microsoft.com :0 * ^From.*spammer@microsoft.com # условие (From: spammer@microsoft.com) /dev/null # каталог /dev/null # # Пример: автоматическая отсылка PGP-ключа 0: * ^Subject.*PGP # условие (Subject: PGP) | (formail -r ; cat /home/user_name/key.asc) # вывести PGP-ключ | sendmail -t # отправить его Я надеюсь вы поняли, что procmail это очень мощная программа сортировки электронной почты. Для нее можно писать правила практически неограниченной сложности. Все ваши рассылки и другая корреспонденция будут аккуратно разложены по отдельным файлам. Просмотр и написание почты (mutt) В качестве MUA, как я уже писал, у нас будет работать mutt. Это консольная, очень удобная и простая в использовании, программа для чтения и написания писем. Попробую коротко описать как ее настраивать и использовать. Создаем файл /home/user_name/.muttrc: $ touch /home/user_name/.muttrc Открываем и пишем: set folder=/home/user_name/Mail # каталог для почты set arrow_cursor # курсор в виде '->' set attribution="%d, %n написал:" # начало письма при ответе set charset="koi8-r" # кодировка терминала set copy=yes # сохранять копии исходящих писем set edit_headers # редактировать заголовки при создании письма set editor="vim" # редактор писем set folder_format="%t%N %-30.30f %8s" # вид списка папок set index_format="%4C %Z %{%b %d} %-31.31F %N (%4c) %s" # вид списков писем set mailcap_path="/home/user_name/.mailcap" # путь к .mailcap set menu_scroll # прокручивать список писем по 1 строке set mail_check=5 # интервал проверки почты set mbox=+mbox # файл для хранения прочитанных сообщений set mime_forward=ask-no # запрашивать вид пересылаемого письма set postponed=+drafts # черновики set print=ask-yes # запрос перед печатью файла set print_command=lpr # команда печати set record=+sent # куда сохранять отправленные письма set signature="~/.signature" # файл с подписью к сообщениям set show_alt # y/n вместо д/н set pager_stop # в конце письма не переходить на следующее set send_charset="us-ascii:iso-8859-1:koi8-r:windows-1251:utf-8" # кодировка отправляемых писем # # сортировка писем при просмотре set sort=threads set sort_aux=reverse-date-received set sort_browser=reverse-date # set spoolfile='/var/spool/mail/user_name' # путь к спулу почты # set from="Your Name <user_name@host.domain.>" # поле From заголовка отправляемых писем # # файлы c почтой mailboxes 'echo /home/user_name/Mail/*' # # если вы подписаны на mailing-list'ы укажите здесь адреса subscribe zopyrus@itconnection.ru В каталоге /etc находится файл Muttrc. Он может послужить вам хорошим примером конфигурационного файла для mutt. Создайте файлы /home/user_name/.mailcap и /home/user_name/.signature: $ touch /home/user_name/.mailcap $ touch /home/user_name/.signature Файл .mailcap нам необходим для обработки MIME-типов. Приведу небольшой пример, чтобы продемонстрировать структуру этого файла: text/html; links %s image/gif; xview %s image/jpg; xview %s Думаю, что типы, которые вам хотелось бы обрабатывать вы без труда добавите сами. В файле .signature укажите свою подпись. Пример я думаю приводить не надо ;-) Итак, настройка окончена, запускаем: $ mutt Перед собой мы видим список писем из спула (/var/spool/mail/user_name). Нажатием клавишы '?' открываем справку. Смотрим список клавиш, на которые нам придется нажать не один раз в процессе ежедневной работы с этой программой. Выход из справки - 'q'. Чтобы открыть какой-нибудь почтовый файл следует нажать 'c'. Внизу экрана мы видим предложение ввести имя файла. Нажимайте 'Tab' или '?' и откроется окно выбора файла. Выбираем какой-нибудь файл и видим список почтовых сообщений. Клавишы 'Вверх', 'Вниз' - перемещение по списку писем; 'Enter' - чтение письма; 'Page Up', 'Page Down' - страничная прокрутка письма. Об остальных клавишах вы без труда найдете нужную информацию во встроенной справке. Адресная книга (abook) Итак, наша система уже позволяет получать, сортировать и создавать письма. Теперь пора позаботиться об удобстве написания писем. Запускаем abook: $ abook Разобраться в интерфейсе этой программы не составит труда. Приведу пример добавления записи. Нажимаем клавишу 'a', вводим имя. Открывается окно просмотра и редактирования записи. Клавишы '2','3','4','5' служат для добавления к записи e-mail адресов. Клавишами 'Влево','Вправо' перемещаемся между разделами 'CONTACT', 'ADDRESS', 'PHONE', 'OTHER'. Окончив редактирование записи нажатием клавишы 'Enter' возвращаемся к списку записей. Для написания письма выбранному адресату предназначена клавиша 'm'. Если вы хотите написать письмо на несколько адресов сразу, то выделите нужные записи нажатием пробела и нажмите 'm'. В abook, также как и в mutt, имеется встроенная справка - '?' Записи вашей адресной книги хранятся в файле .abook.addressbook, а настройки программы - в .abookrc. Кстати, рекомендую поменять строку 'www_command=lynx' на 'www_command=links', так как links все-таки более удобный браузер, чем lynx. Заключение. Пара слов об отправке почты Мы настроили систему для работы с почтой. Не правда ли, это было совсем не сложно? Для отправки почты я рекомендую использовать локальный smtp-сервер. Это может быть любой из популярных продуктов: sendmail, qmail, postfix и другие. Обычно в составе дистрибутива имеется какая-нибудь из перечисленных выше программ, причем с настройками по умолчанию, то есть сразу после установки, их можно использовать по назначению. Именно по-этому я не стал уделять внимание настройке сервера отправки почты в своей статье. FAQ. Часто задаваемые вопросы (ЧаВО) В: Как проверять почту при каждом подключении к Интернет? Скрипты, находящиеся в паке /etc/ppp/ip-up.d/ выполняются каждый раз при подключении к Интернет. Кидайте в /etc/ppp/ip-up.d/ скрипт следующего содержания: #!/bin/sh FETCHMAIL=/usr/bin/fetchmail [ ! -x "$FETCHMAIL" ] || exec "$FETCHMAIL" > /dev/null 2>&1 В: Как отправлять отложенную почту при каждом подключении к Интернет? В ту же папку (/etc/ppp/ip-up.d/) кладете скрипт: #!/bin/sh SENDMAIL=/usr/sbin/sendmail [ ! -x "$SENDMAIL" ] || exec "$SENDMAIL" -q >/dev/null 2>&1 Данный скрипт можно совместить в одном файле с предыдущим В: Как автоматически декодировать почту закодированную uuencode Что-то типа этого: :0 B * ^begin 644 .* { MAILDIR=$HOME/files :0 | uudecode } Добавьте это правило к вашему .procmailrc Дополнительные источники информации Прочитайте документацию для каждой программы (/usr/share/doc/), а также посмотрите man page.

<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>

Обсуждение [ RSS ]
  • 1, sda00 (??), 16:10, 09/04/2007 [ответить]  
  • +/
    http://www.rootshell.be/~sda00/mutt.html
    в принципе - то же самое, но есть "ньюансы"...
    пинайте...
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру