Brevo SMTP: Guide til opsætning, indstillinger og fejlfinding
Sæt Brevo SMTP korrekt op: serverhost, portene 587, 465 og 2525, SMTP-nøgler, domæneautentificering, WordPress og kodeeksempler, grænser og løsninger på fejl.
Brevo SMTP flytter en applikations udgående post væk fra webhotellets lokale mailagent og over på infrastruktur, der autentificerer, logger og rapporterer om hver eneste besked. Opsætningen er lille: ét værtsnavn, én port, to legitimationsoplysninger. Det er også småt at gøre den forkert, og fejltilstandene er stille. Denne guide dækker indstillingerne, modellen for legitimationsoplysninger, det DNS-arbejde der får leveringen til at ske, og de fejl du løber ind i, hvis en enkelt brik sidder forkert. Er du stadig i gang med at vælge udbyder, sammenligner den bredere guide til SMTP-e-mailtjenester markedet først.
Hvad Brevo SMTP er
Brevo beskriver Brevo SMTP som sin SMTP-relaytjeneste. Din applikation, dit website eller din mailserver afleverer en besked til relayet over en autentificeret forbindelse, og Brevo tager ansvaret for routing, gentagne forsøg, omdømme og rapportering. Statistik for videresendt post vises sammen med kampagnestatistikken, og en hard bounce blokerer automatisk den kontakt.
Relayet er bygget til transaktionelle beskeder: nulstilling af adgangskoder, kvitteringer, ordrebekræftelser, kontonotifikationer. Er grænsen mellem dem og marketingmails ikke skarp endnu, dækker hvad transaktionel e-mail er det.
SMTP eller REST-API’et
Begge veje rammer den samme platform. Den praktiske opdeling:
| Brug SMTP når | Brug REST-API’et når |
|---|---|
| Systemet kun taler SMTP (WordPress, Postfix, et ERP-system, en mailklient) | Du selv skriver integrationen og vil have strukturerede fejl |
| Du migrerer en eksisterende SMTP-opsætning og vil have den mindste ændring | Du har brug for batchafsendelse, planlægning eller idempotensnøgler |
Én hård grænse: Brevos udviklerdokumentation oplyser, at SMTP-relayet ikke understøtter batchafsendelse, og henviser batchoperationer til API-endpointsene.
Sådan opretter du dine SMTP-legitimationsoplysninger
Brevos SMTP-autentificering bruger to værdier, der er lette at forveksle med legitimationsoplysninger, du allerede har.
Find dit SMTP-login
Dit SMTP-login er ikke e-mailadressen på din Brevo-konto. Det er en separat identifikator, der vises i feltet Login på siden Settings, SMTP and API, i formatet [email protected].
Deraf følger to regler, begge fra Brevos fejlfindingsdokumentation. Skriv ikke smtp-relay.brevo.com i feltet til brugernavn: det er relayets vært, ikke dit login. Og læg ikke dit SMTP-login i From-headeren, for det autentificerer dig frem for at identificere en afsender.
Opret en SMTP-nøgle
Adgangskoden er en SMTP-nøgle, ikke din kontoadgangskode og ikke en API-nøgle.
- Åbn kontomenuen, og vælg Settings og derefter SMTP and API.
- Under fanen SMTP klikker du på Generate a new SMTP key.
- Navngiv nøglen efter den integration, der skal bruge den.
- Vælg varianten. Standard er den anbefalede nøgle på 64 tegn; Short er en nøgle på 15 tegn til klienter, der ikke kan håndtere lange adgangskoder.
- Sæt en udløbstid mellem 7 dage og 1 år, eller vælg ingen udløbstid.
- Klik på Generate, og kopiér så hele nøglen med det samme.
Hele nøglen vises én gang, hvorefter siden kun viser de sidste par cifre. Mister du den, opretter du en ny og opdaterer din konfiguration.
Forbindelsesindstillinger
De værdier, du skal skrive ind i en hvilken som helst klient eller et bibliotek:
| Indstilling | Værdi |
|---|---|
| SMTP-server | smtp-relay.brevo.com |
| Port | 587, 465 eller 2525 |
| Kryptering | Lad feltet stå tomt, medmindre du bruger port 465, som kræver SSL eller TLS |
| Brugernavn | Dit SMTP-login, formatet [email protected] |
| Adgangskode | Din SMTP-nøgle |
Sådan vælger du port
| Port | Kryptering | Hvornår du skal bruge den |
|---|---|---|
| 587 | TLS, forhandlet med STARTTLS | Standarden. Start her. |
| 465 | SSL eller TLS, implicit fra forbindelsen | Når din klient kræver en implicit krypteret forbindelse |
| 2525 | TLS, forhandlet med STARTTLS | Når din hostingudbyder blokerer 587 |
Brevo anbefaler 587 som standard. Port 465 var udpeget til SMTP over SSL og blev senere udfaset, men understøttes stadig bredt og er den rigtige, når du har brug for, at forbindelsen er krypteret før den første kommando. Port 2525 er ikke registreret hos IETF eller IANA, men de fleste internetudbydere og cloududbydere tillader den, og det gør den til nødudgangen, når 587 er blokeret.
Feltet til kryptering snubler folk over. Brevo beder dig lade det stå tomt, medmindre du er på 465. Det betyder ikke, at forbindelsen er ukrypteret: på 587 og 2525 annoncerer serveren STARTTLS, og enhver kompetent klient opgraderer, før den autentificerer. Det betyder, at du ikke skal vælge “SSL”, mens du forbinder til 587, for et misforhold mellem port og kryptering får autentificeringen til at fejle, selv med korrekte legitimationsoplysninger.
Test forbindelsen, før du skriver kode
Bekræft, at relayet svarer, og at TLS forhandles, før du fejlsøger i applikationskoden.
openssl s_client -starttls smtp -crlf -connect smtp-relay.brevo.com:587Et vellykket håndtryk slutter med serverens 250-liste over funktioner, som bør indeholde STARTTLS og en AUTH-linje med PLAIN og LOGIN. Slet intet banner er et netværksproblem, ikke et problem med legitimationsoplysninger.
Autentificering af dit afsenderdomæne
Det er trinnet, folk springer over, og det afgør, om noget som helst når frem. Siden 1. februar 2024 har domæneautentificering været obligatorisk under Gmails og Yahoos afsenderkrav, og Brevo bemærker, at Microsoft annoncerede lignende standarder 5. maj 2025. Uautentificeret post filtreres eller afvises, uanset hvilket relay der sendte den.
De records, Brevo beder om
| Record | Type | Formål |
|---|---|---|
| Brevo code | TXT | Bekræfter, at du ejer og kontrollerer afsenderdomænet |
| DKIM | 1 TXT eller 2 CNAME | Signerer beskeder, så modtagere kan opdage ændringer undervejs |
| DMARC | TXT | Fortæller modtagende servere, hvordan de skal håndtere mistænkelig post, med en politik på none, quarantine eller reject |
Brevo kan tilføje dem automatisk, hvis du logger ind hos din domæneudbyder inde fra Brevo, eller du kan kopiere værdierne ind i din DNS-zone i hånden. Hvilken DKIM-form du får, afhænger af kontoen: to CNAME-records bruger som standard en nøgle på 2048 bit, den enkelte TXT-form en nøgle på 1024 bit.
Derfor er der ingen SPF-record
Brevos FAQ er tydelig: SPF- og MX-records er ikke nødvendige for at autentificere et domæne og udleveres kun, når du sætter en dedikeret IP op. På delt infrastruktur styrer Brevo returstien, så DKIM plus ejerskabstjekket bærer autentificeringen. Migrerer du fra en udbyder, der krævede en SPF-include, skal du ikke opfinde en; en unødvendig include risikerer kun at give problemer med grænsen for opslag.
DMARC betyder stadig noget, og Brevo offentliggør en fungerende startrecord:
v=DMARC1; p=none; rua=mailto:[email protected]Start på p=none for at få samlede rapporter uden at risikere leveringen, og stram derefter til quarantine og reject, når alle legitime kilder er på plads. Vores guide til leveringsevne for e-mail gennemgår den progression.
Verificér afsenderen
Hver From-adresse skal være en verificeret afsender eller ligge på et autentificeret domæne. En ny afsender verificeres med en 6-cifret kode sendt til den adresse, men afsendere på et autentificeret domæne springer det trin over, og det er derfor, du autentificerer først. Gratis maildomæner kan ikke autentificeres, så en From-adresse på gmail.com eller outlook.com bliver afvist eller filtreret.
Gennemgang af integrationer
WordPress
WordPress afleverer udgående post til wp_mail, som kalder det, hosten stiller til rådighed. At rute den gennem Brevo kræver et plugin.
- Gå til Plugins og derefter Add New Plugin i administratormenuen.
- Søg efter Brevo, installér “Newsletter, SMTP, Email marketing and Subscribe forms by Brevo”, og aktivér den.
- Gå til Brevo og derefter Home, og indtast din Brevo API-nøgle v3 i aktiveringsfeltet. Det trin bruger en API-nøgle, fordi plugin’et også synkroniserer kontakter. Klik på Login.
- Under Transactional emails vælger du Yes.
- Vælg en eksisterende afsender, eller opret en. Hver eneste WordPress-mail bruger det afsendernavn og den adresse.
- Indtast en adresse, og klik på Send email for at affyre en test.
To fejl er almindelige. En besked om, at transaktionelle e-mails ikke er aktiveret, fordi din Brevo SMTP-konto ikke er blevet aktiveret, betyder, at Brevos support skal tænde for platformen. En besked om, at SMTP ikke kan bruges, fordi wp_mail er erklæret af en anden proces, betyder et konkurrerende SMTP-plugin; deaktivér de andre ét ad gangen.
En applikation på serversiden
Brevos eget Node.js-eksempel bruger nodemailer og indstillingerne ovenfor:
const nodemailer = require("nodemailer");
const transporter = nodemailer.createTransport({ host: "smtp-relay.brevo.com", port: 587, secure: false, // true for 465, false for andre porte auth: { pass: process.env.BREVO_SMTP_KEY, },});
async function sendOrderConfirmation() { const info = await transporter.sendMail({ subject: "Din ordre er bekræftet", text: "Ordre 10482 er bekræftet og sendes inden for to hverdage.", }); console.log("Message sent:", info.messageId);}
sendOrderConfirmation().catch(console.error);Bemærk secure: false på port 587. Det flag styrer implicit TLS, ikke om forbindelsen er krypteret; nodemailer sender stadig STARTTLS. Sæt det kun til true for 465.
Den tilsvarende Python-udgave med standardbiblioteket:
import smtplib, sslfrom email.message import EmailMessage
msg = EmailMessage()msg["Subject"] = "Din ordre er bekræftet"msg.set_content("Ordre 10482 er bekræftet og sendes inden for to hverdage.")
with smtplib.SMTP("smtp-relay.brevo.com", 587, timeout=20) as server: server.starttls(context=ssl.create_default_context()) server.login(BREVO_SMTP_LOGIN, BREVO_SMTP_KEY) server.send_message(msg)Begge læser legitimationsoplysninger fra miljøet, hvilket er næste afsnit.
Sikkerhed og rotation af nøgler
Brevo behandler SMTP-nøgler som adgangskoder. De driftsmæssige regler er værd at følge bogstaveligt.
- Én nøgle pr. integration. Navngiv hver nøgle efter det system, der bruger den, så et læk eller en nedlukning tilbagekalder præcis én ting.
- Commit aldrig en nøgle. Miljøvariabler, en secrets manager eller din platforms konfigurationslager. Ikke versionsstyring, ikke en sporet
.env-fil, ikke et skærmbillede. - Rotér uden nedetid. Opret afløseren, deploy, bekræft at afsendelsen virker, og slet så den gamle nøgle. Sletning kan ikke fortrydes, og at slette en nøgle, der stadig er i brug, stopper transaktionel afsendelse med det samme.
- Deaktivér frem for at slette, når du vil sætte en integration på pause. Nøgler kan aktiveres igen senere.
- Regn med udløb. Nøgler kan bære en udløbstid fra 7 dage til 1 år, og Brevo lader inaktive nøgler udløbe efter 90 dage.
Vil du have en hårdere grænse, kan Brevo blokere forespørgsler fra ukendte IP-adresser. Listen over godkendte adresser deles mellem API- og SMTP-nøgler, så alt, du tillader, gælder begge. Vær varsom med containeriserede workloads og cloud-workloads: den udgående adresse kan være en NAT-gateway frem for den instans-IP, du forventer, og rammer du forkert, giver det en afvisning med 525 5.7.1 Unauthorized IP address.
Teams, der kører Brevo ved siden af en webshop, et CRM og en supportafdeling, ender med at styre flere nøgler, afsendere og domæner på én gang. Tajo holder den konfiguration ét sted i stedet for i fire dashboards.
Afsendelsesgrænser og throttling
SMTP-afsendelse trækker på din plans e-mailkreditter. På gratisplanen betyder det 300 afsendelser om dagen; grænsen nulstilles dagligt, og ubrugte afsendelser overføres ikke. Rammer du den, holder Brevo op til 1.000 yderligere e-mails i en kø til nye forsøg og leverer ingenting ud over den kø. Betalte planer fjerner den daglige grænse, og guiden til Brevos priser opdeler trinene.
Når kreditterne løber helt tør, sættes beskeder indsendt over SMTP på pause og i kø frem for at blive smidt væk. Køen ligger under Transactional, derefter Real time, derefter Usage and plan, i afsnittet Email queue.
Brevo offentliggør hårde rate limits for REST-API’et frem for for relayet. På det generelle trin tillader POST /v3/smtp/email 1.000 forespørgsler i sekundet, og overskrides en grænse, får du 429 Too Many Requests. API-stien returnerer også rate limit-headere, du kan afpasse tempoet efter, hvilket relayet ikke gør.
Overvågning af bounces og klager
Videresendt post er synlig under Transactional, på siderne Statistics og Logs. De hændelser, der kræver et svar:
- Hard bounce. Adressen er ugyldig, og Brevo blokerer automatisk kontakten.
- Blocked. Modtageren har tidligere klaget, frameldt sig, hard bouncet eller er blevet blokeret manuelt.
- Deferred og soft bounce. Udbyderen accepterede forbindelsen, men udskød eller afviste beskeden. Gentagne udsættelser hos én udbyder signalerer et omdømmeproblem, ikke et kodeproblem.
At polle logfiler skalerer ikke. Brevo understøtter transaktionelle webhooks, der skubber hændelser om levering, bounce, åbning og klager til dit endpoint i realtid, og det er sådan, du holder dine egne undertrykkelsesdata aktuelle.
Tallet, du skal holde øje med, er spamklageraten. Gmail, Yahoo og Microsoft kræver, at afsendere holder sig under 0,3 procent, og Brevo anbefaler at overvåge den med Gmail Postmaster Tools. Det tager langt længere at komme sig efter en overskridelse end at undgå en.
Fejlfinding
535 5.7.8 Authentication failed
Brugernavnet eller adgangskoden kunne ikke verificeres. Efter sandsynlighed:
- Kontoens e-mailadresse blev brugt i stedet for SMTP-loginnet i formatet
[email protected]. smtp-relay.brevo.comblev indsat i feltet til brugernavn. Brevo nævner det som en af de mest almindelige årsager.- Der blev brugt en API-nøgle i stedet for en SMTP-nøgle.
- Nøglen bærer et efterfølgende mellemrum eller linjeskift fra kopiér og indsæt.
- Indstillingen for kryptering passer ikke til porten.
- Nøglen blev gjort ugyldig efter en sikkerhedsadvarsel, og så skal du oprette en ny.
525 5.7.1 Unauthorized IP address
IP-blokering er slået til, og den adresse, der forbinder, er ikke godkendt. Tilføj den, og tjek din reelle udgående adresse først, hvis applikationen kører bag NAT eller på en containerplatform.
Intet svar og intet banner
Hvis TCP-forbindelsen åbner, men serveren aldrig sender sin 220-hilsen, kan autentificeringen ikke begynde, og fejlen ligger på din side af netværket. Firewalls i virksomheder tillader nogle gange forbindelsen og dropper så SMTP-trafikken i stilhed. AWS, Azure og Google Cloud begrænser som standard udgående SMTP på nye konti. Bed om at få begrænsningen hævet, eller skift til port 2525.
450, platformen er ikke aktiveret
Fejlen siger, at din SMTP-konto endnu ikke er aktiveret, eller at din afsendelsesplatform er slået fra lige nu. På en ny konto kræver transaktionel afsendelse et separat aktiveringstrin fra Brevos support. På en etableret konto betyder det som regel en suspendering, enten fordi en ubeskyttet formular blev ramt af bot-tilmeldinger, eller fordi kontoen viste tegn på at være kompromitteret.
Afsender afvist
Tjek tre ting: at domænet er autentificeret, at afsenderen er verificeret, og at From-headeren ikke er dit SMTP-login.
Posten accepteres, men lander i spam
Arbejd i denne rækkefølge. Bekræft, at afsenderdomænet er autentificeret, og at DKIM signerer. Bekræft, at From-domænet er dit eget og ikke en gratis mailudbyder. Tjek din klagerate i Postmaster Tools mod tærsklen på 0,3 procent. Kig først på indholdet, når de tjek er rene, for det er næsten aldrig den første årsag.
Dedikerede IP-adresser
En dedikeret IP hjælper kun ved høj og jævn volumen. Den skal varmes op, før du sender noget af betydning gennem den, og den kræver et afsenderunderdomæne, der optræder som mailed by- og return path-domæne i dine headere. Det er den ene konfiguration, hvor Brevo udleverer SPF- og MX-records, ved siden af A-, CNAME-, DKIM- og DMARC-records for det underdomæne.
To detaljer snyder folk. En dedikeret IP, der er sat op til marketingmails, sætter kun dine transaktionelle beskeder i kø i stedet for at sende dem, så skift den om, eller køb en IP nummer to. Og at adskille routing af transaktionel post fra marketing kræver en pulje på mindst to IP-adresser med hver sine afsendere, så svagt engagement på marketingmails ikke kan trække kvitteringer og nulstilling af adgangskoder ned.
Sådan rammer du rigtigt første gang
Autentificér domænet, opret en navngivet SMTP-nøgle, forbind til smtp-relay.brevo.com på 587, og send en test gennem den rigtige kodesti frem for en knap i dashboardet. Næsten hvert eneste senere problem kan spores tilbage til en af tre ting.
- Den forkerte legitimationsoplysning i feltet til brugernavn eller adgangskode.
- En port og en krypteringsindstilling, der ikke passer sammen.
- Et afsenderdomæne, der aldrig blev autentificeret.
Får du dem rigtigt, forsvinder relayet ind i baggrunden, hvilket er præcis det, transaktionel infrastruktur skal.