mailcow: dockerized es una pila de correo completa autohospedada (Postfix, Dovecot, Rspamd, ClamAV opcional, MariaDB, Redis, Nginx, SOGo, interfaz web) gestionada con Docker y Docker Compose.
Para qué sirve mailcow
- Ejecutar su propio servidor de correo con una única interfaz de administración.
- Gestionar dominios, buzones, alias, cuotas, ajustes antispam y más sin montar manualmente MTA/MDA/spam/webmail.
La entregabilidad requiere DNS correcto (MX, SPF, DKIM, DMARC) y PTR que coincida con su nombre de host. Consulte requisitos DNS de mailcow.
Requisitos oficiales del sistema
Según Prepare your system:
| Recurso | Mínimo |
|---|---|
| RAM | 6 GiB + 1 GiB swap (pila por defecto) |
| Disco | 20 GiB (sin contar buzones) |
| Arq. | x86_64 o ARM64 |
No compatible: OpenVZ, Virtuozzo, LXC, NAS tipo Synology/QNAP. Use virtualización completa (KVM, etc.).
Libere los puertos del host 25, 80, 110, 143, 443, 465, 587, 993, 995, 4190 antes de instalar:
Bashss -tlpn | grep -E -w '25|80|110|143|443|465|587|993|995|4190'
Opcional: SKIP_CLAMD=y y SKIP_FTS=y en mailcow.conf para reducir RAM.
1 — Paquetes del sistema (Debian/Ubuntu)
Según Install mailcow:
Bashsudo apt update sudo apt install -y git openssl curl gawk coreutils grep jq
2 — Docker Engine y Compose v2
Docker ≥ 24.0.0, Compose ≥ 2.0. Instalación recomendada:
Bashcurl -sSL https://get.docker.com/ | CHANNEL=stable sudo sh sudo systemctl enable --now docker sudo apt update sudo apt install -y docker-compose-plugin
Verifique: docker --version y docker compose version (nota: docker compose, no docker-compose).
3 — Clonar y generar configuración
Bash1sudo su 2umask 0022 3cd /opt 4git clone https://github.com/mailcow/mailcow-dockerized 5cd mailcow-dockerized 6./generate_config.sh
Edite mailcow.conf según sea necesario. Para hosts sin IPv6 adecuada, mailcow 2025-09+ admite:
BashENABLE_IPV6=false
Luego reinicie la pila completa — consulte Disable IPv6.
4 — Arranque
Bashdocker compose pull docker compose up -d
Interfaz de administración: https://YOUR_MAILCOW_HOSTNAME/admin
Inicio de sesión por defecto: admin / moohoo — cámbielo de inmediato.
Seguridad tras el inicio de sesión
- Cambie la contraseña de administrador en la interfaz.
- Active 2FA — Two-Factor Authentication.
- Asegure la sincronización horaria NTP (
timedatectl status). - Publique DKIM desde la interfaz + registros TXT SPF y DMARC.
- Firewall: mailcow advierte que UFW/firewalld puede entrar en conflicto con Docker; prefiera reglas en la cadena
DOCKER-USER— consulte Firewall & Ports en prerequisite-system.
MTU distinto de 1500
Ajuste com.docker.network.driver.mtu como en install troubleshooting.
Restablecer contraseña de administrador
Bashcd /opt/mailcow-dockerized ./helper-scripts/mailcow-reset-admin.sh
Consulte Reset passwords.
Lectura adicional: GitHub — mailcow-dockerized.