1000 FAQ, 500 tutoriales y vídeos explicativos. ¡Aquí sólo hay soluciones!
Crear listas de discusión con Public Cloud
Esta guía explica cómo crear manualmente un sistema de listas de discusión con su Servicio de Correo, gracias a Mailman
y al Public Cloud de Infomaniak.
⚠️ Esta guía está dirigida exclusivamente a un público con un alto nivel de competencia técnica. No se asume ninguna responsabilidad en caso de daño o pérdida — guarde sus datos antes de cualquier manipulación. Para obtener ayuda, contacte a un socio o inicie una solicitud de oferta gratuita. También descubra el rol del proveedor de alojamiento.
Prólogo
Mailman
es una aplicación libre que permite gestionar listas de distribución, listas de discusión y boletines informativos.- Los archivos proporcionados permiten implementar
Mailman
fácilmente. - El servidor y su firewall se implementan con
Terraform
, una herramienta deInfrastructure as Code (IaaC)
, y su configuración se realiza conAnsible
. - Este sistema le permite crear listas de discusión para sus diferentes contactos (dirección@, comercioelectrónico@…).
Preparación…
… de su entorno
- Disponer de un Servicio de Correo de Infomaniak es indispensable para seguir este tutorial.
- Descargue los archivos necesarios para implementar
Mailman
en el Public Cloud a través de este repositorio de GitHub.
… del Entorno de Correo
- Cree una dirección
mailman@domain.xyz
(ayuda) y guarde la contraseña (utilizada para configurar el servidor). - Agregue los siguientes alias (ayuda) :
- postorius
- mylist
- mylist-bounces
- mylist-confirm
- mylist-join
- mylist-leave
- mylist-owner
- mylist-request
- mylist-subscribe
- mylist-unsubscribe
La preparación de su entorno de mensajería está completa, ¡es hora de implementar Mailman!
… del Public Cloud
- Cree un proyecto Public Cloud y un usuario (ayuda).
- Atención: la contraseña del Public Cloud debe ser segura. Se recomienda encarecidamente la autenticación 2FA en su cuenta de Infomaniak.
- Haga clic aquí para acceder al panel de control de OpenStack y utilice la identificación
PCU-XXXXXX
con la contraseña definida. - Descargue su archivo
openrc
. Le permite autenticarse como administrador en la línea de comandos (contiene información como la identificación, la contraseña y el centro de datos).
Está listo para conectarse a la administración de OpenStack.
… de la instancia
Para hacer que su futura instancia sea accesible a través de SSH, HTTP y HTTPS, cree un grupo de seguridad
con el siguiente comando:
openstack security group create --description "Ports 22 - 80 - 443 pour Mailman" mailman-sec
Agregue luego las reglas necesarias:
openstack security group rule create --dst-port 80 --protocol TCP mailman-sec
openstack security group rule create --dst-port 443 --protocol TCP mailman-sec
openstack security group rule create --dst-port 22 --protocol TCP mailman-sec
Estos pasos también se pueden realizar desde el panel de control Horizon, en la pestaña Red → Grupos de seguridad. Consulte la documentación de Cloud sobre este tema.
Despliegue ahora la instancia que alojará Mailman
con el comando:
openstack server create --flavor a1-ram2-disk20-perf1 --security-group mailman-sec --network ext-net1 --key-name <votre-clé> --image "Debian 11.5 bullseye" mailman3
Una vez conectado a la máquina, actualícela:
sudo apt update && sudo apt upgrade -y
Instale el cliente openstack
:
sudo apt install python3-openstackclient -y
Instale Ansible
para desplegar Mailman
automáticamente:
sudo apt install ansible -y
Despliegue de Mailman
Para desplegar Mailman
, importe su clave SSH y el archivo OpenRC
a través de SFTP en la máquina de instalación.
Utilice herramientas como putty
, termius
o mobaxterm
(o cualquier cliente SSH/SFTP) con la siguiente información:
- IP: dirección IP de la máquina creada
- Puerto:
22
- Clave SSH: archivo
.pem
- Usuario:
debian
En esta guía, se utilizó Termius
para la transferencia SFTP.
Descargue los archivos necesarios:
wget https://github.com/reneluria/mailman-cloud
Mueva luego los archivos:
mv cle.pem mailman/
mv PCP-XXXX.sh mailman/
Acceda a la carpeta:
cd mailman/
Proteja la clave asignándole los permisos adecuados:
sudo chmod 600 tf-keypair.pem
Cree un archivo inventory
para configurar SMTP, el dominio, etc.:
nano inventory
Complete este modelo con sus datos:
mailman ansible_host=xxx.xxx.xxx.xxx
[all:vars]
ansible_python_interpreter=/usr/bin/python3
ansible_user=debian
ansible_ssh_private_key_file=id_tf_keypair
fqdn=mailman.<yourdomain>
mail_host=mail.infomaniak.com
mail_account=mailman@<yourdomain>
mail_password=<email_password>
mailman_user=mailman
mailman_password=<interface_password>
mailman_domain=<yourdomain>
mailman_email=<your_email>
Guarde con Ctrl + S
, luego salga con Ctrl + X
.
Inicie el despliegue:
ansible-playbook playbook.yml -D
Mailman
ahora está accesible en su dirección IP: X.X.X.X/mailman3
Conectarse
Conéctate con las credenciales definidas en el archivo inventory
para:
- Crear un dominio y luego una lista « malista »
En los parámetros de la lista, se recomienda:
- Atenuaciones DMARC: « Reemplazar de por la dirección de la lista »
- Modificar los mensajes: « Responder a la lista » y « Responder a la primera banda »