Listmonk e-mail továbbítással a biztonságos hírlevélküldéshez

Ez az útmutató lépésről lépésre bemutatja a fejlesztőknek, hogyan állítsák be a Listmonk-t, egy hatékony, nyílt forráskódú hírlevél- és levelezőlista-kezelőt, hogy a E-mail továbbítása-et használja SMTP-szolgáltatóként. Ez a kombináció lehetővé teszi kampányaik hatékony kezelését, miközben biztosítja a biztonságos, privát és megbízható e-mail-kézbesítést.

  • Listmonk: Feliratkozók kezelését, listák szervezését, kampányok létrehozását és teljesítménykövetést kezel.
  • E-mail továbbítása: Biztonságos SMTP-kiszolgálóként működik, beépített biztonsági funkciókkal, például SPF, DKIM, DMARC és TLS titkosítással kezeli az e-mailek tényleges küldését.

E kettő integrálásával teljes mértékben kézben tarthatod az adataid és az infrastruktúrád, miközben kihasználod a Forward Email robusztus kézbesítési rendszerét.

  • Nyílt forráskódú: Mind a Listmonk, mind a Forward Email mögött álló alapelvek hangsúlyozzák az átláthatóságot és az ellenőrzést. A Listmonkot te magad üzemelteted, az adataid tulajdonosa vagy.
  • Adatvédelem-központú: A Forward Email az adatvédelemre összpontosít, minimalizálja az adatmegőrzést és a biztonságos átvitelre összpontosít.
  • Költséghatékony: A Listmonk ingyenes, a Forward Email pedig nagylelkű ingyenes szinteket és megfizethető fizetős csomagokat kínál, így ez egy költségvetésbarát megoldás.
  • Skálázhatóság: A Listmonk nagy teljesítményű, a Forward Email infrastruktúrája pedig a megbízható, nagy léptékű kézbesítésre lett tervezve.
  • Fejlesztőbarát: A Listmonk robusztus API-t kínál, a Forward Email pedig egyszerű SMTP-integrációt és webhookokat biztosít.

Mielőtt elkezdené, győződjön meg arról, hogy a következőkkel rendelkezik:

  • Egy virtuális magánszerver (VPS), amely egy újabb Linux disztribúciót futtat (Ubuntu 20.04+ ajánlott), legalább 1 CPU-val és 1 GB RAM-mal (2 GB ajánlott).
  • Szüksége van egy szolgáltatóra? Nézze meg a ajánlott VPS lista azonosítót.
  • Egy Ön által felügyelt domainnév (DNS hozzáférés szükséges).
  • Egy aktív fiók E-mail továbbítása azonosítóval.
  • Root vagy sudo hozzáférés a VPS-hez.
  • Alapfokú jártasság a Linux parancssori műveletekben.

Ezek a lépések végigvezetnek a Listmonk Docker és Docker Compose használatával történő telepítésén a VPS-eden.

1. Frissítse a szerverét

Győződjön meg róla, hogy a rendszer csomaglistája és a telepített csomagok naprakészek.

sudo apt update && sudo apt upgrade -y

2. Függőségek telepítése

Telepítse a Dockert, a Docker Compose-t és az UFW-t (Uncomplicated Firewall).

sudo apt install -y docker.io docker-compose ufw

3. Listmonk konfiguráció letöltése

Hozz létre egy könyvtárat a Listmonk számára, és töltsd le a hivatalos docker-compose.yml fájlt.

mkdir listmonk && cd listmonk
curl -Lo docker-compose.yml https://raw.githubusercontent.com/knadh/listmonk/master/docker-compose.yml

Ez a fájl definiálja a Listmonk alkalmazáskonténert és a hozzá szükséges PostgreSQL adatbáziskonténert.

4. Tűzfal (UFW) konfigurálása

