Durante un tiempo he estado utilizando Cloudflare Email Routing en varios dominios como forma de organizar mi mail y también por temas de privacidad. Es una herramienta bastante top prácticamente gratis que te da Cloudflare si tienes un dominio con ellos.
El problema de la mayoría de este tipo de servicios que te da Cloudflare es que prácticamente la UI esta hecha para empresas y no para uso diario. Si lo utilizabais sabréis que entrar al panel de control de Cloudflare cada vez que quieres crear un alias rápido es bastante mierdon, especialmente desde el móvil.
Para solucionar esto he creado vuzon: Interfaz web sencilla, autoalojable y optimizada para móviles que se conecta directamente a la API de Cloudflare para gestionar Email Routing.
Características principales
- Crear alias/reglas.
- Gestión de destinatarios.
- Habilitar/Deshabilitar reglas.
- UI responsivea y PWA.
Versión self-hosted
Para instalarla en tu servidor, tienes el control de todo y funciona con tu cuenta y dominios de Cloudflare. Dejo una guía más adelante.
Versión pública (beta)
Si no quieres autohospedarlo, estoy desarrollando vuzon como servicio, donde cada usuario opera con subdominios.
- Web: vuzon.cc
Instalación rápida mediante docker compose
Esto cambia bastante según en que máquina con docker estéis pero bueno, lo básico sería esto:
1) Crear y configurar el .env
# Token con permisos de edición para Email Routing en tu zona y cuenta
CF_API_TOKEN=tu_token_api_de_cloudflare
DOMAIN=tudominio.com
# Credenciales para acceder al panel de vuzon
AUTH_USER=admin
AUTH_PASS=tu_contraseña_segura
# URL pública (opcional, para referencia)
BASE_URL=https://vuzon.tudominio.com
# Puerto donde se expondrá el servicio
VUZON_PORT=8001
# Secreto cookie
SESSION_SECRET=tu_secreto_seguro
Nota:
CF_API_TOKENnecesita permisos de Read & Edit para Email Routing Addresses (Cuenta) y Email Routing Rules (Zona).
2) Crea el docker-compose.yml
services:
vuzon:
container_name: vuzon
image: ghcr.io/kernel-nomad/vuzon
env_file:
- .env
restart: unless-stopped
ports:
- "${VUZON_PORT:-8001}:8001"
volumes:
- ./sessions:/app/sessions
Una vez iniciado, podrás acceder a la interfaz en http://localhost:8001 (o la IP de tu servidor) e iniciar sesión con el usuario y contraseña que definiste en el .env.