Mailman - это программа с открытыми кодами для управления дискуссиями, ведущимися через электронную почту, и рассылками электронных новостных сообщений. Многие открытые списки рассылок (включая все на Ubuntu mailing lists) используют Mailman, в качестве программы управления почтовыми списками. Это мощное приложение, при этом его легко установить и поддерживать.
Mailman предоставляет веб-интерфейс для администраторов и пользователей. То есть, ему необходим сервер Апач (apache) с поддержкой mod_perl. Mailman использует внешний почтовый сервер для отправки и получения электронной почты. Он отлично взаимодействует со следующими почтовыми серверами:
Postfix
Exim
Sendmail
Qmail
Мы рассмотрим как установить mailman, веб-сервер apache и почтовый сервер Exim. Если вы хотите установить mailman для другого почтового сервера, пожалуйста, обратитесь к разделу ссылки.
Чтобы установить apache2 см. Установка HTTPD.
Для установки Exim4, выполните следующие команды в окне терминала:
sudo apt-get install exim4 sudo apt-get install exim4-base sudo apt-get install exim4-config
После установки exim4, его конфигурационные файлы будут помещены в католог /etc/exim4
. По умолчанию, в Ubuntu файлы конфигурации exim4 разделены на несколько различных файлов, но вы можете управлять этим, изменяя значение следующей переменной в файле /etc/exim4/update-exim4.conf
:
dc_use_split_config='true'
Для инсталляции Mailman выполните следующую команду в строке терминала:
sudo apt-get install mailman
Она копирует файлы, необходимые для установки, в каталог /var/lib/mailman. Плюс, устанавливает скрипты CGI в каталог /usr/lib/cgi-bin/mailman. А также создает линукс пользователя list и линукс группу list. Этот пользователь будет владельцем процесса mailman.
Данный раздел подразумевает, что у вас уже установлены: mailman, apache2 и exim4. Теперь вам нужно только настроить их.
После установки apache2, добавьте следующие строки в файл /etc/apache2/apache2.conf
:
Alias /images/mailman/ "/usr/share/images/mailman/" Alias /pipermail/ "/var/lib/mailman/archives/public/"
Mailman использует apache2 для исполнения своих CGI-скриптов. CGI скрипты mailman-а установлены в каталоге /usr/lib/cgi-bin/mailman. То есть его url-адрес будет http://hostname/cgi-bin/mailman/. Чтобы изменить это, вы можете отредактировать файл /etc/apache2/apache2.conf
.
После установки Exim4, сервер Exim может быть запущен из командной строки терминала при помощи:
sudo /etc/init.d/exim4 start
Для того, чтобы mailman работал с exim4, вам необходимо настроить exim4. Как замечено ранее, по умолчанию exim4 использует множество конфигурационных файлов различных типов. Для получения более подробной информации, обратитесь к веб-странице Exim. Для запуска mailman, нам нужно добавить новый файл настроек к следующим типам конфигураций:
Основное
Передача почты
Маршрутизатор
Exim создает основной файл настроек, разбирая все эти настроечные мини-файлы. То есть порядок, в котором идут эти файлы настроек, очень важен.
Все настроечные файлы основного типа хранятся в каталоге /etc/exim4/conf.d/main/
. Создайте новый файл 04_exim4-config_mailman
и добавьте в него следующее:
# start # Home dir for your Mailman installation -- aka Mailman's prefix # directory. # On Ubuntu this should be "/var/lib/mailman" # This is normally the same as ~mailman MM_HOME=/var/lib/mailman # # User and group for Mailman, should match your --with-mail-gid # switch to Mailman's configure script. Value is normally "mailman" MM_UID=list MM_GID=list # # Domains that your lists are in - colon separated list # you may wish to add these into local_domains as well domainlist mm_domains=hostname.com # # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= # # These values are derived from the ones above and should not need # editing unless you have munged your mailman installation # # The path of the Mailman mail wrapper script MM_WRAP=MM_HOME/mail/mailman # # The path of the list config file (used as a required file when # verifying list addresses) MM_LISTCHK=MM_HOME/lists/${lc::$local_part}/config.pck # end
Все настроечные файлы, принадлежащие к типу транспортировка, хранятся в каталоге /etc/exim4/conf.d/transport/
. Создайте новый файл 40_exim4-config_mailman
и добавьте в него следующее:
mailman_transport: driver = pipe command = MM_WRAP \ '${if def:local_part_suffix \ {${sg{$local_part_suffix}{-(\\w+)(\\+.*)?}{\$1}}} \ {post}}' \ $local_part current_directory = MM_HOME home_directory = MM_HOME user = MM_UID group = MM_GID
Все настроечные файлы, принадлежащие к типу роутер, хранятся в каталоге /etc/exim4/conf.d/router/
. Создайте новый файл 101_exim4-config_mailman
и добавьте в него следующее:
mailman_router driver = accept require_files = MM_HOME/lists/$local_part/config.pck local_part_suffix_optional local_part_suffix = -bounces : -bounces+* : \ -confirm+* : -join : -leave : \ -owner : -request : -admin transport = mailman_transport
![]() |
|
Порядок основных и транспортных файлов настроек не важен. Однако, порядок файлов настроек роутера должен быть сохранен. Конкретно этот файл по порядку должен быть до файла 200_exim4-config_primary. Оба этих файла содержат одинаковый тип информации. Первый из них будет определен как предшественник. Для получкения более полной информации, обратитесь к секции ссылки. |
После установки mailman, для его запуска воспользуйтесь командой:
sudo /etc/init.d/mailman start
Теперь вам нужно создать основной список рассылки. Воспользуйтесь для этого следующей командой:
sudo /usr/sbin/newlist mailman
Enter the email address of the person running the list: bhuvan at ubuntu.com
Initial mailman password:
To finish creating your mailing list, you must edit your /etc/aliases
(or
equivalent) file by adding the following lines, and possibly running the
`newaliases' program:
mailman: "|/var/lib/mailman/mail/mailman post mailman"
mailman-admin: "|/var/lib/mailman/mail/mailman admin mailman"
mailman-bounces: "|/var/lib/mailman/mail/mailman bounces mailman"
mailman-confirm: "|/var/lib/mailman/mail/mailman confirm mailman"
mailman-join: "|/var/lib/mailman/mail/mailman join mailman"
mailman-leave: "|/var/lib/mailman/mail/mailman leave mailman"
mailman-owner: "|/var/lib/mailman/mail/mailman owner mailman"
mailman-request: "|/var/lib/mailman/mail/mailman request mailman"
mailman-subscribe: "|/var/lib/mailman/mail/mailman subscribe mailman"
mailman-unsubscribe: "|/var/lib/mailman/mail/mailman unsubscribe mailman"
Hit enter to notify mailman owner...
#
Мы настроили exim на распознавание всех сообщений от mailman. Таким образом, не обязательно создавать новые записи в файле /etc/aliases
. Если вы внесли какие-либо изменения в конфигурационные файлы, пожалуйста, удостоверьтесь, что вы перезапустили соответствующие службы до того, как перейдете к следующему разделу.
Мы предполагаем, что у вас установка по умлочанию. Файлы cgi сценариев mailman'а расположены в каталоге /usr/lib/cgi-bin/mailman/. Mailman предоставляет возможность администрирования с помощью веб интерфейса. Для доступа к этой странице, откройте в своем браузере следующий адрес:
http://hostname/cgi-bin/mailman/admin
Н аэтом экране появится список расслке по умолчанию, mailman. Если вы щелкните мышкой на имени списка рассылки, у вас будет запрошен пароль. Если вы введете правильный пароль, у вас появится доступ к изменению административных настроек списка рассылки. Вы можете создать новый список рассылки с помощью утилиты командной строки (/usr/sbin/newlist). Также вы можете создать новый список рассылки с помощью веб интерфейса.
Mailman предоставляет пользователю веб-интерфейс. Для доступа к этой странице, перейдите в браузере на следующий url:
http://hostname/cgi-bin/mailman/listinfo
На этом экране появится созданный при установке список рассылки "mailman". Если щёлкнуть на на названии списка рассылки, появится форма регистрации. Для подписки на этот список можно ввести Ваш почтовый адрес, имя (не обязательно) и пароль. После этого Вам будет отправленно электронной почтой приглашение. Чтобы подписаться на список рассылки, следуйте инструкциям, содержащимся в этом приглашении.