Engedélyezd a létfontosságú forgalmat (SSH, HTTP, HTTPS) a tűzfalon keresztül. Ha az SSH-d nem szabványos porton fut, ennek megfelelően módosítsd.

sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https
sudo ufw enable

Amikor a rendszer kéri, erősítse meg a tűzfal engedélyezését.

5. HTTPS hozzáférés konfigurálása

A Listmonk HTTPS-en keresztüli futtatása kulcsfontosságú a biztonság szempontjából. Két fő lehetőséged van:

Ha a domain DNS-ét a Cloudflare kezeli, kihasználhatja a proxy funkciójukat az egyszerű HTTPS-hez.

  1. Point DNS: Hozz létre egy A rekordot a Cloudflare-ben a Listmonk aldomainedhez (pl. listmonk.yourdomain.com), amely a VPS IP-címedre mutat. Győződj meg róla, hogy a Proxy állapota Proxied (narancssárga felhő) értékre van állítva.

  2. Docker Compose módosítása: Szerkeszd a letöltött docker-compose.yml fájlt:

   sed -i 's/9000:9000/80:9000/' docker-compose.yml

Ezáltal a Listmonk belsőleg elérhetővé válik a 80-as porton, amelyet a Cloudflare ezután HTTPS-sel tud proxyzni és biztonságossá tenni.

B. lehetőség: Fordított proxy használata (Nginx, Caddy stb.)

