Пакет Courier содержит Mail Transport Agent (MTA). Он полезен для отправки почты другим пользователям на вашей машине. Так же он может быть настроен в качестве центрального сервера почты вашего домена или в качестве агента перенаправления почты. Пакет Courier так же включает web-основанный интерфейс почты, IMAP, IMAP-SSL, POP3 и POP3-SSL.
Адрес (HTTP): http://prdownloads.sourceforge.net/courier/courier-0.47.tar.bz2
Контрольная сумма: 639bb3b236914e3b86f287ce3f55264e
Размер: 4.3 MB
Требуемое дисковое пространство: 102 MB
Расчетное время сборки: 2.62 SBU
Тарбол Courier должен быть распакован с правами обычного пользователя, иначе скрипт configure выпадет с ошибкой.
Перед началом сборки программы вам надо создать пользователя и группу courier, которые должны присутствовать в системе перед запуском скрипта install. Как пользователь root, добавим пользователя и группу courier при помощи следующих команд:
groupadd courier &&
useradd -c 'Courier Mail Server' -d /dev/null \
-g courier -s /bin/false courier
Скрипт install так же ожидает наличия пользователя bin. Если у вас уже есть пользователь с именем bin, то этот шаг может быть пропущен.
useradd -c 'bin' -d /dev/null -g bin -u 1 bin
Courierfilter требует директорию /var/run/courier для сохранения всех pid и lock-файлов для Courier. /var/lock/subsys так же должен присутствовать для основного lock-файла Courier. Выполним следующие команды для создания этих директорий:
install -d /var/run/courier -o courier -g courier -m755 &&
install -d /var/lock/subsys -o root -g root -m755
Соберем Courier под непривилегированным пользователем при помощи следующих команд:
./configure --prefix=/usr --libexecdir=/usr/lib/courier \
--datadir=/usr/share/courier --sysconfdir=/etc/courier \
--localstatedir=/var/lib/courier --with-piddir=/var/run/courier \
--with-paranoid-smtpext --disable-autorenamesent \
--enable-workarounds-for-imap-client-bugs --with-db=gdbm &&
make
А теперь опять станем пользователем root и установим Courier при помощи следующих команд:
make install &&
make install-configure
--libexecdir=/usr/lib/courier: Описывает директорию, которая содержит программы и библиотеки, которые не могут быть непосредственно запущены из командной строки.
--datadir=/usr/share/courier: Описывает директорию, в которую будут установлены различные скрипты оболочки, Perl скрипты и файлы данных.
--localstatedir=/var/spool/courier: Описывает директорию, которая будет содержать очередь почты и другие временные данные.
--with-piddir=/var/run/courier: Описывает директорию, в которой сохраняются PID файлы Courier когда Courier активен.
--with-paranoid-smtpext: Быть параноиком при переговорах Courier-specific ESMTP расширений с удаленными серверами. Почтовый сервер Courier описывает и реализует некоторые экспериментальные ESMTP расширения: XVERP и XEXDATA. Проблемы могут быть следствием событий, когда кто-то другой использует то же самое имя для реализации другого расширения. Если эта опция описана, то ESMTP сервер Courierа так же будет объявлять фиктивную возможность ESMTP, называемую XCOURIEREXTENSIONS, и не будет узнавать любые Courier-специфичные расширения пока удаленный почтовый сервер так же объявляет эту фиктивную ESMTP возможность.
--disable-autorenamesent: Не переименовывать папку Sent каждый месяц. Так же эта опция может быть контролирована переменной окружения SQWEBMAIL_AUTORENAMESENT.
--enable-workarounds-for-imap-client-bugs: Есть несколько подтвержденных ошибок в некоторых клиентах IMAP, которые не правильно реализуют протокол IMAP4rev1. Эта опция включает некоторые обходы для этих ошибочных IMAP клиентов. ЗАМЕЧАНИЕ: make check при использовании этой опции будет выпадать. Сначала вы должны использовать configure без этой опции и, если все послеконфигурационные тесты проходят, перезапустить configure с этой опцией и пересобрать.
--with-db=gdbm: Courier так же требует библиотеку базы данных GDBM или DB. GDBM используется если присутствуют обе. Эта опция принудительно выбирает GDBM, так как в данный момент courier не работает при использовании DB.
--with-ispell=/usr/bin/aspell: Сервер интернет почты Courier может использовать проверку орфографии если configure находит ispell или если вы точно установите положение aspell.
--enable-mimetypes=[location of mime.types file]: Используйте этот ключ, если вы получите ошибку, говорящую, что файл mime.types не может быть найден.
Пока вы все еще root, вам понадобится создать следующие файлы с особым содержанием.
/etc/courier/defaultdomain
cat > /etc/courier/defaultdomain << "EOF"
[ваш домен]
EOF
/etc/courier/me
cat > /etc/courier/me << "EOF"
[имя сервера.ваш домен]
EOF
/etc/courier/locals
cat > /etc/courier/locals << "EOF"
localhost
[ваш домен]
EOF
/etc/courier/esmtpacceptmailfor.dir/system
cat > /etc/courier/esmtpacceptmailfor.dir/system << "EOF"
localhost
[ваш домен]
EOF
Вам так же понадобиттся отредактировать файл /etc/courier/aliases/system и изменить следующее содержимое.
postmaster: [почтовый адрес вашего администратора]
Если вы хотите запретить доступ с некоторых хостов от посылки почты, то вам понадобится отредактировать файл /etc/courier/smtpaccess/default.
Если вы хотите предоставлять почту для не локальных доменов, включая виртуальные домены, то вы должны добавить их в /etc/courier/hosteddomains. Этот файл должен присутствовать, нужен ли вам список доменов или нет:
touch /etc/courier/hosteddomains
После выполнения предидущего шага вам понадобится выпонить следующие команды:
makesmtpaccess &&
makehosteddomains &&
makealiases
Для каждого пользователя вам понадобится создать директорию Maildir:
cd /home/[имя пользователя] &&
maildirmake Maildir &&
chown [имя пользователя].[имя пользователя] Maildir -R
Если вы хотите использовать SSL с Courier, вы должны получить сертификаты и сохранить их в /usr/share/courier. Опционально вы можете создать самоподписываемые тестовые сертификаты при помощи следующих команд:
mkesmtpdcert &&
mkimapdcert &&
mkpop3dcert
Все файлы конфигурации Courier находятся в директории /etc/courier/. Для каждого сервиса SMTP, POP3 и IMAP у вас будет стандартный файл конфигурации и файл конфигурации SSL. Для каждого сервиса, который вы хотите использовать, вам понадобится отредактировать файл конфигурации и изменить переменную [DAEMON]START с 'NO' на 'YES'. Например, для использования SMTP с SSL вам понадобится отредактировать /etc/courier/esmtpd-ssl и изменить значение 'ESMTPDSSLSTART' на 'YES'. Сделайте такие же изменения для каждой конфигурации сервиса, который вы хотите использовать с Courier.
Если вы хотите использовать LDAP, то должен быть создан файл конфигурации LDAP:
echo "LDAPALIASDSTART=YES" > /etc/courier/ldapaliasd
Аналогично, если вы хотите использовать webmail, то вы должны создать файл конфигурации webmail:
echo "WEBMAILDSTART=YES" > /etc/courier/webmaild
Вам так же понадобится скопировать файл webmail из /usr/lib/courier/courier/webmail в директорию cgi-bin вашего сервера Apache.
cp -a /usr/lib/courier/courier/webmail/webmail /srv/www/cgi-bin
Затем вам понадобится скопировать изображения в директорию под вашей директорией htdocs вашего сервера Apache. Директория должна быть названа webmail или вам необходимо указать ее во время фазы configure в параметре --enable-imageurl=[URL].
cp -a /usr/share/courier/sqwebmail/images /srv/www/htdocs/webmail
Если вы хотите использовать утилиту webadmin, то вам понадобится скопировать файл webadmin из /usr/lib/courier/courier/webmail в вашу директорию cgi-bin вашего сервера Apache.
cp -a /usr/lib/courier/courier/webmail/webadmin /srv/www/cgi-bin
Так же вам необходимо поместить пароль в файл /etc/courier/webadmin/password:
cat > /etc/courier/webadmin/password << "EOF"
[пароль]
EOF
Если вы не используете SSL в вашем сервере Apache, то вам понадобится добавить /etc/courier/webadmin/unsecureok, при этом вы сможете использовать ваше средство администрирования, основанное на интернет.
touch /etc/courier/webadmin/unsecureok
Если вы используете Linux-PAM в вашей системе, то вам понадобится создать файлы конфигурации PAM:
cat > /etc/pam.d/esmtp << "EOF"
# Begin /etc/pam.d/esmtp
auth required pam_unix.so try_first_pass
account required pam_unix.so
session required pam_unix.so
# End /etc/pam.d/esmtp
EOF
cat > /etc/pam.d/pop3 << "EOF"
# Begin /etc/pam.d/pop3
auth required pam_unix.so try_first_pass
account required pam_unix.so
session required pam_unix.so
# End /etc/pam.d/pop3
EOF
cat > /etc/pam.d/imap << "EOF"
# Begin /etc/pam.d/imap
auth required pam_unix.so try_first_pass
account required pam_unix.so
session required pam_unix.so
# End /etc/pam.d/imap
EOF
cat > /etc/pam.d/webmail << "EOF"
# Begin /etc/pam.d/webmail
auth required pam_unix.so try_first_pass
account required pam_unix.so
session required pam_unix.so
# End /etc/pam.d/webmail
EOF
Наконец, если вы хотите запускать сервер Courier во время загрузки, то установите стартовый скрипт /etc/rc.d/init.d/courier, включенный в пакет blfs-bootscripts-6.0.
make install-courier
Эти инструкции настроят Courier для просмотра виртуальных пользователей в базе данных MySQL. Начните с внесения следующих изменений в /etc/courier/authmysqlrc:
MYSQL_SERVER localhost
MYSQL_USERNAME courier
MYSQL_PASSWORD [ваш выбор]
MYSQL_SOCKET /var/run/mysql/mysql.sock
MYSQL_PORT 3306
MYSQL_DATABASE courier_mail
MYSQL_USER_TABLE users
MYSQL_CLEAR_PWFIELD clear
DEFAULT DOMAIN [ваш домен]
MYSQL_QUOTA_FIELD quota
Подключитесь к MySQL:
mysql -p
Создайте базу данных courier_mail и настройте таблицу пользователей:
CREATE DATABASE courier_mail;
USE courier_mail
CREATE TABLE users (
id char(128) DEFAULT '' NOT NULL,
crypt char(128) DEFAULT '' NOT NULL,
clear char(128) DEFAULT '' NOT NULL,
name char(128) DEFAULT '' NOT NULL,
uid int(10) unsigned DEFAULT '65534' NOT NULL,
gid int(10) unsigned DEFAULT '65534' NOT NULL,
home char(255) DEFAULT '' NOT NULL,
quota char(255) DEFAULT '' NOT NULL,
KEY id (id(128))
);
предоставим все привилегии пользователю courier, созданному ранее:
GRANT ALL PRIVILEGES ON *.* TO courier@localhost \
IDENTIFIED BY '[пароль]' WITH GRANT OPTION;
QUIT
Создадим виртуальных пользователя и группу mailman:
groupadd -g 9000 vmailman &&
useradd -c 'Virtual Mailman' -g vmailman -m -k /dev/null -u 9000 vmailman
Создадим почтовую директорию для нового виртуального пользователя:
cd /home/vmailman &&
mkdir [виртуальный_пользователь] &&
cd [виртуальный_пользователь] &&
maildirmake Maildir &&
chown vmailman.vmailman Maildir -R
Теперь подключимся к базе данных MySQL как пользователь courier:
mysql -u courier -p
Для добавления виртуального пользователя вам надо ввести минимум одну версию пароля - обычную текстовую или шифрованную.
Добавим первого виртуального пользователя запуском следующих команд:
USE courier_mail
INSERT INTO users VALUES (
'[виртуальный_пользователь]@[домен.com],
'[шифрованный пароль или пусто]',
'[текстовый пароль или пусто]',
'[имя пользователя]',
9000,
9000,
'[положение директории для почты]',
'[квота в байтах]
);
QUIT
Например:
INSERT INTO users VALUES (
'blfsuser@linuxfromscratch.org',
'',
'password',
'BLFS User',
9000,
9000,
'/home/vmailman/blfsuser',
''
);
удаляет сообщение из очереди почты.
административная команда, используемая для контроля движка планирования Courier.
посылает почтовые сообщения по факсу.
запускает и останавливает все почтовые фильтры, установленные filterctl.
поддерживает псевдонимы почтовых адресов, используя директории LDAP.
захватывает сообщения об ошибках из других приложений Courier и перенаправляет их в системный логер.
настраивает, поддерживает и управляет списками рассылки.
простой фильтр, написанный на Perl.
POP3 сервер Courier.
читает POP3 ID пользователя и пароль и помещает их в модули аутентификации.
принимает входяшие сетевые соединения и запускает другие программы Courier после создания каждого сетевого соединения.
используется приложениями для шифрования сетевого соединения, используя SSL/TLS.
модуль совместимости, который читает перенаправленные инструкции в $HOME/.forward.
фильтр, который пытается блокировать ненужную почту, пытаясь определить многочисленные копии одного и того же сообщения.
контролирующий скрипт для courieresmtpd.
контролирующий скрипт для courieresmtpd, но добавляет порт 587 подачи почты для протокола MSA.
устанавливает или снимает глобальные почтовые фильтры.
сервер Courier-IMAP.
это утилита для блокирования файлов mailbox.
знающая MIME утилита автоответа.
управляет списком контроля доступа.
изменяет Courier-IMAP совместимые ключевые слова сообщений maildir.
создает почтовые диретории и папки maildir.
замена локального агента пересылки почты, который включает язык фильтрации почты.
отображает список всех сообщений, которые еще не были отправлены.
строит список доменов для приема почты из директории /etc/courier/esmtpacceptmailfor.dir.
строит базу данных псевдонимов из одного или более обычных текстовых исходных файлов.
утилита для создания файлов GDBM или DB из обычных текстовых файлов.
перестраивает содержимое базы данных hosteddomains из содержимого /tools/etc/courier/hosteddomains.
создает MIME-фоматированные сообщения из одного или более файлов.
строит список %-переключаемых доменов из директории percentrelay.dir.
строит ESMTP файлы доступа к серверу из директории /etc/courier/smtpaccess.
строит ESMTP файлы доступа к серверу из директории /etc/courier/smtpaccess. Этот esmtp список предназначен для протокола MSA.
строит базу данных пользователь/пароль из содержимого /tools/etc/courier/userdb.
подписывает, шифрует или дешифрует MIME-форматированные почтовые сообщения, используя GnuPG.
создает защищенный SMTP тестовый сертификат.
создает защищенный IMAP тестовый сертификат.
создает защищенный POP3 тестовый сертификат.
скрипт-обертка для couriertcpd для запуска и остановки сервиса POP3.
скрипт-обертка для couriertcpd для запуска и остановки POP3 через сервис SSL.
читает сообщение со стандартного ввода, форматирует его некоторым способом и записывает сообщение на стандартный вывод.
утилита для переформатирования MIME сообщений.
читает почтовое сообщение и пересылает его получателю.
представляет сообщения Courier для обработки.
выводит имена и IP адреса почтовых переключателей, которые получают почту для домена.
скрипт для индивидуального манипулирования содержанием /tools/etc/courier/userdb.
читает одиночную строку текста со стандартного ввода, шифрует ее и печатает шифрованный результат на стандартный вывод.
Последнее обновление 2005-03-14 04:10:36 -0700