go-postfixadmin: panel moderno para tu servidor Postfix

Mascote do LinuxPro administrando as contas de e-mail no painel, com o gopher do Go segurando um envelope

Quien ya montó un servidor de correo con Postfix + Dovecot conoce el ritual: el PostfixAdmin clásico en PHP, un servidor web configurado solo para él y una interfaz que se quedó en el tiempo. El go-postfixadmin es mi respuesta moderna a eso: un único binario en Go con todo el frontend Vue 3 incrustado — panel web, API REST y herramientas de línea de comandos para administrar dominios, buzones, alias y transports de tu servidor Postfix. Sin PHP, sin servidor web extra, sin carpeta de assets: descárgalo, ejecútalo, adminístralo.

Qué hace

  • Gestión completa de correo — dominios, buzones (con cuota), alias, alias de dominios y transports de Postfix
  • Portal de autoservicio — el usuario final cambia su propia contraseña, configura reenvío y respuesta automática de vacaciones (mediante Dovecot Sieve) sin abrir un ticket
  • API REST de producción — versionada (/api/v1), JWT con refresh httpOnly, claves de API persistentes y Swagger interactivo para explorar
  • RBAC — separación entre superadmin y admin de dominio, con permisos granulares
  • CLI y automatización — importación/exportación CSV, creación de buzones en lote, copia de seguridad, informes de cuota y lectores de registro
  • Observabilidad — registro de acciones administrativas e ingesta del registro de correo (readlog)
  • Interfaz en portugués — UI y mensajes totalmente traducidos (pt_BR, inglés y español)
  • Dos bases de datos — MariaDB/MySQL y PostgreSQL, mediante GORM

Instalación en minutos

Cada release publica binario, .deb y .rpm — elige el tuyo en Releases. En Debian/Ubuntu:

wget https://github.com/jniltinho/go-postfixadmin/releases/download/v1.0.86/go-postfixadmin_1.0.86_amd64.deb
sudo apt install ./go-postfixadmin_1.0.86_amd64.deb

En la familia Red Hat:

sudo dnf install https://github.com/jniltinho/go-postfixadmin/releases/download/v1.0.86/go-postfixadmin-1.0.86-1.x86_64.rpm

Genera la configuración, ejecuta las migraciones de la base de datos y levanta el servidor:

postfixadmin --generate-config
postfixadmin migrate
postfixadmin migrate rbac
postfixadmin server

El panel se abre en http://localhost:8080 — y con server.swagger_enable = true en la configuración, la documentación viva de la API está en /swagger/.

¿Prefieres Docker?

docker run -p 8080:8080 
  -e DB_URL="postfix:senha@tcp(seu-db:3306)/postfix?charset=utf8mb4&parseTime=True" 
  jniltinho/go-postfixadmin:latest

El repositorio incluye un docker-compose.yml listo con MariaDB y creación automática del admin — toda la pila se levanta con un solo comando.

Integración con Postfix y Dovecot

go-postfixadmin utiliza el mismo modelo de datos consolidado por PostfixAdmin: Postfix y Dovecot leen las tablas de dominios, buzones y alias directamente desde la base de datos. Las guías paso a paso del servidor completo están en el repositorio — MariaDB e PostgreSQL. Incluso incluye un servidor TCP de transport integrado para servir transport_maps a Postfix en tiempo real.

Bajo el capó

Backend en Go 1.26 (Echo v5, GORM, Cobra, Zerolog, OpenAPI mediante Swaggo); frontend Vue 3 + TypeScript + Tailwind v4 compilado dentro del binario. El ejecutable sale comprimido con UPX y los paquetes .deb/.rpm se generan mediante GitHub Actions en cada release. Licencia MIT.

Pruebe

Si administras Postfix — desde un dominio personal hasta cientos de clientes — go-postfixadmin fue hecho para eliminar la fricción del camino: un binario, una base de datos, un panel bonito y una API de verdad. Instala, levanta el docker-compose de prueba y cuéntame qué te parece: las estrellas y las issues en GitHub son bienvenidas, y la página de contacto está abierta a casos de uso y dudas.