Getting Started

Learn how to install and configure CeyMail Mission Control on your server.

CeyMail Mission Control is a self-hosted mail server management platform that transforms the complexity of running your own email infrastructure into a single command. It installs and configures Postfix, Dovecot, OpenDKIM, SpamAssassin, MariaDB, and a modern web dashboard -- so you can manage domains, users, DKIM keys, mail queues, AI spam screening, and more without touching config files.

Prerequisites

Before installing CeyMail, make sure you have the following ready:

  • A VPS or dedicated server running Ubuntu 22.04 / 24.04 or Debian 11 / 12
  • At least 512 MB of RAM (1 GB+ recommended, 2 GB+ for AI spam screening)
  • A registered domain name with access to DNS management
  • A public IPv4 address that is not on any major email blacklists
  • Root access (the installer must run as root)
  • An external email address for Let's Encrypt certificate notifications (e.g., a Gmail address -- cannot be on the domain you are setting up)

Check your IP reputation

Before installing, verify your server IP is clean using tools like MXToolbox or MultiRBL. Sending email from a blacklisted IP will cause delivery failures regardless of how well your server is configured.

Step 1: Prepare DNS records

The installer will attempt to provision SSL certificates via Let's Encrypt, which requires your domains to resolve to the server. You need two A records -- one for the mail hostname and one for the dashboard subdomain.

TypeHostValue
Amail.example.comYour server IP (e.g., 203.0.113.10)
Amc.example.comYour server IP (e.g., 203.0.113.10)

Replace example.com with your actual domain and 203.0.113.10 with your server's public IP.

Verify the A records have propagated before continuing:

bash
dig +short mail.example.com
dig +short mc.example.com

Both should return your server IP.

DNS propagation

If DNS has not propagated when the installer runs, SSL setup will be skipped and the dashboard will be served over HTTP. You can re-run the setup script after DNS propagates to enable SSL.

Step 2: Install CeyMail

SSH into your server as root and run:

bash
curl -sSL https://ceymail.com/install | sudo bash

The installer is interactive -- it will prompt you for three pieces of information:

  1. Mail domain -- The hostname for your mail server (e.g., mail.example.com)
  2. Dashboard subdomain -- Where Mission Control will be accessible (e.g., mc.example.com)
  3. Let's Encrypt email -- An external email for SSL certificate notifications (e.g., you@gmail.com)

After collecting your inputs, the installer runs through the following steps automatically:

  • Detects and configures your web server (Nginx or Apache)
  • Installs Node.js 22, MariaDB, and system dependencies
  • Creates the ceymail and ceymail_dashboard databases
  • Generates DH parameters for Postfix TLS
  • Downloads and deploys the Mission Control dashboard
  • Configures the firewall (UFW) with required ports
  • Provisions SSL certificates via Let's Encrypt (if DNS is ready)

The entire process typically completes in 3-5 minutes on a standard VPS. When finished, you will see a summary with your dashboard URL.

Verbose mode

If you need to see full output during installation (useful for debugging), use verbose mode: curl -sSL https://ceymail.com/install | sudo bash -s -- -v

Step 3: Complete the setup wizard

Open the dashboard URL shown in the installer summary (e.g., https://mc.example.com). You will be redirected to the Welcome Wizard at /welcome, which walks you through:

  1. Database verification -- Confirms the MariaDB connection is working
  2. Admin account creation -- Set your dashboard username and password
  3. Completion -- Setup is finalized and you are redirected to log in

After logging in, you are redirected to the Install Wizard at /install, which configures the mail services:

  1. System check -- Verifies OS, disk, RAM, and CPU meet requirements
  2. PHP version selection -- Choose which PHP version to install (for Roundcube webmail)
  3. Core package installation -- Installs Postfix, Dovecot, OpenDKIM, SpamAssassin, and more
  4. Domain configuration -- Confirms your mail hostname and domain
  5. SSL certificates -- Generates mail-specific SSL certificates
  6. Service configuration -- Writes Postfix, Dovecot, and OpenDKIM config files
  7. DKIM setup -- Generates DKIM signing keys for your domain
  8. Permissions -- Sets correct file ownership and modes
  9. Service activation -- Starts and enables all mail services
  10. Webmail -- Installs and configures Roundcube webmail
  11. Summary -- Displays all DNS records you need to add

Step 4: Add DNS records

After the install wizard completes, the summary page displays all DNS records you need to add at your domain registrar:

TypeHostValue
Amail.example.comYour server IP
MX@mail.example.com (priority 10)
TXT@v=spf1 mx -all
TXTceymail._domainkey(DKIM public key shown in dashboard)
TXT_dmarcv=DMARC1; p=quarantine; rua=mailto:dmarc@example.com

You can copy these directly from the install wizard's summary page or from the DNS page in the dashboard.

Step 5: Set reverse DNS

Contact your hosting provider to set the PTR (reverse DNS) record for your server IP to point to your mail hostname:

IP:     203.0.113.10
PTR:    mail.example.com

Many receiving mail servers reject or deprioritize email from servers without valid reverse DNS.

Next steps

  • Installation -- Detailed system requirements, firewall configuration, and troubleshooting
  • Basic Configuration -- DNS records, SSL, SMTP relay, and AI spam screening
  • API Reference -- Manage domains, users, and aliases through the dashboard API