Infrastructure: Mailserver auf VPS einrichten (Maddy + Snappymail) #101

Closed
opened 2026-05-17 19:30:31 +00:00 by jreinemann-euris · 0 comments
jreinemann-euris commented 2026-05-17 19:30:31 +00:00 (Migrated from github.com)

Ziel

Leichtgewichtigen Mailserver auf dem 1984 Hosting VPS (Island) einrichten mit eigener Mailadresse, IMAP-Zugang und Webmail-Oberfläche.

Technologie-Auswahl

Komponente Technologie Begründung
Mailserver (SMTP+IMAP) Maddy All-in-One Go-Binary, ~30-50 MB RAM, DKIM/SPF/DMARC built-in
Webmail Snappymail Leichtgewichtig (~15 MB RAM), PHP, RainLoop-Fork
Spam-Abwehr Maddy built-in SPF, DKIM, DMARC, DNSBL, Greylisting – kein extra Dienst nötig

RAM-Budget (VPS: 1 GB)

Dienst RAM
Ktor-Server ~384 MB
PostgreSQL ~100 MB
Caddy ~15 MB
Backup ~10 MB
Maddy ~50 MB
Snappymail ~15 MB
Gesamt ~575 MB / 1024 MB

Swap-File (1 GB) als Sicherheitspuffer anlegen.

Implementierungs-Schritte

Phase 1: DNS & Vorbereitung

  • A-Record mail.bollwerk.online195.246.231.210
  • MX-Record bollwerk.onlinemail.bollwerk.online (Prio 10)
  • SPF TXT-Record: v=spf1 a mx ip4:195.246.231.210 -all
  • PTR (rDNS) bei 1984 auf mail.bollwerk.online ändern
  • Swap-File (1 GB) auf VPS anlegen

Phase 2: Maddy Mailserver

  • Maddy Docker-Container konfigurieren + deployen
  • DKIM-Key generieren
  • DKIM TXT-Record in DNS setzen
  • DMARC TXT-Record: v=DMARC1; p=none; rua=mailto:postmaster@bollwerk.online (Test-Modus)
  • Firewall-Ports öffnen: 25, 465, 587, 993
  • TLS-Zertifikate (Let's Encrypt via Caddy oder Maddy-eigenes ACME)
  • Postfach/User anlegen

Phase 3: Webmail

  • Snappymail Docker-Container deployen
  • Caddy-Config erweitern: mail.bollwerk.online → Snappymail (:8888)
  • Snappymail mit Maddy IMAP verbinden

Phase 4: Validierung

  • Test: Mail senden an externe Adresse (Gmail/Outlook)
  • Test: Mail empfangen von externer Adresse
  • Test: Webmail Login + Lesen/Senden
  • mail-tester.com Score prüfen (Ziel: 9+/10)
  • DMARC-Policy auf p=reject hochstufen

Architektur

Internet
   ├── :443 (HTTPS) → Caddy → bollwerk.online → Ktor
   │                        → mail.bollwerk.online → Snappymail
   ├── :25  (SMTP)  → Maddy (Empfang)
   ├── :465 (SMTPS) → Maddy (Submission)
   ├── :587 (Submission) → Maddy (STARTTLS)
   └── :993 (IMAPS) → Maddy (IMAP)

Risiken

  • RAM-Knappheit: Swap-File als Puffer, Monitoring einrichten
  • IP-Reputation: SPF/DKIM/DMARC korrekt setzen, ggf. Warmup
  • PTR mismatch: Muss bei 1984 geändert werden, sonst Gmail/Outlook rejecten
## Ziel Leichtgewichtigen Mailserver auf dem 1984 Hosting VPS (Island) einrichten mit eigener Mailadresse, IMAP-Zugang und Webmail-Oberfläche. ## Technologie-Auswahl | Komponente | Technologie | Begründung | |---|---|---| | Mailserver (SMTP+IMAP) | **Maddy** | All-in-One Go-Binary, ~30-50 MB RAM, DKIM/SPF/DMARC built-in | | Webmail | **Snappymail** | Leichtgewichtig (~15 MB RAM), PHP, RainLoop-Fork | | Spam-Abwehr | Maddy built-in | SPF, DKIM, DMARC, DNSBL, Greylisting – kein extra Dienst nötig | ## RAM-Budget (VPS: 1 GB) | Dienst | RAM | |---|---| | Ktor-Server | ~384 MB | | PostgreSQL | ~100 MB | | Caddy | ~15 MB | | Backup | ~10 MB | | **Maddy** | **~50 MB** | | **Snappymail** | **~15 MB** | | **Gesamt** | **~575 MB / 1024 MB** | Swap-File (1 GB) als Sicherheitspuffer anlegen. ## Implementierungs-Schritte ### Phase 1: DNS & Vorbereitung - [ ] A-Record `mail.bollwerk.online` → `195.246.231.210` - [ ] MX-Record `bollwerk.online` → `mail.bollwerk.online` (Prio 10) - [ ] SPF TXT-Record: `v=spf1 a mx ip4:195.246.231.210 -all` - [ ] PTR (rDNS) bei 1984 auf `mail.bollwerk.online` ändern - [ ] Swap-File (1 GB) auf VPS anlegen ### Phase 2: Maddy Mailserver - [ ] Maddy Docker-Container konfigurieren + deployen - [ ] DKIM-Key generieren - [ ] DKIM TXT-Record in DNS setzen - [ ] DMARC TXT-Record: `v=DMARC1; p=none; rua=mailto:postmaster@bollwerk.online` (Test-Modus) - [ ] Firewall-Ports öffnen: 25, 465, 587, 993 - [ ] TLS-Zertifikate (Let's Encrypt via Caddy oder Maddy-eigenes ACME) - [ ] Postfach/User anlegen ### Phase 3: Webmail - [ ] Snappymail Docker-Container deployen - [ ] Caddy-Config erweitern: `mail.bollwerk.online` → Snappymail (:8888) - [ ] Snappymail mit Maddy IMAP verbinden ### Phase 4: Validierung - [ ] Test: Mail senden an externe Adresse (Gmail/Outlook) - [ ] Test: Mail empfangen von externer Adresse - [ ] Test: Webmail Login + Lesen/Senden - [ ] mail-tester.com Score prüfen (Ziel: 9+/10) - [ ] DMARC-Policy auf `p=reject` hochstufen ## Architektur ``` Internet ├── :443 (HTTPS) → Caddy → bollwerk.online → Ktor │ → mail.bollwerk.online → Snappymail ├── :25 (SMTP) → Maddy (Empfang) ├── :465 (SMTPS) → Maddy (Submission) ├── :587 (Submission) → Maddy (STARTTLS) └── :993 (IMAPS) → Maddy (IMAP) ``` ## Risiken - **RAM-Knappheit:** Swap-File als Puffer, Monitoring einrichten - **IP-Reputation:** SPF/DKIM/DMARC korrekt setzen, ggf. Warmup - **PTR mismatch:** Muss bei 1984 geändert werden, sonst Gmail/Outlook rejecten
Sign in to join this conversation.
No description provided.