Găzduirea Listmonk pe un Managed VPS: newsletterele pe propriul server

Găzduirea Listmonk pe un Managed VPS înseamnă să păstrați listele de abonați și campaniile dumneavoastră pe o mașină a dumneavoastră, pe care echipele noastre o țin la zi și o supraveghează zi și noapte. Listmonk este un software liber sub licență AGPL-3.0. Acest ghid urmează documentația sa oficială: versiunea de ales, Docker Compose, PostgreSQL, HTTPS, trimiterea prin SMTP, bounce-urile, consimțământul, backupurile și actualizările.

Simon Vasconcelos Lee Autor: Publicat la 12 noiembrie 2026Timp de citire: 13 minute

Toate ghidurile

Esențialul

  1. Licența AGPL-3.0 permite folosirea Listmonk în firmă fără nicio licență de cumpărat; dacă îl modificați, utilizatorii dumneavoastră de la distanță trebuie să poată obține codul sursă al versiunii dumneavoastră.
  2. Instalați versiunea stabilă 6.2.0 cu o etichetă Docker fixă: versiunea 7, afișată în frunte pe GitHub, este încă o beta.
  3. Docker Compose pornește Listmonk și PostgreSQL. Publicați portul 9000 local, serviți-l în HTTPS în spatele unui proxy invers și completați „Root URL”.
  4. Listmonk trimite prin serverele SMTP pe care le configurați: pentru o trimitere în masă, alegeți un serviciu de trimitere specializat pe portul 587, cu SPF, DKIM și DMARC pe domeniul dumneavoastră.
  5. Preferați double opt-in, activați tratarea bounce-urilor și exportați baza cu pg_dump înaintea fiecărei actualizări.

Ce face Listmonk

Listmonk vă gestionează listele de difuzare și newsletterele dintr-o interfață web. Este un program unic, scris în Go, a cărui singură dependență este PostgreSQL. Listele sale sunt într-un singur sens: dumneavoastră le scrieți abonaților, iar ea nu este o listă de discuții între ei.

Ce permite licența AGPL-3.0

Listmonk este publicat sub licența GNU AGPL versiunea 3. Îl puteți folosi, inclusiv în firmă, și vă puteți trimite campaniile, ca și pe cele ale clienților dumneavoastră, fără nicio licență de cumpărat. Rămân costul serverului și cel al serviciului dumneavoastră de trimitere.

Articolul 13 adaugă o condiție specifică AGPL: dacă modificați programul, versiunea dumneavoastră trebuie să propună în mod clar tuturor celor care îl folosesc de la distanță, prin rețea, să-i obțină codul sursă, gratuit. Dacă distribuiți copii, se aplică și obligațiile de partajare a codului din licență. Rularea Listmonk fără modificări nu declanșează acest articol.

Ce versiune de Listmonk instalați?

Un punct de știut înainte de a începe. Pe GitHub, eticheta „Latest” desemnează în prezent v7.0.0-beta.2 din 10 noiembrie 2026, pe care proiectul însuși o prezintă ca pe o beta. Ultima versiune stabilă este v6.2.0, care conține corecturi de securitate privind permisiunile. La 11 noiembrie 2026, imaginea Docker latest desemnează această v6.2.0.

VersiuneaImagine DockerStare
v6.2.0listmonk/listmonk:v6.2.0Stabilă: cea din acest ghid
v7.0.0-beta.2listmonk/listmonk:betaBeta: de încercat pe o copie, cu un backup
nightlylistmonk/listmonk:nightlyNetestată, potrivit proiectului: pe riscul dumneavoastră

Versiunea 7 înlocuiește întreaga interfață de administrare, schimbă unele dintre adresele ei, face din setarea app.from_email o listă de adrese și modifică chei de traducere, ceea ce afectează șabloanele personalizate. Citiți notele ei de versiune înainte de a trece la ea.

Fișierul Compose al proiectului rulează --upgrade --yes la fiecare pornire: o imagine nouă migrează baza fără să vă întrebe. Or, o bază migrată nu se mai citește cu o versiune mai veche, iar revenirea în urmă impune restaurarea unui backup. Cu o etichetă fixă, precum v6.2.0, schimbarea versiunii rămâne decizia dumneavoastră.

Instalarea cu Docker Compose

Proiectul recomandă Docker Compose: fișierul său pornește împreună Listmonk și PostgreSQL. Pe un server unde Docker este instalat, creați un director și descărcați acest fișier:

