The native installer supports a clean Ubuntu Server 24.04 LTS VPS with Python 3.12. The reference deployment is single-node and receive-only.
- root or sudo access
- public IPv4 or IPv6 address
- inbound ports 25, 80 and 443 allowed
A/AAAArecords for public, application and mail hostnamesMXrecord for the mail domain pointing to the mail hostname- provider support for inbound SMTP on port 25
- PTR/rDNS review for the mail hostname
| Type | Name | Value |
|---|---|---|
| A/AAAA | example.com |
server address |
| A/AAAA | app.example.com |
server address |
| A/AAAA | mail.example.com |
server address |
| MX | example.com |
10 mail.example.com. |
Plan mode validates arguments and prints the intended layout without changing the server:
./install.sh --domain example.com --admin-email admin@example.com \
--server-ip 203.0.113.10 --non-interactive --planchmod +x install.sh
sudo ./install.sh --domain example.com --admin-email admin@example.com \
--server-ip 203.0.113.10 --non-interactiveOptional flags include custom application/mail/public hostnames, --www, a password environment variable, --repair, and --skip-dns-check. Use ./install.sh --help for the authoritative list.
- Argument and operating-system validation
- DNS and port preflight
- Package installation
- Service identities and filesystem permissions
- Secret generation and database bootstrap
- Application and public-site deployment
- Postfix, Dovecot, Nginx and systemd configuration
- TLS certificate issuance
- Database migration, static collection and mailbox provisioning
- Acceptance checks and installation marker
- Store
/etc/vibmail/installer-secrets.envsecurely. - Sign in at the configured application hostname.
- Confirm
postmaster@DOMAINandabuse@DOMAIN. - Send an external test message and verify LMTP delivery and ingestion.
- Run the health and verification scripts.
- Create and test a backup before onboarding users.
Do not run the clean installer over an unreviewed existing mail stack. Use the documented upgrade/repair process and take a verified backup first.