Alternatív megoldásként beállíthat egy fordított proxyt, például az Nginx-et vagy a Caddy-t a VPS-én, hogy kezelje a HTTPS megszakítását és a Listmonk felé irányuló proxy kéréseket (alapértelmezés szerint a 9000-es porton fut).

  • Tartsa meg az alapértelmezett ports: - "127.0.0.1:9000:9000" értéket a docker-compose.yml-ben, hogy a Listmonk csak helyben legyen elérhető.
  • Konfigurálja a kiválasztott fordított proxyt úgy, hogy a 80-as és 443-as portokon figyeljen, kezelje az SSL-tanúsítványok beszerzését (pl. Let's Encrypt-en keresztül), és továbbítsa a forgalmat a http://127.0.0.1:9000-re.
  • A részletes fordított proxy beállítás meghaladja ennek az útmutatónak a kereteit, de számos oktatóanyag elérhető online.

6. Indítsa el a Listmonkot

Navigáljon vissza a listmonk könyvtárba (ha még nem ott van), és indítsa el a konténereket leválasztott módban.

cd ~/listmonk # Or the directory where you saved docker-compose.yml
docker compose up -d

A Docker letölti a szükséges képeket, és elindítja a Listmonk alkalmazást és az adatbázis-tárolókat. Ez elsőre eltarthat egy-két percig.

Listmonk elérése: Most már hozzáférhetsz a Listmonk webes felületéhez a konfigurált domainen keresztül (pl. https://listmonk.yourdomain.com).

7. Konfigurálja az e-mail továbbításának SMTP-jét a Listmonkban

Ezután konfigurálja a Listmonkot, hogy e-maileket küldjön a Forward Email fiókjával.

  1. SMTP engedélyezése az e-mail továbbításában: Győződjön meg róla, hogy létrehozta az SMTP hitelesítő adatokat az e-mail továbbítási fiók irányítópultján. Kövesse a E-mail továbbítási útmutató egyéni domainnel történő e-mail küldéséhez SMTP-n keresztül utasításokat, ha még nem tette meg.

  2. A Listmonk konfigurálása: Jelentkezzen be a Listmonk adminisztrációs felületére.

  • Navigáljon a Beállítások -> SMTP menüpontra.

  • A Listmonk beépített támogatással rendelkezik az e-mail továbbításához. Válassza a ForwardEmail lehetőséget a szolgáltatók listájából, vagy adja meg manuálisan a következő adatokat:

Beállítás Érték
Házigazda smtp.forwardemail.net
Kikötő 465
Hitelesítési protokoll LOGIN
Felhasználónév Továbbított e-mail címed SMTP felhasználónév
Jelszó Továbbított e-mail címed SMTP jelszó
TLS SSL/TLS
E-mailből A kívánt From cím (pl. newsletter@yourdomain.com). Győződjön meg arról, hogy ez a domain konfigurálva van az E-mail továbbítása funkcióban.
  • Fontos: A biztonságos e-mail-kapcsolatokhoz mindig a 465 és a SSL/TLS portokat használja. Ne használja a STARTTLS-t (587-es port).

  • Kattintson a Mentés gombra.

  1. Teszt e-mail küldése: Használja a „Teszt e-mail küldése” gombot az SMTP beállítások oldalon. Adjon meg egy olyan címzett címét, amelyhez hozzáfér, majd kattintson a Küldés gombra. Ellenőrizze, hogy az e-mail megérkezett-e a címzett postaládájába.

8. A visszapattanás feldolgozásának konfigurálása

A visszapattanó levelek feldolgozása lehetővé teszi a Listmonk számára, hogy automatikusan kezelje a kézbesíthetetlen e-maileket (pl. érvénytelen címek miatt). A Forward Email egy webhookot biztosít, amely értesíti a Listmonkot a visszapattanásokról.

E-mail továbbítási beállítása

  1. Jelentkezzen be a E-mail továbbítási irányítópult fiókjába.

  2. Navigáljon a Domainek menüpontra, válassza ki a küldéshez használt domaint, és lépjen a Beállítások oldalára.

  3. Görgessen le a Visszapattanó webhook URL részhez.

  4. Írja be a következő URL-t, a <your_listmonk_domain> helyére pedig írja be azt a tényleges domaint vagy aldomaint, ahol a Listmonk példány elérhető:

   https://<your_listmonk_domain>/webhooks/service/forwardemail

Példa: https://listmonk.yourdomain.com/webhooks/service/forwardemail 5. Görgessen tovább lejjebb a Webhook aláírás-adathordozó-ellenőrző kulcs részhez.

  1. Másolja a létrehozott ellenőrző kulcsot. Erre szüksége lesz a Listmonkban.

  2. Mentse el a módosításokat az e-mail továbbítási domainbeállításaiban.

Listmonk beállítás

  1. A Listmonk adminisztrációs felületén lépjen a Beállítások -> Visszapattanások menüpontra.

  2. Engedélyezze a Visszapattanás-feldolgozás engedélyezése lehetőséget.

  3. Engedélyezze a Visszapattanás-webhookok engedélyezése lehetőséget.

  4. Görgessen le a Webhook-szolgáltatók részhez.

  5. Engedélyezze a E-mail továbbítása lehetőséget.

  6. Illessze be a Webhook aláírás-adatcsomag-ellenőrző kulcsot, amelyet az E-mail továbbítása irányítópultról másolt ki, a E-mail továbbítási kulcs mezőbe.

  7. Kattintson a Mentés gombra az oldal alján.

  8. A visszapattanás-feldolgozás most már konfigurálva van! Amikor az E-mail továbbítása visszapattanást észlel a Listmonk által küldött e-mailben, értesíti a Listmonk példányt a webhookon keresztül, és a Listmonk ennek megfelelően megjelöli a feliratkozót.

  9. Végezze el az alábbi lépéseket a Tesztelés részben, hogy megbizonyosodjon arról, hogy minden működik.

Íme egy gyors áttekintés a Listmonk alapvető függvényeiről:

Levelezőlista létrehozása

  • Lépj a Listák menüpontra az oldalsávon.
  • Kattints az Új lista gombra.
  • Add meg az adatokat (Név, Típus: Nyilvános/Privát, Leírás, Címkék) és mentsd el.

Feliratkozók hozzáadása

  • Navigálj a Feliratkozók részhez.
  • Feliratkozókat adhatsz hozzá:
  • Manuálisan: Kattints az Új feliratkozó gombra.
  • Importálás: Kattints az Feliratkozók importálása gombra egy CSV fájl feltöltéséhez.
  • API: Használd a Listmonk API-t programozott hozzáadáshoz.
  • Rendelj feliratkozókat egy vagy több listához a létrehozás vagy importálás során.
  • Bevált gyakorlat: Használj dupla feliratkozási folyamatot. Konfiguráld ezt a Beállítások -> Feliratkozás és feliratkozások alatt.

Kampány létrehozása és küldése

  • Lépjen a Kampányok -> Új kampány menüpontra.
  • Töltse ki a kampány adatait (Név, Tárgy, Feladó e-mail címe, Címzett lista(k)).
  • Válassza ki a tartalom típusát (Rich Text/HTML, Sima szöveg, Nyers HTML).
  • Írja meg az e-mail tartalmát. Használhat sablonváltozókat, például a {{ .Subscriber.Email }} vagy a {{ .Subscriber.FirstName }}.
  • Mindig küldjön először egy teszt e-mailt! A „Teszt küldése” opcióval megtekintheti az e-mailt a beérkező levelek mappájában.
  • Ha elégedett, kattintson a Kampány indítása gombra az azonnali küldéshez, vagy ütemezze későbbre.

  • SMTP kézbesítés: Rendszeresen küldjön teszt e-maileket a Listmonk SMTP beállítási oldalán keresztül, és tesztelje a kampányokat, hogy biztosítsa az e-mailek megfelelő kézbesítését.
  • Pattanás kezelése: Küldjön tesztkampányt egy ismert érvénytelen e-mail címre (pl. bounce-test@yourdomain.com, ha nincs kéznél valódi cím, bár az eredmények eltérőek lehetnek). Rövid idő elteltével ellenőrizze a kampány statisztikáit a Listmonkban, hogy regisztrálva van-e a pattanás.
  • E-mail fejlécek: Használjon olyan eszközöket, mint a Levéltesztelő, vagy ellenőrizze manuálisan az e-mail fejléceket, hogy ellenőrizze az SPF, DKIM és DMARC áthaladását, jelezve a megfelelő beállításokat az e-mail továbbítása révén.
  • Továbbított e-mail naplók: Ellenőrizze az e-mail továbbításának irányítópultjának naplóit, ha az SMTP-kiszolgálóról eredő kézbesítési problémákat gyanít.

  • Sablonozás: A Listmonk a Go sablonmotorját használja. A speciális személyre szabáshoz tekintse meg a dokumentációját: {{ .Subscriber.Attribs.your_custom_field }}.
  • API: A Listmonk átfogó REST API-t biztosít listák, feliratkozók, kampányok, sablonok és egyebek kezeléséhez. Az API dokumentációs linkjét a Listmonk példány láblécében találja.
  • Egyéni mezők: A Beállítások -> Feliratkozó mezők alatt definiálhat egyéni feliratkozói mezőket további adatok tárolásához.
  • Webhookok: A visszapattanásokon kívül a Listmonk más eseményekhez (pl. feliratkozásokhoz) is küldhet webhookokat, lehetővé téve az integrációt más rendszerekkel.

A Listmonk saját tárhelyen futó erejének és a Forward Email biztonságos, adatvédelmet tiszteletben tartó kézbesítésének integrálásával egy robusztus és etikus e-mail marketing platformot hozhat létre. A közönségadatok feletti teljes tulajdonjogot fenntartja, miközben a magas kézbesítési hatékonyság és az automatizált biztonsági funkciók előnyeit élvezi.

Ez a beállítás egy skálázható, költséghatékony és fejlesztőbarát alternatívát kínál a zárt e-mail szolgáltatásokkal szemben, tökéletesen illeszkedve a nyílt forráskódú szoftverek és a felhasználói adatvédelem szellemiségéhez.

Jó küldést! 🚀