# Mail-provisionering aamos.systems — verksamhetsstruktur (2026-06-06) **Trigger:** Erik: "sätta upp fullständiga korrekta epost för varje verksamhet och verksamhetsdel. Vi ska ha alla resurser i systemet." → "använd resoneringsorchestern och ta fram det bästa alternativet sen KÖR". ## Nuläge upptäckt (verifierat) - **66 domäner** i Route53 (hela landvex.* + quixzoom.* landsportfölj, aamos.ai, aamos.systems, wavult.com, döda: pixdrift/corpfitt/hypbit) - **Mailu 2.0** full stack live (postfix/dovecot/rspamd/admin/webmail), docker, utgående via Resend-relay - Mailserver: mail.wavult.com @ 16.170.83.169. TLS-cert ENDAST mail.wavult.com (ej mail.aamos.systems) - Hade 9 maildomäner / 32 konton — men aamos.systems (CANON-domänen) fanns INTE som maildomän ## Resoneringsorkester → bästa alternativ Modell: **primärdomän per verksamhet + standardiserade funktionsadresser + alias-routing**. INTE 660 brevlådor (66×10). Riktiga brevlådor bara där mail läses; resten alias. MX → mail.wavult.com (cert-giltig), INTE mail.aamos.systems (cert saknas) — samma server, undviker TLS-fel. ## Genomfört (live-verifierat) **Domän:** aamos.systems tillagd i Mailu. **17 brevlådor:** - aamos.systems: erik, winston, dennis, johan, leon, bernt, info, support, hr, no-reply - landvex.com: info, support, no-reply - quixzoom.com: info, support, no-reply, zoomers **24 alias (routade):** - aamos.systems: sales/marketing→leon, billing/finance/invoice→winston, legal→dennis, security→johan, careers→hr, contact/postmaster/abuse→info - landvex.com: sales→info, billing→winston, legal→dennis, security→johan, contact/postmaster→info - quixzoom.com: sales→info, legal→dennis, security→johan, contact/postmaster→info - aamos.ai: info/support/erik/contact → aamos.systems (catch-all-redirect) **DNS (Route53 zon Z03908683A2AIMRZR85BQ, live-verifierat):** - MX: 10 mail.wavult.com - SPF: v=spf1 mx a:mail.wavult.com include:spf.resend.com ~all - DKIM: wavult._domainkey.aamos.systems (RSA 2048, chunkad i 255-bitar) - DMARC: p=none (mjuk start, rua→postmaster@aamos.systems). HÖJ till p=quarantine/reject när flödet verifierats. **LIVE-TEST:** bernt@aamos.systems → info@aamos.systems → `status=sent (250 2.0.0 Saved)`. ✅ ## OMSTRUKTURERING — ROLLER FÖRE NAMN (2026-06-06 18:54, Erik) **Direktiv:** "Leon är borta. Förutsätt att hela bolaget drivs av 4 personer. Tänk ROLLER före namn. Oavsett land (inom EU och USA) ska det gå mot mitt team. Övriga marknader äger vi bara tekniken+standarden, där auktoriserar vi lokala marknader." **Teamet (4 roller):** CEO=Erik, CFO=Winston, COO/Legal=Dennis, CTO=Johan. CMO/commercial VAKANT (Leon borta) → temporärt → CEO. **Trelagersarkitektur (byt EN mappning när folk slutar):** 1. Funktionsadress (sales/billing/legal/security) → 2. ROLL (cmo/cfo/coo/cto@aamos.systems) → 3. Person (erik/winston/dennis/johan). - Roll-brevlådor skapade: ceo, cfo, coo, cto @aamos.systems (+ cmo-alias). - ROLL→person: ceo→erik, cfo→winston, coo→dennis, cto→johan, **cmo→erik (VAKANT, omfördela)**. - Alla funktionsadresser på aamos.systems/landvex.com/quixzoom.com pekar nu på ROLL, aldrig direkt person. - **leon@aamos.systems RADERAD** (tom mailbox). De brutna sales/marketing→leon är fixade. - **LIVE-VERIFIERAT:** sales@aamos.systems→cmo→ceo→erik (Saved). billing@landvex.com→cfo→winston (Saved). Multi-hop fungerar. - Creds: /opt/mailu/credentials-roles-20260606-185857.txt **GEOGRAFISK PRINCIP (att implementera på övriga ~60 domäner):** - **EU + USA-domäner → mitt team** (samma roll-routing som ovan). - **Övriga marknader → INTE mitt team.** Vi äger teknik+standard, auktoriserar lokala partners. Dessa domäner ska EJ routa till aamos.systems-teamet. Vänta på Eriks "mer info" om partner-modell innan bygge. Kandidat: per-land partner@-adress eller hold (MX+DMARC-reject) tills auktoriserad partner finns. ## Kvarstår - ~~Cred-filer i klartext~~ ✅ SÄKRAT 2026-06-06 19:10: Alla 21 mailkonto-lösen → **AWS Secrets Manager** `aamos/prod/mail-accounts` (ARN ...secret:aamos/prod/mail-accounts-NCx2TX). Klartext-filerna på servern + gateway-temp SHREDDADE. Lösen passerade aldrig synlig logg (base64 via SSM, decode lokalt). - ⚠️ **VALVET FINNS INTE:** HashiCorp Vault nedlagt (ingen container/tjänst/port 8200, gamla IP 172.31.42.221 dött, vault.aamos.systems=503). Använd AWS Secrets Manager istället — där ligger redan /wavult/prod/* (db-url, identity, gitea-token). - ⚠️ Instans-rollen (platform-ec2-ssm-role) saknar secretsmanager-access. Åtkomst går via profil **platform-ai-agent** (Bernts default AWS-profil på gateway). - Minor: secret innehåller även leon@ (raderad mailbox) — ofarligt, städas vid nästa rotation. - **TLS-cert:** lägg till mail.aamos.systems som SAN på Mailu-certet (annars måste klienter använda mail.wavult.com som server). Idag funkar mail men klient-config pekar på mail.wavult.com. - **DMARC p=none → reject:** höj efter någon vecka när DKIM/SPF verifierats i praktiken. - **Resterande ~60 domäner:** landvex.se/.de/.eu/.fr etc + quixzoom landsdomäner har INGEN mail än. Beslut behövs: catch-all-redirect per landsdomän → primär (landvex.com/quixzoom.com)? Eller bara MX+DMARC-reject för att blocka spoofing på oanvända? - **facts.mjs:** erik@aamos.systems m.fl. stämmer nu med riktiga brevlådor (gapet jag skapade tidigare är stängt). - **Canary (parkerad):** nivåindelat larm Telegram→Mail→SMS. Mail-delen kan nu använda no-reply@aamos.systems. SMS kräver höjd SNS-gräns ($1→$20).