Práctica Instalación y Configuración de Mailman
Para esta práctica vamos a instalar Mailman que es una lista de distribución libre. Además vamos a instalar el servidor web Apache para administrar la lista y registrarnos de forma web y Posfix como agente MTA para el envío de correos electrónicos.
1.- Instalamos Mailman:
apt-get install mailman apache2
Elegimos como idioma el español.
2.- Instalamos y configuramos Apache:
apt-get install mailman apache2
Copiamos el fichero de configuración de apache /etc/mailman/apache.conf en sites-availables:
cp /etc/mailman/apache.conf /etc/apache2/sites-available/mailman.conf
Editamos el servidor virtual al final de /etc/apache2/sites-available/mailman.conf:
< VirtualHost *:80> ServerName lists.profesordeinformatica.com DocumentRoot /var/www/lists ErrorLog /var/log/apache2/lists-error.log CustomLog /var/log/apache2/lists-access.log combined < Directory /var/lib/mailman/archives/> Options FollowSymLinks AllowOverride None < /Directory> Alias /pipermail/ /var/lib/mailman/archives/public/ Alias /images/mailman/ /usr/share/images/mailman/ ScriptAlias /admin /usr/lib/cgi-bin/mailman/admin ScriptAlias /admindb /usr/lib/cgi-bin/mailman/admindb ScriptAlias /confirm /usr/lib/cgi-bin/mailman/confirm ScriptAlias /create /usr/lib/cgi-bin/mailman/create ScriptAlias /edithtml /usr/lib/cgi-bin/mailman/edithtml ScriptAlias /listinfo /usr/lib/cgi-bin/mailman/listinfo ScriptAlias /options /usr/lib/cgi-bin/mailman/options ScriptAlias /private /usr/lib/cgi-bin/mailman/private ScriptAlias /rmlist /usr/lib/cgi-bin/mailman/rmlist ScriptAlias /roster /usr/lib/cgi-bin/mailman/roster ScriptAlias /subscribe /usr/lib/cgi-bin/mailman/subscribe ScriptAlias /mailman/ /usr/lib/cgi-bin/mailman/ ScriptAlias / /usr/lib/cgi-bin/mailman/listinfo < /VirtualHost>
Creamos el directorio y habilitamos el sitio mailman:
mkdir /var/www/lists a2ensite mailman.conf /etc/init.d/apache2 restart
Añadimos al servidor de DNS o a /etc/hosts el dominio lists.profesordeinformatica.com
3.- Configuramos mailman
Configuramos el fichero /etc/mailman/mm_cfg.py para que haga referencia al dominio lists.profesordeinformatica.com). Modificamos las siguientes líneas
DEFAULT_URL_PATTERN = 'http://%s/' DEFAULT_EMAIL_HOST = 'lists.profesordeinformatica.com' DEFAULT_URL_HOST = 'lists.profesordeinformatica.com'
4.- Instalamos y configuramos Postfix
Instalamos Postfix. Como servidor de correo ponemos lists.profesordeinformatica.com:
apt-get install postfix
Ejecutamos:
postconf -e 'relay_domains = lists.profesordeinformatica.com' postconf -e 'mailman_destination_recipient_limit = 1'
Editamos el fichero /etc/postfix/master.cf y comprobamos que tenemos estas líneas por defecto:
mailman unix - n n - - pipe flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py ${nexthop} ${user}
5.- Asociar lista al transporte:
Ahora tenemos que asociar el dominio lists.profesordeinformatica.com al transporte de mailman. Esto se puede hacer de 2 formas:
a.- Transporte en una base de datos Mysql
b.- Transporte en el fichero /etc/postfix/transport (lo que vamos a hacer en nuestro caso)
a.- Tranportando en una base de datos mysql Si hemos creado usuarios y dominios virtuales con Postfix, Courierm Mysql y squirrelmail puedes crear lo crear un log del transporte de la siguiente forma:
mysql -u root -p USE mail; INSERT INTO `transport` (`domain`, `transport`) VALUES ('lists.profesordeinformatica.com', 'mailman:'); quit;
Reiniamos el Postfix:
/etc/init.d/postfix restart
b.- Transporte en /etc/postfix/transport
Ejecutamos:
postconf -e 'transport_maps = hash:/etc/postfix/transport'
Editamos /etc/postfix/transport y añadimos la siguiente línea:
lists.profesordeinformatica.com mailman:
Ejecutamos:
postmap -v /etc/postfix/transport
Reiniciamos Postfix:
/etc/init.d/postfix restart
6.- Creamos las listas de mailman
Es obligatorio crear las listas de Mailman para que se pueda ejecutar. Para ello, vamos a ejecutar el siguiente comando:
newlist --urlhost=lists.profesordeinformatica.com --emailhost=lists.profesordeinformatica.com mailman
Nos pide el correo electrónico y el password de la lista y nos crea la lista.
Indique la dirección de correo de la persona que gestionará la lista: aitor@kaixo.com Clave inicial de mailman: Para terminar de crear su lista de distribución, tiene que editar el fichero /etc/aliases (o equivalente) añadiendo las siguientes líneas y ejecutando posiblemente el programa `newaliases': ## lista de distribución mailman 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" Presione el retorno de carro para notificar al propietario de la lista mailman... Editamos el fichero /etc/aliases y añadimos las siguientes líneas (por cada nueva lista que se quiera crear): ## mailman mailing list 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"
Ejecutamos:
newaliases
Reiniciamos postfix:
/etc/init.d/postfix restart
Reiniciamos Mailman :
/etc/init.d/mailman start
Probamos accediendo al navegador con http://lists.profesordeinformatica.com . Ya nos podemos inscribir a la lista.
Para administrar la lista accederemos a http://lists.profesordeinformatica.com/admin.