Terminal
mkdir listmonk
cd listmonk
curl -LO https://github.com/knadh/listmonk/raw/master/docker-compose.yml

Proiectul cere adaptarea acestui fișier la mediul dumneavoastră. Iată singurele linii de schimbat, restul nu se mișcă:

docker-compose.yml, liniile de modificat
x-db-credentials: &db-credentials
  POSTGRES_USER: &db-user listmonk
  POSTGRES_PASSWORD: &db-password un-mot-de-passe-long
  POSTGRES_DB: &db-name listmonk

services:
  app:
    image: listmonk/listmonk:v6.2.0
    ports:
      - "127.0.0.1:9000:9000"
    hostname: listmonk.example.com

Porniți apoi serviciile, creând dinainte contul Super Admin. Aceste două variabile servesc doar la prima pornire, iar fără ele contul se creează la prima vizită a interfeței: mai bine să existe înainte de a vă deschide domeniul.

Terminal
LISTMONK_ADMIN_USER=votre-identifiant LISTMONK_ADMIN_PASSWORD=votre-mot-de-passe docker compose up -d

Fără Docker: binarul

Listmonk rulează și ca program de sine stătător, lângă propriul dumneavoastră server PostgreSQL, în versiunea 12 sau mai recentă, unde baza este deja creată.

  1. Descărcați arhiva v6.2.0 de pe pagina de versiuni a proiectului, de exemplu listmonk_6.2.0_linux_amd64.tar.gz, evitând beta afișată în frunte, și extrageți binarul.
  2. Generați fișierul de configurare, apoi completați accesele la bază în config.toml.
  3. Instalați tabelele, apoi lansați Listmonk.
Terminal
./listmonk --new-config
./listmonk --install
./listmonk

Implicit, config.toml ascultă pe localhost:9000, ceea ce se potrivește în spatele unui proxy invers. Depozitul furnizează un fișier de serviciu listmonk@.service pentru systemd.

Dimensiunea serverului

Site-ul proiectului citează o instanță de producție care trimite o campanie de peste 7 milioane de e-mailuri cu o fracțiune dintr-un nucleu de procesor și un vârf de 57 MB de memorie. El nu publică nici un minim, nici o cifră pentru PostgreSQL, al cărui volum crește odată cu abonații, deschiderile și clicurile dumneavoastră. Pe un Managed VPS, descrieți-ne utilizarea dumneavoastră și vă recomandăm dimensiunea potrivită.

HTTPS și proxy-ul invers

Abonații dumneavoastră dau clic pe linkuri care indică spre instanța dumneavoastră: dezabonare, confirmare, urmărirea clicurilor. Ea se servește deci în HTTPS pe propriul nume de domeniu. Creați înregistrările A și AAAA ale acestui nume către serverul dumneavoastră, unde vizitatorii ajung pe porturile 80 și 443. Documentația Listmonk lasă libertatea alegerii proxy-ului, iată două configurații uzuale.

Cu Caddy

Caddy obține și reînnoiește singur certificatul:

Caddyfile
listmonk.example.com {
    reverse_proxy 127.0.0.1:9000
}

Cu Nginx și Certbot

Nginx refuză implicit cererile de peste 1 MB, cu o eroare 413. Pentru a importa un fișier de abonați sau imagini, ridicați această limită pe măsura fișierelor dumneavoastră:

