Mailman

Mailman é um programa de código fonte aberto para gerir discussões de correio electrónico e listas de notícias. Muitas listas de correio electrónico de software livre usam como software principal o Mailman (incluíndo as listas de correio electrónico do Ubuntu.) É poderoso e fácil de instalar e manter.

Instalação

Mailman fornece um interface web para administradores e utilizadores. Por isso, requer apache com suporte mod_perl. Mailman usa um servidor de correio electrónico externo para enviar e receber correio electrónico. Funciona perfeitamente com os servidores de email seguintes:

  • Postfix

  • Exim

  • Sendmail

  • Qmail

Veremos como instalar mailman, o servidor web apache e o servidor de email Exim. Se deseja instalar mailman com um servidor de email diferente, consulte a secção de referências.

Apache2

Para instalar o apache2 consulte a secção Instalação do HTTPD para detalhes.

Exim4

To install Exim4 you run the following commands at a terminal prompt:

sudo apt-get install exim4
sudo apt-get install exim4-base
sudo apt-get install exim4-config

Once exim4 is installed, the configuration files are stored in the /etc/exim4 directory. In Ubuntu, by default, the exim4 configuration files are split across different files. You can change this behavior by changing the following variable in the /etc/exim4/update-exim4.conf file:

  • dc_use_split_config='true'

Mailman

Para instalar Mailman, execute o comando seguinte num terminal:

sudo apt-get install mailman 

Copia os ficheiros de instalação no directório /var/lib/mailman. Instala os scripts CGI no directório /usr/lib/cgi-bin/mailman. Cria o utilizador linux list. Cria o grupo linux list. Este utilizador será o proprietário do processo mailman.

Configuração

Esta secção assume que instalou com sucesso mailman, apache2, e exim4. Agora apenas precisa de os configurar.

Apache2

Uma vez instalado o apache2, pode adicionar as linhas seguintes no ficheiro /etc/apache2/apache2.conf:

Alias /images/mailman/ "/usr/share/images/mailman/"
Alias /pipermail/ "/var/lib/mailman/archives/public/"

O Mailman utiliza o apache2 para executar os seus scripts CGI. Os scripts CGI do mailman são instalados no directório /usr/lib/cgi-bin/mailman. Assim, o url do mailman será http://hostname/cgi-bin/mailman/. Pode fazer alterações ao ficheiro /etc/apache2/apache2.conf se desejar alterar este comportamento.

Exim4

Uma vez instalado o Exim4, pode iniciar o servidor Exim utilizando o seguinte comando num terminal:

sudo apt-get /etc/init.d/exim4 start

Por forma a fazer o mailman utilizar o exim4, precisa de configurar o exim4. Como mencionado anteriormente, por omissão, o exim4 utiliza ficheiros de configuração múltiplos e de tipos diferentes. Para detalhes, consulte a página Exim. Para executar o mailman, devemos adicionar um novo ficheiro de configuração aos seguintes tipos de configuração:

  • Principal

  • Transporte

  • Encaminhador (Router)

O Exim gera o ficheiro de configuração principal ordenando todos estes mini-ficheiros de configuração. Assim, a ordem destes ficheiros de configuração é bastante importante.

Principal

Todos os ficheiros de configuração pertencentes ao tipo main são guardados no directório /etc/exim4/conf.d/main/. Pode adicionar o conteúdo seguinte ao novo ficheiro, denominado 04_exim4-config_mailman:

# inicio
# directório Home para a sua instalação do Mailman -- também referido 
# como prefixo do directório do Mailman 
# No Ubuntu deverá ser "/var/lib/mailman"
# Normalmente tem o mesmo significado que ~mailman MM_HOME=/var/lib/mailman
#
# Utilizador e Grupo para o Mailman, devem coincidir com a
# opção --with-mail-gid do script de configuração do Mailman.
# O valor é normalmente "mailman"
MM_UID=list
MM_GID=list
#
# Os domínios a listar estão numa - lista separada por vírgulas
# deve querer adiciona-los também ao local_domains também
domainlist mm_domains=hostname.com
#
# -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

#
# Estes valores derivam daqueles acima e não devem necessitar
# de ser editados a não ser que tenha alterado a dua instalação mailman
#
# Caminho do script máscara do correio Mailman 
MM_WRAP=MM_HOME/mail/mailman
#
# Caminho do ficheiro da lista de configuração (utilizado como ficheiro
# necessário quando são verificadas moradas de listas)
MM_LISTCHK=MM_HOME/lists/${lc::$local_part}/config.pck
# fim

Transporte

Todos os ficheiros de configuração pertencentes ao tipo de transporte são guardados no directório /etc/exim4/conf.d/transport/. Pode adicionar o conteúdo seguinte a um novo ficheiro chamado 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

Encaminhador (Router)

Todos os ficheiros de configuração pertencentes ao tipo encaminhador são guardados no directório /etc/exim4/conf.d/router/. Pode adicionar o conteúdo seguinte a ficheiro novo chamado 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
[Atenção]

Os ficheiros de configuração principal e de transporte podem estar em qualquer ordem. Mas, a ordem dos ficheiros de configuração do encaminhador (router) deve ser a mesma. Este ficheiro em particular deve aparecer antes do ficheiro 200_exim4-config_primary. Estes dois ficheiros de configuração contêem o mesmo tipo de informação. O primeiro ficheiro tem a precedência. Para mais detalhes, consulte as secções de referência por favor.

Mailman

Once mailman is installed, you can run it using the following command:

sudo /etc/init.d/mailman start

Once mailman is installed, you should create the default mailing list. Run the following command to create the mailing list:

sudo /usr/sbin/newlist mailman

  Inroduza o endereço de correio electrónico da pessoa que gere a lista: bhuvan at ubuntu.com
  Palavra passe inicial do mailman:
  Para terminar a sua lista de correio electrónico, deve editar o seu ficheiro /etc/aliases
  (ou equivalente) adicionando as seguintes linhas, e posivelmente executar
  o programa `newaliases':

  ## mailman lista de correio
  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"

  Pressione enter para notificar o proprietário do mailman ...

  # 

We have configured exim to recognize all emails from mailman. So, it is not mandatory to make any new entries in /etc/aliases. If you have made any changes to the configuration files, please ensure that you restart those services before continuing to next section.

Administração

We assume you have a default installation. The mailman cgi scripts are still in the /usr/lib/cgi-bin/mailman/ directory. Mailman provides a web based administration facility. To access this page, point your browser to the following url:

http://hostname/cgi-bin/mailman/admin

The default mailing list, mailman, will appear in this screen. If you click the mailing list name, it will ask for your authentication password. If you enter the correct password, you will be able to change administrative settings of this mailing list. You can create a new mailing list using the command line utility (/usr/sbin/newlist). Alternatively, you can create a new mailing list using the web interface.

Utilizadores

O Mailman providencia uma interface baseada na web para os utilizadores. Para aceder a esta página, aponte o seu navegador para o seguinte url:

http://nomedoanfitriao/cgi-bin/mailman/listinfo

A lista de correio electrónico pré-definida, mailman, aparecerá neste ecrã. Se clicar no nome da lista, ser-lhe-á apresentado um formulário de subscrição. Pode preencher o seu endereço de correio electrónicp, nome (opcional), e senha de subscrição. Ser-lhe-á enviado um convite via correio electrónico. Pode seguir as instruções dessa mensagem para subscrever a lista.

Referências

GNU Mailman - Manual de Instalação

COMO FAZER - Utilizar o Exim 4 e o Mailman 2.1 em conjunto