Первоначально рассказ о пакете vpopmail был представлен в конце статьи "Дополнительные фишки qmail", но позже я решил вынести его отдельной темой, дополнительно избавив от сумбура и неточностей. То есть - в данной статье - реальный минимум для установки vpopmail в связке с qmail
Предполагается, что qmail установлен и работает, как описано в статье.
Добавление vpopmai для запуска через tcpserver не представляет особой сложности и рассматриваться здесь не будет. Установка описана для версии пакета 5.4.9, для более поздних могут быть отличия, для более ранних отличия есть, но они несущественны.
Для чего же нужен vpopmail? Этот пакет решает в первую очередь проблемы с тем, что для работы стандартного qmail необходимо каждому почтовому ящику завести отдельного системного пользователя. Во многих системах имена таких пользователей, например, не могут начинаться с цифры, содержать внутри точку, быть переменного регистра. Если забыть ликвидировать shell на такого пользователя, то по данному логину возможен вход посторонних на почтовый сервер, а это в большинстве случаев неприемлемо ни при каких обстоятельствах. Далее, vpopmail позволяет использовать шифрованные пароли и сильно облегчает администрирование системы; в частности, заведение нового виртуального домена для приёма почты выполняется всего одной командой; весь список пользователей с паролями можно ввести через пакетный файл, что в случае работы через системных пользователей возможно только на крайне ущербных системах.
Я не буду объяснять, что такое многодоменный почтовый сервер, эта тема достаточно обсосана в основной статье, посвященной установке qmail. Хочу только сказать, что с точки зрения доставки почты виртуальным пользователям, vpopmail не вносит ничего нового - для этого используются стандартные стредства qmail без каких-либо изменений, однако утилиты администрирования от vpopmail самостоятельно управляют конфигурационными файлами qmail, внося в них изменения и при необходимости перезапуская соответствующие сервисы. То есть, доставку почты на сервер по виртуальным почтовым ящикам можно организовать и без vpopmail. Этот пакет занимается оконечной доставкой почты клиентам по pop3.
Для установки vpopmail понадобится уже установленный и отконфигурированный для реальной работы сервер qmail. Сервисы pop3 могут отсутствовать.
Распаковываем дистрибутив vpopmail.
tar -zxvf vpopmail-5.4.9.tar.gz cd vpopmail-5.4.9
Делать это можно в любой каталог; ставить и компилировать исключительно из под root.
Добавляем системного пользователя и группу, под которым будут работать все программы пакета vpopmail:
groupadd -g 89 vchkpw useradd -g vchkpw -u 89 vpopmail -d /home/vpopmail mkdip -p /home/vpopmail/etc
Что касается ID группы 89... Почему-то это число кочует из мануала в мануал... Хотя привязанности vpopmail к номеру группы формально нет - ID формально может быть любым, главное, чтобы пользователь vpopmail являлся членом этой группы и его домашний каталог располагался в /home/vpopmail. Именно в этот каталог будут проинсталлированы все программы пакета, именно в этом каталоге будет храниться почта и все настройки vpopmail. Если у вас еще неполностью деинсталлирован postfix, самое время им заняться, потому что чаще всего id 89 уже имеет пользовательская группа postfix. :)
Сконфигурируем qmail:
./configure --prefix=/home/vpopmail --enable-logging=y --enable-auth-logging=y
В данном случае --prefix указывает каталог, в который ставится vpopmail, --enable-logging и --enable-auth-logging указывают демону qmail записывать все попытки авторизации и доставки почты между виртуальными каталогами в maillog. Для тех, кто одержим идеей запустить это из под tcpserver, интерес представляют ключи конфигурации --enable-tcpserver-file --enable-relay-clear-minutes и --enable-roaming-users. Любителям всё привязывать к mysql в данном случае пользоваться таковой возможностью не рекомендую, если только количество почтовых ящиков пользователей вашего сервера не исчисляется тысячами - ни к чему зависеть от промежуточного сервиса, который к тому же не слишком стабилен в некоторых случаях.
Далее следуют стандартные команды сборки:
make make install-strip
Всё. Процесс установки как таковой на этом заканчивается.
Создаем для xinetd файл старта сервиса pop3. В нём должны быть следующие строки:
service pop3 { disable=no socket_type=stream protocol=tcp wait=no user=vpopmail server=/var/qmail/bin/qmail-popup log_on_success=HOST log_on_failure=HOST server_args=имя_нашего_домена /home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir }
Обращаю ваше внимание на пользователя, от которого запускается сервис. Пользователя root туда ставить не надо!
Копируем файл pop3 в /etc/xinet.d/ и перезапускаем xinetd:
/etc/init.d/xinetd restart
Теперь можно заводить виртуальные домены и, собственно, пользователей виртуальных доменов:
/home/vpopmail/bin/vadddomain имя_виртуального_домена
После чего вас попросят ввести пароль для пользователя postmaster@имя_виртуального_домена. Этот пользователь является обязательным; именно ему будет сыпаться отбитая почта и сообщения об ошибках работы почтовой системы.
Остальные пользорватели заводятся командой:
/home/vpopmail/bin/vadduser имя@имя_домена пароль
Все команды управления пользователями содержатся в директории /home/vpopmail/bin/. Из постоянно применяемых можно отметить vdeluser - удаление виртуального пользователя, valias - заведение пользователя, вся почта, приходящая которому, будет отсылаться на указанный почтовый адрес; не обязательно нашего домена. vdeldomain, соответственно, удалит почтовый домен полностью.
Настроенный таким образом vpopmail требует идентификации пользователей по полному почтовому имени, включая "@" и имя домена. Чтобы была возможность идентифицировать пользователей, не вводя этот хвостик, необходимо создать файлик /home/vpopmail/etc/defaultdomain и поместить туда имя домена по умолчанию, которое будет автоматически добавляться к именам c отсутствующим знаком "@".
Замеченные на первый взгляд ерундовины.
Если вы внимательно просмотрите каталог /home/vpopmail/bin, то среди прочего обнаружите команду vsetuserquota. Казалось бы, хороший признак - специальной командой установить квоты использования дискового пространства. Но, проверка осуществляется только после фактического приёма нового письма qmail. Не стоит говорить о том, что такая акция бесполезна абсолютно: результатом будет следующее: не помещающееся в почтовый ящие письмо будет отослано тому, кто его написал, с полным вложением объёма (если, конечно, вы не укоротили принудительно bounce messages в своей системе),
в случае повторного возврата весь этот объем опять вернется к вам. Соответственно, получается излишняя генерация бесполезного трафика. Ну, и вся та же проблема спама стандартного qmail сообщениями bounce - возвратом наружу с несуществующих адресов домена.
Не забудьте закрыть файерволом 110 порт адресных сетей, абонентам которых ни к чему получать почту вашего домена!
Sir Serge,
6.07.2005,
Barnaul, RF.
Pahanivo OC: Windows XP 2005-12-09 12:50:05
Николай OC: Vista 2007-04-21 18:15:52
Sir Serge OC: Windows XP 2007-04-21 21:22:45
Текст опубликован: 2005-06-07
Последние изменения текста: 2006-09-25
Вы можете добавить свои комментарии.
Комментарий появится на сайте только после того, как он будет проверен администрацией на запрещённую законодательством информацию.
Для возможности внесения комментариев в браузере должна быть включена поддержка JavaScript. Реклама и ссылки на сайты, не относящиеся к делу, являются прямым основанием удаления комментария. Поля "E-mail" и "WWW" обязательными для заполнения не являются, поле E-Mail не публикуется. Если хотите просто что-то написать автору статьи, без публикации на сайте - воспользуйтесь специальной формой под пунктом меню "О сайте". Администрация оставляет за собой право публиковать или не публиковать адреса, введенные в поле www, а также при необходимости редактировать текст вашего сообщения. Ответы на ваши сообщения по введенному вами E-mail автоматически сайтом не высылаются. Теги PHPBB и HTML не действуют.