Mailhog er et utrolig nyttig verktøy for å fange e-post som sendes fra en utviklingsapplikasjon. Men jeg vil ikke ha det til å starte og stoppes manuelt, jeg vil at det skal være tilgjengelig automatisk ved oppstart av systemet, spesielt i mitt utviklingsmiljø. Her er hvordan du gjør MailHog til en virkelig tjener på Debian 12.
📦 1. Forutsetninger
Sjekk om du allerede har installert Mailhog uten Docker (som også kan være en mulig løsning) :
which mailhog |
Hvis ikke, ser jeg deg tilbake til mitt artikkel:
PHP / WEB-UTV – Send e-post uten SMTP
🎯 2. Målsetting
Start MailHog automatisk ved hvert systemoppstart, uten manuell inngrep, som en vanlig Debian-tjener.
👤 3. Steg 1: Opprett et dedikert brukerkonto
Vi unnger å kjøre Mailhog under root-brukeren. Lag et systembruker uten shell eller hjemmefil:
sudo useradd --system --no-create-home --shell /usr/sbin/nologin mailhog |
⚙️ 4. Steg 2: Opprett en systemd-tjeneste-fil
Opprett en fil med navnet mailhog.service i den tilhørende tjenestemappe:
sudo nano /etc/systemd/system/mailhog.service |
Legg inn følgende innhold for vår tjener:
[Unit] |
Description=MailHog service |
After=network.target |
|
[Service] |
|
# eller stien din, f.eks. den go install gir: ~/go/bin/mailhog |
ExecStart=/usr/local/bin/mailhog |
Restart=always |
User=mailhog |
Group=mailhog |
Environment="MH_API_BIND_ADDR=0.0.0.0:8025" "MH_UI_BIND_ADDR=0.0.0.0:8025" "MH_SMTP_BIND_ADDR=0.0.0.0:1025" |
|
[Install] |
WantedBy=multi-user.target |
💡 Her eksponerer vi:
MailHogs web/API på :8025 |
SMTP-serveren på :1025 |
🔁 5. Steg 3: Aktiver og start tjenesten
Vi laster om systemd og aktiver tjenesten slik at den starter ved oppstart:
sudo systemctl daemon-reexec |
sudo systemctl daemon-reload |
sudo systemctl enable mailhog |
sudo systemctl start mailhog |
✅ Steg 4: Sjekk at det fungerer
Et lite sjekk for å verifisere at vår tjeneste kjører:
systemctl status mailhog |
Vi bør se en aktiv status.
Hvis nødvendig, kan du se loggene i realtid:
|
journalctl -u mailhog -f |
🚀 Resultat
På hver oppstart starter MailHog automatisk. Du kan få tilgang til webgruppen på:
Neste er å konfigurere din applikasjon for å sende e-poster via localhost:1025. 🛡️ Sikkerhetsbonus
Hvis nødvendig, kan du begrense tilgangen til webgruppen hvis serveren er eksponert. MailHog har ingen inbygd autentiseringssystem, så en liten ufw, et NGINX-proxy med passord eller en firewall anbefales.
Kommentarer
Ingen godkjente kommentarer ennå.
Logg inn med en kommentatorkonto for å publisere en kommentar. Logg inn.