Postfix — агент доставки электронной почты в Linux

Postfix является агентом доставки почты (Mail Transfer Agent, MTA), который используется по умолчанию во многих дистрибутивах — например, в дистрибутиве ALT Linux. Мы знаем, что кроме Postfix существует другой MTA — Sendmail, который является стандартом де-факто на почтовые агенты. Если Sendmail в основном используется на крупных почтовых серверах (в основном из-за традиции, поскольку Postfix при надлежащей настройке будет выполнять большинство функций Sendmail), то Postfix в основном устанавливается на рабочих станциях для выхода в Internet.

В этой статье мы не будем рассматривать настройку Postfix для сервера, а займемся решением простой практической задачи, с которой может столкнуться любой домашний пользователь Linux. Если на предприятии настройка сервера возложена на плечи администратора, то дома «сам себе root», поэтому если сам не настроишь, никто за тебя не настроит.

Предположим, что у нас есть два локальных пользователя: ivanov и petrov. У Иванова есть два почтовых ящика — один на сервере провайдера (ivanov@ isp.ru) и один на Mail.Ru (ivanov2004@ mail.ru). У Петрова только один почтовый ящик — на сервере провайдера (petrov@isp.ruЭтот e-mail защищен от спам-ботов. Для его просмотра в вашем браузере должна быть включена поддержка Java-script ). Нужно настроить почтовую подсистему так, чтобы письма Иванова получал локальный пользователь ivanov, а письма Петрова — пользователь petrov. Также нужно обеспечить отправку писем, а именно, чтобы письма отправлялись, когда установлено соединение с Internet. Другими словами, Иванов и Петров могут в любое время написать письмо, но оно будет отправлено только, если установлено соединение.

Почему мы будем использовать Postfix, а не Sendmail? Во-первых, Postfix, скорее всего, уже установлен, поскольку сейчас он устанавливается в большинстве дистрибутивов по умолчанию, и нам не нужно тратить время на его установку. Во-вторых, Postfix очень прост в настройке, в чем вы сейчас убедитесь.

Начнем с настройки Postfix, который будет отвечать за доставку писем. Откройте файл /etc/postfix/mail.cf и измените параметры (если их там нет, добавьте):

defer_transport=smtp

relayhost = smtp.isp.ru

Эти две строчки говорят Postfix, что для отправки писем будет использован протокол SMTP (Simple Mail Transfer Protocol) и письма будут отправляться через почтовый сервер провайдера — smtp.isp.ru.

Теперь приступим к настройке программы fetchmail, которая будет получать письма Иванова и Петрова и раскладывать их «по полочкам». Если у вас не установлена программа fetchmail, самое время ее установить. После установки в домашнем каталоге пользователя root создайте файл .fetchmailrc:

set postmaster «postmaster»

set bouncemail

set no spambounce

poll pop.isp.ru with proto POP3

user ‘ivanov’ there with password ‘passwd77′ is ivanov here

poll pop.mail.ru with proto POP3

user ‘ivanov2004′ there with password ‘mailru-passwd’ is ivanov here

poll pop.isp.ru with proto POP3

user ‘petrov’ there with password ‘my_pAsWd’ is petrov here

Теперь осталось установить алиас для пользователя root: чтобы почту root’a читал пользователь ivanov. Для этого в файл /etc/postfix/aliases добавьте строку:

root: ivanov

Перезапустите postfix: service postfix restart

Все, настройка завершена. После установления соединения с Internet, зарегистрировавшись как ivanov, введите команду (в терминале) su -c fetchmail. Затем нужно ввести пароль пользователя root и программа fetchmail получит письма Иванова и Петрова. В это же время Postfix автоматически отправит исходящие сообщения, если таковые имеются. Вывод программы fetchmail выглядит так:

1 message for ivanov at pop.isp.ru (6050 octets).

reading message 1 of 1 (6050 octets) …… flushed

1 message for ivanov at pop.mail.ru (2077 octets).

reading message 1 of 1 (2077 octets) .. flushed

fetchmail: No mail for petrov at pop.isp.ru

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

всё о почтовых и курьерских услугах