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 a Public Cloud Infomaniak!
⚠️ Esta guía está dirigida exclusivamente a un público con un alto nivel de competencia técnica. No se asume ninguna responsabilidad por daños o pérdidas - respalde sus datos antes de cualquier manipulación. Para obtener ayuda adicional contacte a un socio o lance gratuitamente una oferta — también descubra el rol del proveedor de alojamiento.
Prólogo
Mailman
es una aplicación libre para gestionar listas de distribución, listas de discusión y boletines informativos.- Estos archivos están preparados para que puedas implementar fácilmente
Mailman
. - El despliegue del servidor y su firewall se realiza con
TerraForm
, herramienta deInfrastructure as a Code (IaaC)
, y la configuración del servidor conAnsible
. - El software le permite crear listas de discusión para sus diferentes contactos (direction@, ecommerce@…).
Preparación…
… de su entorno
- Tener un Service Mail Infomaniak para realizar este tutorial.
- Los archivos relacionados con el despliegue de
Mailman
en Public Cloud están disponibles para su descarga en este repositorio de Infomaniak.
… del Entorno de Correo
- Cree una dirección
mailman@domain.xyz
(ayuda) y guarde cuidadosamente la contraseña creada (se utilizará en la configuración del servidor). - Añada los siguientes alias (ayuda):
- postorius
- mylist
- mylist-bounces
- mylist-confirm
- mylist-join
- mylist-leave
- mylist-owner
- mylist-request
- mylist-subscribe
- mylist-unsubscribe
TRANSLATION_ERROR
… del Public Cloud
- Primero, cree un proyecto Public Cloud y 1 usuario (ayuda)
- Tenga cuidado con la contraseña de Public Cloud, se recomienda fuertemente la autenticación 2FA en su cuenta Infomaniak.
- Haga clic aquí para acceder al panel de Openstack e introduzca el
PCU-XXXXXX
con la contraseña definida anteriormente. - Descargue su archivo
openrc
, que le permite identificarse como administrador de su entorno desde la línea de comandos; contiene información como el datacenter donde se encuentran sus máquinas, su identificador, contraseña, etc.
Ahora dispone del archivo que podrá utilizar para conectarse a la administración de Openstack.
… de la instancia
Para hacer accesible su futura instancia en sus diferentes puertos de comunicación (SSH & HTTP & HTTPS), cree un grupo de seguridad
que permita asignar un grupo de reglas a una máquina con el siguiente comando:
openstack security group create —description "Port 22 - 80 - 443 pour Mailman" mailman-sec
Añada reglas al grupo de seguridad: mailman-sec
openstack security group rule create --dst-port 80 --protocol TCP mailman-secopenstack security group rule create --dst-port 443 --protocol TCP mailman-secopenstack security group rule create --dst-port 22 --protocol TCP mailman-sec
Puede realizar todas estas comandos de manera gráfica desde el dashboard Horizon en la pestaña Red -> Grupo de Seguridad (consulte la documentación cloud sobre este tema).
Despliegue la instancia que contendrá MailMan
. Para un uso en línea de comandos, puede usar el siguiente 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 que esté conectado a la máquina, actualícela:
sudo apt update && sudo apt upgrade -y
Instale el cliente openstack
:
sudo apt install python3-openstackclient -y
Instalación de Ansible
(permite desplegar mailman
de manera automática):
sudo apt install ansible -y
Despliegue de Mailman
Para desplegar Mailman
en la máquina, importe la clave SSH y tu archivo OpenRC
a través de SFTP en la máquina que ejecuta la configuración Ansible
.
Utilice software/clientes como putty
, termius
, mobaxterm
... (cualquier herramienta que maneje SSH / SFTP) para realizar la importación fácilmente, solo tendrá que proporcionar la siguiente información para conectarse a la máquina:
- IP de la máquina creada anteriormente
- puerto:
22
- clave SSH creada anteriormente: importar el archivo
.pem
- usuario:
debian
En esta guía, se ha utilizado el software Termius
para mover los archivos mediante SFTP a la máquina.
Descargue la carpeta que contiene los archivos de instalación:
wget https://github.com/reneluria/mailman-cloud
Ahora debes mover la clave SSH y el archivo PCP a la carpeta descargada:
mv cle.pem mailman/mv PCP-XXXX.sh mailman/
Moverse en el archivo:
cd mailman/
Definición del permiso 600
en la clave para protegerla y ejecutarla:
sudo chmod 600 tf-keypair.pem
Cree un archivo inventory
para definir los parámetros: SMTP, Domain…
nano inventory
Debe completar este archivo con la plantilla siguiente, modificando las líneas comentadas con sus variables de entorno:
mailman ansible_host
= IP pública de la VM objetivo
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=parano.ch
mailman_email=<your_email>
Ejecute el comando ctrl + s
luego ctrl + c
para salir de Nano
.
Siempre en el directorio mailman, ejecute el script con ansible
:
ansible-playbook playbook.yml -D
Mailman
ahora está desplegado en su dirección IP: X.X.X.X/mailman3
Conectarse
Inicia sesión en mailman con las credenciales proporcionadas en el archivo inventory
anteriormente para luego:
- > Crear un dominio -> crear mi lista "maliste"
En la lista de parámetros, modifique:
- Atenuaciones DMARC: se recomienda usar "Reemplazar de por la dirección de la lista
- Modificar los mensajes: se recomienda usar "Responder a la lista" y "Responder a la primera banda"