# Mail-in-a-Box — One-Click Self-Hosted Email Server > Mail-in-a-Box turns a fresh Ubuntu server into a fully configured email stack with SMTP, IMAP, spam filtering, webmail, DNS, and calendar — all managed through a single web admin panel. ## Install Save as a script file and run: # Mail-in-a-Box — One-Click Self-Hosted Email Server ## Quick Use ```bash curl -s https://mailinabox.email/setup.sh | sudo bash ``` ## Introduction Mail-in-a-Box removes the complexity of running your own email server by automating every step of the installation and configuration process. It bundles Postfix, Dovecot, Roundcube, Nextcloud contacts/calendar, SpamAssassin, OpenDKIM, and a DNS server into a single coherent stack that can be deployed on a fresh Ubuntu box in under thirty minutes. ## What Mail-in-a-Box Does - Configures a complete SMTP and IMAP server with TLS encryption out of the box - Sets up DNS records (SPF, DKIM, DMARC, MX, A/AAAA) automatically for reliable delivery - Provides Roundcube webmail and a Nextcloud instance for contacts and calendars - Includes SpamAssassin and greylisting for inbound spam filtering - Offers a simple web-based admin panel for managing users, aliases, and DNS ## Architecture Overview Mail-in-a-Box is a set of Bash scripts that provision and configure well-known open-source components on a single Ubuntu server. Postfix handles outbound and inbound SMTP; Dovecot serves IMAP; Nginx sits in front of Roundcube and the admin panel; nsd provides authoritative DNS; and a Python-based management daemon exposes a REST API for the admin UI. Let's Encrypt certificates are obtained and renewed automatically via the same management daemon. ## Self-Hosting & Configuration - Requires a fresh Ubuntu 22.04 LTS server with at least 1 GB RAM and a static public IP - Needs a domain name with glue records pointing to the box's IP address - Run the setup script which walks through an interactive wizard for domain and first user - All configuration is stored under /home/user-data and can be backed up with the built-in backup tool - The admin panel at https://box.yourdomain.com/admin lets you add mailboxes, aliases, and custom DNS ## Key Features - Single-command setup that configures the entire email stack in one pass - Automatic DNS hosting with correct SPF, DKIM, and DMARC records - Built-in nightly encrypted backups to S3-compatible storage or rsync targets - Integrated Roundcube webmail with Nextcloud contacts and calendar - Status checks dashboard that validates DNS, TLS, and mail delivery health ## Comparison with Similar Tools - **Mailu** — Docker-based mail suite with more modular architecture but requires Docker orchestration knowledge - **Mailcow** — Feature-rich Docker mail stack with SOGo groupware, more complex to manage - **iRedMail** — Script-based installer like Mail-in-a-Box but targets more Linux distributions with less opinionated defaults - **Modoboa** — Python-based mail hosting platform with a web UI, more granular control but heavier setup ## FAQ **Q: Can I migrate existing email to Mail-in-a-Box?** A: Yes. Use the IMAP migration feature in the admin panel or any IMAP sync tool such as imapsync to move messages from your old provider. **Q: Does it support multiple domains?** A: Yes. You can host mailboxes and aliases across as many domains as you want from a single installation. **Q: How does it handle spam?** A: Inbound mail passes through SpamAssassin and greylisting. Outbound reputation is protected by automatic DKIM signing, SPF, and DMARC records. **Q: What about updates?** A: Run the setup script again to upgrade. The process is idempotent and preserves your data and configuration. ## Sources - https://github.com/mail-in-a-box/mailinabox - https://mailinabox.email/guide.html --- Source: https://tokrepo.com/en/workflows/7abd312f-401c-11f1-9bc6-00163e2b0d79 Author: Script Depot