Mailman es un servidor de listas muy util que nos sirve para tener nuestra propia lista de discusion por email o tener informado a un grupo sobre noticias, lanzamientos, etc. Bien usado (no para el envio de spam o correo no deseado) puede ser una gran herramienta.
Hoy les mostrare como instalarlo y configurarlo en un server Linux Centos 6 con Postfix como MTA. Toda la instalacion y configuracion la haremos desde root.
-Instalamos dependencias
Hoy les mostrare como instalarlo y configurarlo en un server Linux Centos 6 con Postfix como MTA. Toda la instalacion y configuracion la haremos desde root.
-Instalamos dependencias
yum install gcc python-devel python
-Descargamos mailman, aunque ya hay algunas versiones 3.x estan aun no estan en modo stable y no tienen casi documentacion asi que no las recomiendo para un servidor de produccion.
cd /tmp
tar -xzvf mailman-2.1.14-1.tgz
mkdir /usr/local/mailman
-Creamos un usuario y grupo para mailman con permisos limitados
cd mailman-2.1.14-1
groupadd mailman
useradd -c 'GNU Mailman' -s /sbin/nologin -M -g mailman mailman
-Damos permisos para el grupo mailman
chmod a+rx,g+ws /usr/local/mailman/
chown -R mailman.mailman /usr/local/mailman
-Compilamos
./configure
make install
cd /usr/local/mailman
-Verificamos los permisos ejecutando el siguiente comando hasta que ya no devuelva errores.
bin/check_perms -f
-Configuramos apache
chkconfig httpd on
cd /etc/httpd/conf
-Agregamos al conf de apache y salimos guardando
vi httpd.conf
group nobody
ScriptAlias /mailman/ "/usr/local/mailman/cgi-bin/"
groupadd mailman
useradd -c 'GNU Mailman' -s /sbin/nologin -M -g mailman mailman
-Damos permisos para el grupo mailman
chmod a+rx,g+ws /usr/local/mailman/
chown -R mailman.mailman /usr/local/mailman
-Compilamos
./configure
make install
cd /usr/local/mailman
-Verificamos los permisos ejecutando el siguiente comando hasta que ya no devuelva errores.
bin/check_perms -f
-Configuramos apache
chkconfig httpd on
cd /etc/httpd/conf
-Agregamos al conf de apache y salimos guardando
vi httpd.conf
group nobody
ScriptAlias /mailman/ "/usr/local/mailman/cgi-bin/"
Alias /pipermail/ "/usr/local/mailman/archives/public/"
<Directory "/usr/local/mailman/archives/public/">
AddDefaultCharset Off
</Directory>
AddDefaultCharset Off
</Directory>
-Reiniciamos apache
service httpd restart
cd /usr/local/mailman
cp icons/*.{jpg,png} /var/www/icons/
vi Mailman/mm_cfg.py
IMAGE_LOGOS = '/icons/'
MTA = 'Postfix'
-Agregar a postfix y salimos guardando
vi /etc/postfix/main.cf
#luser_relay
recipient_delimiter = +
recipient_delimiter = +
alias_maps = hash:/etc/aliases, hash:/usr/local/mailman/data/aliases
-Generamos aliases
bin/genaliases
-Cambios en permisos
chown mailman:mailman data/aliases*chmod g+w data/aliases*
-Generamos la primera lista, obligatorio para el funcionamiento de mailman
bin/newlist mailman
-Configuramos tareas en cron
cd cron
-Editamos el crontab.in y agregamos el campo MAILTO en la primera linea y salimos guardando.
vi crontab.in
MAILTO=user@example.com
-Ejecutamos
crontab -u mailman crontab.in
cd ..
-Ejecutamos mailman
bin/mailmanctl start
-Configuramos para inicio automatico cada vez que haga boot el server
cp scripts/mailman /etc/init.d/mailman
chkconfig mailman on
-Creamos el password del sitio en general y el de creador de listas. El del sitio tiene permisos para todas las listas, el de creador de listas seria para dar permisos para una lista a otro usuario sin que tenga permisos para las demas
-Password del sitio
bin/mmsitepass
-Password para una lista
bin/mmsitepass -c password-a-colocar
-Entramos con un browser a la pagina del server con mailman y llenamos los campos para crear nuestra segunda lista, esta ya de uso nuestro.
http://mm.test.com/mailman/create
Listo, ya podemos configurar a nuestro gusto las listas, que pueden ser moderadas o no moderadas, de solo envio, etc.
Listo, ya podemos configurar a nuestro gusto las listas, que pueden ser moderadas o no moderadas, de solo envio, etc.
Disfrutenlo