MTA это программы, транспортирующие почту между машинами. Традиционным MTA является Sendmail, хотя существует и другой выбор.
Кроме сервера SMTP есть POP сервер (qpopper) и IMAP сервер (Courier-IMAP).
Пакет Postfix содержит агент передачи почты (Mail Transport Agent -MTA). Он полезен для пересылки почты другим пользователем на вашей машине. Он так же может быть настроен в качестве центрального сервера почты вашего домена, агента переключения почты или просто агента доставки почты вашему локальному интернет провайдеру (ISP).
Адрес (HTTP): http://www.mirrorspace.org/postfix/official/postfix-2.1.5.tar.gz
Адрес (FTP): ftp://ftp.porcupine.org/mirrors/postfix-release/official/postfix-2.1.5.tar.gz
Контрольная сумма: bcaa4aac80595d04c60c72844203a04d
Размер: 1.9 MB
Требуемое дисковое пространство: 81 MB
Расчетное время сборки: 0.29 SBU
Дерево исходников Postfix содержит не скрипт configure, а файл makefile в директории верхнего уровня, содержащий целевые файлы makefile, который перегенерирует все остальные файлы makefile в дереве сборки. Если вы захотите использовать дополнительные программы, например оболочку базы данных для виртуальных пользователей или TLS/SSL аутентификацию, вам понадобится перегенерировать файлы makefile, используя один или более подходящий CCARGS и AUXLIBS параметр, описанный ниже.
Вот пример, который комбинирует аргументы TLS/SSL и Cyrus-SASL:
make makefiles \
CCARGS="-DHAS_SSL -DUSE_SASL_AUTH -I/usr/include/openssl -I/usr/include/sasl" \
AUXLIBS="-L/usr/lib -R/usr/lib -lssl -lcrypto -lsasl2"
Для использования SSL/TLS аутентификации при помощи Postfix, сначала вам понадобится применить патч, доступный на ftp://ftp.aet.tu-cottbus.de/pub/postfix_tls/pfixtls-0.8.18-2.1.3-0.9.7d.tar.gz. Распакуйте архив патча и примените его при помощи следующей команды:
patch -p1 < ../pfixtls-0.8.18-2.1.3-0.9.7d/pfixtls.diff
Вам понадобиться разместить следующие значения в команде make makefiles:
CCARGS="-DHAS_SSL -I/usr/include/openssl" \
AUXLIBS="-L/usr/lib -lssl -lcrypto"
Для использования SSL или TLS вам так же понадобится Cyrus SASL-2.1.20.
Для использования Cyrus-SASL с Postfix используйте следующие аргументы:
CCARGS="-DUSE_SASL_AUTH -I/usr/include/sasl" \
AUXLIBS="-L/usr/lib -R/usr/lib -lsasl2"
Для использования OpenLDAP с Postfix используйте следующие аргументы:
CCARGS="-I/usr/include -DHAS_LDAP" \
AUXLIBS="-L/usr/lib -lldap -llber"
Для использования MySQL с Postfix используйте следующие аргументы:
CCARGS="-DHAS_MYSQL -I/usr/include/mysql" \
AUXLIBS="-L/usr/lib -lmysqlclient -lz -lm"
Перед компилированием программы вам надо создать пользователей и группы, которые должны присутствовать во время выполнения скрипта установки. Добавим пользователей и группы при помощи следующих команд:
groupadd postfix &&
groupadd postdrop &&
groupadd -g 65534 nogroup &&
useradd -c postfix -d /dev/null -g postfix -s /bin/false postfix &&
useradd -c nobody -d /home -g nogroup -s /bin/bash -u 65534 nobody &&
chown postfix:postfix /var/mail
Установим Postfix запуском следующих команд:
make &&
sh postfix-install daemon_directory=/usr/sbin \
manpage_directory=/usr/share/man \
sample_directory=/usr/share/doc/postfix \
-non-interactive
Завершим этап установки установкой документации к программам, выполнив следующие команды:
install -d /usr/share/doc/postfix &&
cp -rf html/* /usr/share/doc/postfix
sh postfix-install ... -non-interactive : Это удержит скрипт установки от любых вопросов, применив директории по умолчанию везде, кроме трех отдельно указанных позиций.
make makefiles : Эта команда пересоберет файлы makefile во всем дереве исходников для использования опций, содержащихся в переменных CCARGS и AUXLIBS.
cat >> /etc/aliases << "EOF"
# Begin /etc/aliases
MAILER-DAEMON: postmaster
postmaster: root
root: LOGIN
# End /etc/aliases
EOF
Для защиты имеющегося файла /etc/aliases, команда выше добавляет в него эти псевдонимы, если он есть. Этот файл должен быть проверен и из него должны быть удалены дублированные псевдонимы.
Файлы /etc/aliases, который только что был создан или дополнен, main.cf и master.cf должны быть персонализированы для вашей системы. Файл aliases требует вашей не-root регистрации, поэтому почта, адресованная root, может быть перенаправлена вам на уровне пользователя. Файлу main.cf необходимо ваше полностью определенное имя хоста. Все это может быть выполнено при помощи команд sed, введенных в консоли с соответствующими заменами вашего не-root имени для [user] и вашего полностью определенного имени хоста для [localhost.localdomain]. Вы можете увидеть, что файл main.cf частично документирован, поэтому загрузите его в ваш редактор для внесения требуемых изменений.
sed -i "s/LOGIN/[user]/" /etc/aliases &&
sed -i "s/#myhostname = host.domain.tld/myhostname = \
[localhost.localdomain]/" /etc/postfix/main.cf &&
/usr/bin/newaliases &&
/usr/sbin/postfix start
Для автоматизации запуска Postfix во время загрузки, установим стартовый скрипт /etc/rc.d/init.d/postfix, включенный в пакет blfs-bootscripts-6.0.
make install-postfix
Демон, поддерживающий файлы "отчет на-сообщение" с информацией о статусе не переданности.
Демон, который обрабатывает прибывающую почту, включает ее в очередь входящей почты и информирует менеджер очереди о ее прибытии.
Демон, который обрабатывает не переданные запросы от менеджера очереди.
Демон, который поддерживает запись отсроченной почты по назначению.
Демон, который обрабатывает сообщения переданных запросов от менеджера очереди.
Демон, который обрабатывает переданные запросы от менеджера очереди для передачи почты локальным получателям.
Символическая ссылка на sendmail.
Резидентный процесс, который запускает демон Postfix по требованию.
Символическая ссылка на sendmail.
Демон, который ожидает прибытия входящей почты и располагает ее для доставки.
Менеджер очереди в старом стиле. Он будет скоро удален.
Демон, который ожидает намека, что новая почта была положена в директорию помещения почты, и передает ее демону cleanup.
Демон, который обрабатывает запросы от менеджера очереди для доставки сообщений внешним командам.
Создает или запрашивает одну или более базу данных псевдонимов Postfix или обновляет имеющуюся.
Печатает содержимое файлов named в формате, удобном для чтения.
Отображает или изменяет значение параметров конфигурации Postfix.
Создает файл в директории размещения почты и копирует свой стандартный ввод в файл.
Контролирует операции почтовой системы Postfix.
Посылает запрсы к указанному сервису через локальный канал передачи.
Закрывает почтовую папку для эксклюзивного использования и выполняет размещенные в ней команды.
Postfix-совместимый интерфейс регистрации для использования в, например, скриптах оболочки.
Создает или запрашивает одну или более таблицу просмотра Postfix или обновляет имеющуюся.
Интерфейс пользователя Postfix для управления очередью.
Интерфейс пользователя Postfix для управления очередью суперпользователя.
Предоставляет таблицу сервисов просмотра в режиме "только для чтения" для других процессов Postfix.
Демон that awaits the arrival of incoming mail and arranges for its delivery.
Демон, который получает одно сообщение на соединение, перенаправляет его в демон cleanup и размещает его во входящей очереди.
Интерфейс совместимости Postfix с Sendmail.
Демон, сообщающий статус очереди почты Postfix.
Просматривает список почтовых адресов для целевого хоста, сортирует список по предпочтениям и соединяется с каждым перечисленным адресом, пока ищет отвечающий сервер.
Принимает запросы сетевого соединения и выполняет ноль или более SMTP трансакций на соединение.
Слушает порт, указанный в Postfix файле master.cf и вызывает внешнюю команду как только соединение будет установлено.
Демон, который перезаписывает адреса в стандартном виде.
Поддерживает запись тех адресов получателя, о которых известно, что они должны быть доставлены или нет.
Доставляет почту в виртуальные почтовые директории пользователя.