mirror of
https://github.com/profullstack/agentbbs.git
synced 2026-08-13 14:27:27 +00:00
Members get a real <name>@mail.profullstack.com mailbox, served by a
co-located Mailu (Postfix+Dovecot+Roundcube+rspamd) Docker stack. Coexists
with the host Caddy: Mailu owns the mail ports; Caddy fronts the loopback
webmail and supplies the TLS cert (TLS_FLAVOR=mail), the same cert-copy
pattern as the Ergo/IRC and NNTP services.
- deploy/mailu/: docker-compose.yml, mailu.env.example, refresh-certs.sh
(copy Caddy's mail cert into Mailu on renewal), provision-mailbox.sh
(member mailbox + Dovecot gateway master user), README.
- setup.sh: MAIL flag + mail.${DOMAIN#*.} Caddy site + §9e (cert timer,
mail-port firewall, conditional compose bring-up, AGENTBBS_MAIL_* env).
- docs/mail.md: architecture, DNS (MX/SPF/DKIM/DMARC/PTR), gateway
master-user setup, env, provisioning, webmail-only policy.
Apex profullstack.com stays corporate; member mail is only on mail.*.
Infra is inspection-verified (bash -n, YAML lint); deploy pending.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
44 lines
2.2 KiB
Text
44 lines
2.2 KiB
Text
# Mailu configuration for mail.profullstack.com — copy to deploy/mailu/mailu.env
|
|
# and fill the secrets. See docs/mail.md for the full setup (DNS, certs, gateway).
|
|
#
|
|
# Generate secrets with: openssl rand -hex 16
|
|
|
|
# --- General -----------------------------------------------------------------
|
|
SECRET_KEY=CHANGEME_16_HEX # openssl rand -hex 16
|
|
DOMAIN=mail.profullstack.com # member addresses are <name>@mail.profullstack.com
|
|
HOSTNAMES=mail.profullstack.com,smtp.profullstack.com
|
|
POSTMASTER=postmaster
|
|
# Apex profullstack.com is reserved for corporate mail and is NOT served here.
|
|
|
|
# TLS_FLAVOR=mail: Mailu does NOT run its own ACME (Caddy owns :80/:443). We feed
|
|
# it certs copied from Caddy's mail.profullstack.com cert (deploy/mailu/refresh-certs.sh).
|
|
TLS_FLAVOR=mail
|
|
|
|
# --- Features ----------------------------------------------------------------
|
|
ADMIN=true # the admin UI (fronted at /admin via Caddy, internal only)
|
|
WEBMAIL=roundcube # the only member-facing surface (https://mail.profullstack.com)
|
|
WEBDAV=none
|
|
ANTIVIRUS=none # set to clamav on a 4GB+ host
|
|
ANTISPAM=true
|
|
|
|
# --- Networking --------------------------------------------------------------
|
|
# Mailu's front binds the mail ports on the host and HTTP on loopback only;
|
|
# Caddy reverse-proxies https://mail.profullstack.com to BIND_ADDRESS4:80.
|
|
BIND_ADDRESS4=127.0.0.1
|
|
SUBNET=192.168.203.0/24
|
|
MESSAGE_SIZE_LIMIT=52428800 # 50 MB
|
|
|
|
# --- Gateway (the BBS reads/sends on behalf of members) ----------------------
|
|
# A Dovecot master user lets the agentbbs gateway open any member's mailbox with
|
|
# one secret (login "<name>*<master>"). Created by deploy/mailu/provision-mailbox.sh.
|
|
# Mirror these into the agentbbs service env:
|
|
# AGENTBBS_MAIL_DOMAIN=mail.profullstack.com
|
|
# AGENTBBS_MAIL_IMAP_ADDR=mail.profullstack.com:993
|
|
# AGENTBBS_MAIL_SMTP_ADDR=127.0.0.1:25
|
|
# AGENTBBS_MAIL_MASTER_USER=gateway
|
|
# AGENTBBS_MAIL_MASTER_PASS=<the master password you set>
|
|
|
|
# --- Admin bootstrap ---------------------------------------------------------
|
|
INITIAL_ADMIN_ACCOUNT=admin
|
|
INITIAL_ADMIN_DOMAIN=mail.profullstack.com
|
|
INITIAL_ADMIN_PW=CHANGEME_admin_password
|