mirror of
https://github.com/profullstack/agentbbs.git
synced 2026-08-14 06:47:28 +00:00
Self-host Mailu mail stack at mail.profullstack.com
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>
This commit is contained in:
parent
49db5e103d
commit
cb09300357
8 changed files with 464 additions and 1 deletions
44
deploy/mailu/mailu.env.example
Normal file
44
deploy/mailu/mailu.env.example
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
# 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
|
||||
Loading…
Add table
Add a link
Reference in a new issue