Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

Настройка почтовой системы в Linux

Copyright © 2004 Dmitri A. Alenitchev

История:

Версия Ноября 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. *****",

user "username",

password "pass";

#

# Учетная запись 2

poll "mail. *****",

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 # файл для не отсортированных сообщений

#

# Правила сортировки почты

#

# Пример: сортировка почты

:0

* ^To.******@***ru # условие (To: *****@***ru)

host_mail # файл host_mail в каталоге MAILDIR

#

# Пример: mailing-list Moscow LUG

:0

* ^To.******@***RU # условие (To: *****@***RU)

mlug # файл mlug в каталоге MAILDIR

#

# Пример: сортировка от адресатов из friends. org

:0

* ^From.*@friends. org # условие (From: *@friends. org)

fromfriends # файл fromfriends в каталоге MAILDIR

#

# Пример: удаление писем от адресата *****@***com

:0

* ^From.******@***com # условие (From: *****@***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 <*****@***domain.>"

# поле From заголовка отправляемых писем

#

# файлы c почтой

mailboxes 'echo /home/user_name/Mail/*'

#

# если вы подписаны на mailing-list'ы укажите здесь адреса

subscribe *****@***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.