Bloc Nginx
server {
    listen 80;
    listen [::]:80;
    server_name listmonk.example.com;
    client_max_body_size 100m;

    location / {
        proxy_pass http://127.0.0.1:9000;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

Certbot instalează apoi certificatul Let’s Encrypt și redirecționarea spre HTTPS, apoi reînnoiește singur certificatul:

Terminal
sudo certbot --nginx -d listmonk.example.com

Primele setări

Conectați-vă pe https://listmonk.example.com/admin, apoi deschideți „Settings”:

Ce rămâne public, ce se poate închide

Pentru a filtra accesul, după adresa IP sau printr-un proxy de autentificare, documentația împarte rutele astfel:

RuteRolAcces
/admin/*, /api/*, /webhooks/bounceAdministrarea, API-ul ei și webhookul intern de bounce-uriPrivat
/subscription/*, /public/*Paginile de abonare și fișierele lorPublic
/link/*, /campaign/*Urmărirea linkurilor și pixelul de urmărirePublic
/webhooks/service/*Bounce-urile trimise de serviciul dumneavoastră de trimiterePublic
/uploads/*Imaginile din e-mailurile dumneavoastrăPublic

Trimiterea: Listmonk trece prin serverele dumneavoastră SMTP

Listmonk pregătește și cadențează e-mailurile dumneavoastră, apoi le încredințează serverelor SMTP pe care le declarați în „Settings”, „SMTP”. El nu le livrează singur în căsuțele abonaților dumneavoastră: calitatea livrării depinde deci de acest server, de domeniul dumneavoastră și de listele dumneavoastră.

Pentru o trimitere în masă, alegeți un serviciu de trimitere specializat: el poartă reputația trimiterilor dumneavoastră și semnăturile domeniului dumneavoastră și știe să raporteze bounce-urile. De pe un VPS Simafri, trimiterea trece printr-un releu SMTP autentificat, pe portul 587: aici, cel al acestui serviciu.

Pentru orientare, documentația Listmonk descrie bounce-urile de la Amazon SES, Azure Communication Services, SendGrid, Postmark, Forward Email și Lettermint. Comparați-le în funcție de volumul și de destinatarii dumneavoastră.

SetareValoareCe verificați
HostAdresa SMTP a serviciului dumneavoastrăÎnlocuiește valoarea de exemplu furnizată
Port587Presetările ecranului propun adesea un alt port: reveniți pe 587
TLSSTARTTLSMerge împreună cu portul 587
Auth protocolCel al serviciului dumneavoastră, adesea LOGINCu identificatorul și parola SMTP ale serviciului

Dați apoi clic pe „Test connection”: Listmonk trimite un mesaj de probă și afișează eroarea serverului dacă trimiterea eșuează. Puteți declara mai multe servere, alege unul dintre ele pentru fiecare campanie sau direcționa trimiterile după adresa sau domeniul expeditorului.

Debitul

Setați-l în „Settings”, „Performance”, sub limita serviciului dumneavoastră:

Un mesaj care eșuează este reîncercat după setarea „Retries”, pe alte conexiuni ale serverului. Dacă eșuează din nou, Listmonk îl notează ca eroare și trece la următorul: urmăriți aceste erori în timpul unei campanii mari.

Livrabilitate, dezabonare și consimțământ

Găzduirea aplicației pe propriul server vă lasă stăpân pe aceste subiecte, iar ele decid dacă e-mailurile dumneavoastră ajung.

SPF, DKIM și DMARC

Trimiteți de la o adresă a domeniului dumneavoastră și publicați în zona sa DNS înregistrările SPF și DKIM pe care vi le dă serviciul dumneavoastră de trimitere, împreună cu o înregistrare DMARC. Google le cere pe toate trei expeditorilor de peste 5 000 de mesaje pe zi către conturi Gmail, cu un domeniu de expediere aliniat la SPF sau DKIM, dezabonarea cu un singur clic pentru mesajele de marketing și o rată de raportare ca spam sub 0,30 %, ideal sub 0,10 %.

Dezabonarea

Consimțământul destinatarilor dumneavoastră

Listmonk aplică tipul de listă pe care îl alegeți. Pe o listă cu opt-in simplu, un abonat adăugat fără confirmare primește totuși campaniile dumneavoastră. Pe o listă cu double opt-in, el primește mai întâi un e-mail de confirmare, iar doar abonații confirmați primesc campaniile dumneavoastră. Este alegerea care vă protejează cel mai bine reputația de trimitere și care păstrează o urmă clară a acordului.

Regulile depind de țara destinatarilor dumneavoastră. În Franța, de exemplu, CNIL cere consimțământul prealabil al persoanelor fizice, printr-o acțiune pozitivă precum o casetă nebifată în prealabil, cu o excepție pentru clienții dumneavoastră în privința unor produse sau servicii similare. Între profesioniști, prospectarea se poate sprijini pe interesul legitim dacă privește meseria lor. În toate cazurile, fiecare mesaj identifică expeditorul și oferă un mijloc simplu de a-le refuza pe următoarele.

Scrieți doar persoanelor care așteaptă mesajele dumneavoastră. O listă cumpărată sau veche face să crească bounce-urile și raportările ca spam, iar domeniul dumneavoastră este cel care poartă consecințele.

Urmărirea deschiderilor și a clicurilor

Pixelul de urmărire și urmărirea clicurilor ating viața privată, iar documentația cere să fie folosite cu respectarea unor reguli precum RGPD. Implicit, această urmărire nu este legată de fiecare abonat: opțiunea „Individual subscriber tracking” o leagă, iar „Disable tracking” o oprește complet, în „Settings”, „Privacy”.

Bounce-urile

A continua să scrieți unei adrese care vă respinge mesajele vă strică reputația de trimitere. Tratarea bounce-urilor (mesajelor respinse) este dezactivată la pornire: activați-o în „Settings”, „Bounces”, apoi alegeți una dintre aceste două căi.

Pentru o căsuță dedicată, declarați-o ca adresă de retur în „Settings”, „SMTP”, „Custom headers”:

Anteturi personalizate
[
  {"Return-Path": "your-bounce-inbox@example.com"}
]

Setările de pornire sunt cele pe care documentația le dă pentru SES și ele formează o bază bună:

Tipul de bounceNumărAcțiune
Soft (ușor)2None: niciuna
Hard (definitiv)1Blocklist: adresa este blocată
Complaint (raportare ca spam)1Blocklist: adresa este blocată

PostgreSQL, singura dependență

Listmonk cere PostgreSQL 12 sau mai recent. Fișierul Compose aduce postgres:17-alpine, cu datele în volumul Docker listmonk-data. Abonații, campaniile, șabloanele, statisticile și majoritatea setărilor trăiesc acolo; doar accesele la bază și adresa de ascultare rămân în configurație.

Pentru a viza un server PostgreSQL existent, modificați variabilele LISTMONK_db__host, LISTMONK_db__port, LISTMONK_db__user, LISTMONK_db__password și LISTMONK_db__database ale serviciului app.

Listmonk este conceput pentru liste mari. Pe măsură ce baza crește, ea este cea care poate încetini interfața: cu milioane de abonați, panoul de control și contoarele pot dura zeci de secunde să se afișeze. Proiectul sfătuiește atunci două gesturi:

Terminal, în directorul fișierului docker-compose.yml
docker compose exec db psql -U listmonk -d listmonk -c 'VACUUM ANALYZE;'

Backupuri și actualizări

Două elemente alcătuiesc instanța dumneavoastră: baza PostgreSQL și directorul uploads, dacă imaginile rămân pe disc. pg_dump produce un export coerent fără a opri Listmonk și fără a bloca celelalte accese la bază:

Terminal, în directorul fișierului docker-compose.yml
docker compose exec -T db pg_dump -U listmonk listmonk > listmonk-$(date +%F).sql
tar -czf listmonk-uploads-$(date +%F).tar.gz uploads

Pentru restaurare, opriți Listmonk, goliți baza, apoi reîncărcați exportul. După cum precizează documentația, acest gest șterge baza existentă:

Terminal
docker compose stop app
docker compose exec db psql -U listmonk -d listmonk -c 'DROP SCHEMA public CASCADE; CREATE SCHEMA public;'
docker compose exec -T db psql -U listmonk -d listmonk < listmonk-2026-11-01.sql
docker compose start app

Actualizarea

  1. Citiți notele noii versiuni: Listmonk vă semnalează versiunile noi în interfața sa, iar unele conțin corecturi de securitate.
  2. Exportați baza, așa cum cere proiectul înaintea oricărei actualizări.
  3. Schimbați eticheta imaginii în docker-compose.yml.
  4. Rulați comenzile din documentație. Fișierul Compose migrează baza la pornire.
Terminal
docker compose down app
docker compose pull
docker compose up app -d

Cu binarul, opriți Listmonk, înlocuiți binarul, rulați ./listmonk --upgrade, apoi relansați-l. Pentru a reveni la o versiune anterioară, restaurați exportul făcut înaintea actualizării, apoi puneți la loc vechea etichetă.

Cine ce face pe un Managed VPS

Găzduirea pe propriul server cere să țineți serverul pe lângă aplicație. Pe un Managed VPS, echipele noastre preiau serverul și vă urmăresc proactiv instanța; Listmonk rămâne software-ul dumneavoastră, cu setările, listele și campaniile dumneavoastră.

SubiectEchipele noastreDumneavoastră
ServerulActualizări de sistem și de securitate, intervenții pe server incluseMomentul potrivit activității dumneavoastră
MonitorizareaServer urmărit 24 de ore din 24, 7 zile din 7, cu intervenție fără a vă aștepta apelulUrmărirea campaniilor și a bounce-urilor dumneavoastră
ListmonkUrmărire proactivă: erori, încetiniri și spațiu pe disc depistate, corectură recomandatăInstalarea, actualizările și setările sale, pe care le aplicați dumneavoastră sau asistentul dumneavoastră AI
TrimitereaUn server care ajunge la releul dumneavoastră SMTP pe portul 587Serviciul dumneavoastră de trimitere, înregistrările DNS, listele și consimțământul destinatarilor dumneavoastră
BackupurileÎn fiecare noapte, criptate și păstrate în afara mașinii; restaurare inclusăCererea de restaurare și exportul dumneavoastră înaintea fiecărei actualizări
MigrareaServerul dumneavoastră actual migrat, gratuitMomentul trecerii

Dacă preferați ca echipele noastre să intervină în aplicația însăși, această prestație se facturează la oră sau la preț fix, cu o ofertă comunicată înainte de intervenție.

Listmonk, pe un server întreținut pentru dumneavoastră

Cu un Managed VPS Simafri, echipele noastre țin la zi serverul instanței dumneavoastră Listmonk, îl monitorizează zi și noapte și intervin fără a vă aștepta apelul; ele vă urmăresc proactiv și instanța și vă recomandă corecturile utile, pe care le aplicați dumneavoastră sau asistentul dumneavoastră AI. Backupurile sunt criptate în fiecare noapte și păstrate în afara mașinii, restaurarea lor este inclusă, iar migrarea serverului actual este gratuită.

Descoperiți gama Managed VPS

Întrebări frecvente

Este Listmonk gratuit pentru o firmă?

Da. Listmonk este sub licență AGPL-3.0: îl puteți folosi în firmă fără nicio licență de cumpărat. Dacă îl modificați, utilizatorii dumneavoastră de la distanță trebuie să poată obține codul sursă al versiunii dumneavoastră. Rămân costul serverului și cel al serviciului dumneavoastră de trimitere.

Ce versiune de Listmonk instalez?

Versiunea v6.2.0, ultima versiune stabilă la 11 noiembrie 2026. Versiunea v7.0.0-beta.2, afișată în frunte pe GitHub, este o beta. În Docker Compose, fixați imaginea pe listmonk/listmonk:v6.2.0: schimbarea versiunii rămâne atunci decizia dumneavoastră, căci o bază migrată nu se mai citește cu o versiune mai veche.

Cum instalez Listmonk cu Docker Compose?

Descărcați fișierul docker-compose.yml al proiectului, schimbați parola bazei și eticheta imaginii, apoi rulați docker compose up -d. Interfața răspunde pe portul 9000, cu PostgreSQL alături. Serviți-o în HTTPS în spatele unui proxy invers și completați Root URL.

Ce server SMTP folosesc cu Listmonk?

Listmonk trimite prin serverele SMTP pe care le configurați. Pentru o trimitere în masă, alegeți un serviciu de trimitere specializat, în STARTTLS pe portul 587, și publicați SPF, DKIM și DMARC pe domeniul dumneavoastră. Documentația Listmonk descrie, de exemplu, bounce-urile de la Amazon SES, SendGrid și Postmark.

Cum gestionez bounce-urile în Listmonk?

Activați tratarea în Settings, Bounces, apoi conectați webhookul serviciului dumneavoastră de trimitere sau o căsuță POP3 dedicată. Setările de pornire blochează o adresă de la un bounce definitiv sau de la o raportare ca spam.

Cum fac backup la Listmonk?

Exportați baza cu pg_dump, fără a opri serviciul, și păstrați directorul uploads dacă imaginile sunt pe disc. Proiectul cere acest export înaintea fiecărei actualizări, căci o versiune anterioară nu mai citește o bază deja migrată.

Gestionează Listmonk consimțământul și dezabonarea?

Îi oferă uneltele: liste cu double opt-in, link de dezabonare în șabloanele dumneavoastră, antetul List-Unsubscribe, exportul și ștergerea datelor de către abonat. Consimțământul însuși rămâne de obținut din partea dumneavoastră, după regulile țării destinatarilor dumneavoastră.

Acoperă un Managed VPS și Listmonk?

Un Managed VPS acoperă serverul: sistemul, securitatea, monitorizarea și backupurile. Echipele noastre vă urmăresc proactiv și instanța și vă recomandă corecturile utile, pe care le aplicați dumneavoastră. O intervenție în aplicație se facturează la oră sau la preț fix.

Surse și documentație oficială

Contactați-ne