Mailman2mlmmj

Материал из ALT Linux Wiki
Версия от 16:06, 28 мая 2009; Bga (обсуждение | вклад) (Первые наброски)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)

Сравнение почтовых рассылок mailman и mlmmj с целью миграции.

Компиляция и установка

Пакеты mailman и mlmmj есть (или будут) в дистрибутивах ALT Linux и прочих вендоров. Устанавливаются из их репозитариев.

Настройка

Какие изменения требуется внести в конфигурацию системы.

mailman

  1. Завести пользователя mailman в группе mailman.
  2. Запустить службу mailman и включить автозапуск (chkconfig).
  3. Для Postfix добавить в /etc/postfix/main.cf
    alias_maps = cdb:/etc/mailman/aliases
    virtual_maps = cdb:/etc/mailman/virtual-mailman
  4. Добавить нужные системные группы в список почтовых и веб-групп
    echo apache >> /etc/mailman/mail.groups
    echo apache >> /etc/mailman/cgi.groups
  5. Для Apache добавить настройки CGI-интерфейса
    Include conf/addon-modules.d/mailman.conf
  6. Включить локальных администраторов в группу mailman.
  7. Внести обще-системные настройки в файл /etc/mailman/mm_config.py.

mlmmj

  1. Для Postfix добавить в /etc/postfix/main.cf
    recipient_delimiter = +
    или другой разделитель, который будет использоваться.

Создание списка рассылки

mailman

  • Можно добавлять списки через веб-интерфейс, зная пароль созидателя рассылок (см. mmsitepass -c)
  • или из консоли:
/usr/share/mailman/bin/newlist -l ru listname admin@domain.tld

Будут созданы директории

  • /var/lib/mailman/lists/listname/
  • /var/lib/mailman/archives/private/listname/
  • /var/lib/mailman/archives/private/listname.mbox/
  • /var/lib/mailman/archives/public/listname/

Почтовые алиасы будут созданы автоматически (в ALT Linux, по крайней мере) и сервер уведомлён.

mlmmj

  1. Запустить в консоли
    mlmmj-make-ml.sh -c -a -L listname
    Этот скрипт создаст директорию /var/spool/mlmmj/listname с конфигами.
  2. Добавить в файл алиасов строку
    listname: "|/usr/bin/mlmmj-recieve -L /var/spool/mlmmj/listname"
  3. Запустить newaliases

Обработка почты

И в mailman, и в mlmmj обработкой входящих писем занимаются утилиты, указанные в качестве почтовых алиасов (псевдонимов) в системных конфигах (см. выше).

mailman

Ошибками доставки, запросами на подписку и прочим занимаются обработчики очереди, запускаемые службой mailman или вручную, например, из monit.

mlmmj

В mlmmj для этих целей используется mlmmj-maintd, запускаемый из cron

0 */2 * * *  /usr/bin/mlmmj-maintd -F -L /var/spool/mlmmj/listname

или

0 */2 * * *  /usr/bin/mlmmj-maintd -F -d /var/spool/mlmmj

или в качестве демона (без ключа -F).

Архивация писем на сайте

mailman

Входящие письма конвертируются в связный веб-архив одним из обработчиков очереди (ArchRunner) путём вызова утилиты /usr/share/mailman/bin/arch. Обработчики запускаются службой mailman или вручную, например, из monit.

mlmmj

Для архивации используются независимые программы.

Подписка

Осуществляется абонентами самостоятельно через веб-интерфейс или почтовый запрос.

mailman

Администратор может подписать/отписать группу пользователей через веб-интерфейс или утилитами add_members / remove_members.

mlmmj

Администратором используются утилиты mlmmj-sub и mlmmj-unsub.

Настройка списка

mailman

Имеется богатый веб-интерфейс и возможность импорта-экспорта настроек в текстовый файл (см. config_list).

mlmmj

Настройки хранятся в файлах /var/spool/mlmmj/listname/*. Правила фильтрации по заголовкам — в файле control/access. Имеется веб-интерфейс администратора на perl и php, но, вероятно, неполный. Совместимость с mailman требует изучения и систематизации.