Hoe je in een paar minuten je eigen tijdelijke e-maildienst implementeert
Iedereen die ooit gebruikersregistratie of wachtwoordherstel in webapplicaties heeft getest, kent deze frustratie. Populaire wegwerpe-maildiensten zoals TempMail zitten vol met advertenties, hun domeinen staan al lang op de blocklist van validators, en persoonlijke testpostvakken op Gmail worden snel een rommeltje.
Onlangs stuitte ik op een interessant project genaamd TempFastMail van ontwikkelaar kasteckis. Het is een lichtgewicht zelfgehoste tijdelijke e-maildienst die je letterlijk met één commando op je eigen domein kunt opzetten docker compose.

Waarom Je Eigen Tijdelijke E-maildienst Draaien
Openbare wegwerpbakken zijn handig totdat je tegen beperkingen aanloopt. Ten eerste kunnen externe diensten inkomende e-mails zien met alle bevestigingslinks en tokens. Ten tweede blokkeren veel sites adressen van bekende tijdelijke e-maildomeinen.
Een persoonlijke instantie lost beide problemen op:
- Je koppelt elk persoonlijk domein dat nergens in spamdatabases staat.
- Alle inkomende berichten blijven onder jouw controle.
- Geen captchas, advertentiebanners of trackers van derden.
- E-mails worden automatisch verwijderd na 48 uur, dus de database groeit niet.
Hoe De Architectuur Werkt
Onder de motorkap gebruikt het project een moderne stack: PHP backend (gebaseerd op repository tags is het Symfony) draait via FrankenPHP, gebruikt SQLite als database, en de frontend is gebouwd met React.
Het meest interessante detail hier is hoe de auteur het probleem van het ontvangen van inkomende e-mails heeft opgelost. Het opzetten van een volledige SMTP-server zoals Postfix en het configureren van MX-records wordt voor veel mensen een hoofdpijn. TempFastMail gebruikt Cloudflare Email Routing en een gratis Cloudflare Worker. Een e-mail komt binnen op het domein, Cloudflare onderschept het en roept de HTTP API van je instantie aan. Simpel, betrouwbaar, en vereist geen openen van poort 25 op de server.
Snelle Start
Om te beginnen heb je een server met Docker geïnstalleerd en een domein gedelegeerd naar Cloudflare nodig.
Maak het docker-compose.yml bestand aan:
services:
tempfastmail:
container_name: tempfastmail
image: kasteckis/tempfastmail:latest
environment:
CREATE_RECEIVED_EMAIL_API_AUTHORIZATION_KEY: your-secret-api-token
DEFAULT_URI: https://yourdomain.com
ports:
- "80:80"
volumes:
- ./sqlite:/app/sqlite
Daarna hoef je alleen de gratis worker in te stellen in het Cloudflare dashboard volgens de instructies uit de repository en deze te koppelen aan je container via een auth token. Zodra het draait, is de webinterface toegankelijk in de browser. Je kunt e-mails beheren en de database handmatig opschonen via het admin panel met de standaard login [email protected].
Dingen Om In De Gaten Te Houden
De README in de repository is nog beknopt, en het project heeft niet veel sterren, dus kleine ruwe randjes zijn mogelijk. Omdat SQLite wordt gebruikt als opslag, is de dienst duidelijk ontworpen voor persoonlijk gebruik of een klein team van testers, niet voor duizenden gelijktijdige gebruikers.
Voor lokale QA-taken, testautomatisering en persoonlijke spamprotectie is het een gewondige vondst die je bespaart om met complexe mailservers te dealen.
Gerelateerde projecten