Modul 9 · 9.1
E-post fra WordPress
Modul 9: E-post, synlighet i søkemotorer, GDPR, vedlikehold og flytting · Lesetid: 9 minutter
Læringsmål: Etter denne leksjonen kan du sørge for at e-post fra WordPress (skjemaer, bestillinger, passordlenker) kommer pålitelig frem.
Nøkkelbegreper: wp_mail, PHP mail(), avsender (From), Reply-To, SMTP, SMTP-utvidelse, autentisert postboks, transaksjonell e-posttjeneste, SPF, DKIM, DMARC, justering (alignment), MX et annet sted, testmail
WordPress sender mer e-post enn du tror
Nettstedet ditt sender e-post ved: et utfylt kontaktskjema, en bestilling (til kunden og til deg), en ny bruker, et glemt passord, en ny kommentar, en automatisk oppdatering, en kritisk feil (leksjon 5.4). Kommer ikke den e-posten frem, merker du det ofte først når en kunde ringer: «jeg har fylt ut skjemaet tre ganger.»
Hvordan WordPress sender e-post som standard
WordPress sender alt via funksjonen wp_mail. Som standard gir den e-posten videre til PHP-funksjonen mail(), som sender den videre til webserverens e-postprogram. Det fungerer, men har tre svake punkter:
- Avsenderen. Uten innstilling sender WordPress som
wordpress@example.com. Finnes ikke den adressen, eller er avsenderen noe annet enn ditt eget domene, mistror mottakerne den. - SPF, DKIM og DMARC. Mottakende e-postservere kontrollerer om serveren som leverer e-posten, har lov til å sende e-post på vegne av domenet ditt (SPF), om e-posten har en gyldig digital signatur fra domenet ditt (DKIM), og hva domenets policy er hvis dette ikke stemmer (DMARC). I DNS-kurset (leksjon 4.3 til og med 4.5) kan du lese hvordan dette fungerer. E-post via webserveren består bare disse kontrollene hvis DNS-en og serveren er satt opp riktig for dette.
- E-post et annet sted. Ligger ikke e-posten din hos webhotellet ditt, men for eksempel hos Microsoft 365 eller Google Workspace (MX-postene dine peker dit), stemmer e-posten via webserveren ofte ikke med SPF og DKIM. Og enkelte webservere prøver å levere e-post til ditt eget domene lokalt i stedet for via MX-en, slik at den aldri havner i den virkelige postboksen din.
Sette opp avsender og Reply-To riktig
En vanlig feil i kontaktskjemaer: å bruke adressen til den besøkende som avsender (From). Det virker logisk («da kan jeg trykke svar»), men serveren din har ikke lov til å sende e-post på vegne av @gmail.com eller @hotmail.com. De domenene har en streng DMARC-policy, så mottakeren avviser e-posten eller setter den i søppelpost.
Riktig er:
From: Website <website@example.com> (en adresse fra ditt eget domene)
Reply-To: bezoeker@example.net (adressen den besøkende fylte inn)
To: info@example.comMed Reply-To havner svaret ditt likevel hos den besøkende. Så godt som alle skjemautvidelser har disse to feltene hver for seg.
SMTP: sende via en ekte postboks
Den mest pålitelige løsningen er å la WordPress sende e-post via SMTP: samme måte som e-postprogrammet ditt sender på, med brukernavn og passord til en ekte postboks. Det gjør du med en SMTP-utvidelse (for eksempel WP Mail SMTP, FluentSMTP eller Post SMTP, det finnes flere). Utvidelsen fanger opp wp_mail og sender e-posten via serveren du oppgir:
| Valg | For hvem |
|---|---|
Postboksen hos ditt eget webhotell (for eksempel website@example.com på e-postserveren til webhotellpakken din) | De fleste mindre nettsteder med e-post hos samme leverandør |
| E-posten din hos Microsoft 365 eller Google Workspace | Hvis e-posten din ligger der, ofte via en egen kobling i utvidelsen (OAuth) i stedet for et passord, fordi disse tjenestene i økende grad begrenser vanlig SMTP-innlogging |
| En transaksjonell e-posttjeneste (en tjeneste som er spesialisert på å sende e-post fra nettsteder og apper) | Nettbutikker og nettsteder som sender mye e-post |
Fordeler: e-posten går via en server som allerede er satt opp med SPF og DKIM for domenet ditt, avsenderen er en eksisterende adresse, og mange utvidelser fører en logg, slik at du ser hva som er sendt og hva som mislyktes.
Vær oppmerksom på noen ting:
- Bruk en egen e-postadresse for nettstedet (for eksempel
website@), ikke din egen postboks. Blir nettstedet hacket og passordet lekker ut, kan den adressen byttes ut uten skade. - SMTP-passordet ligger i databasen eller i wp-config.php. Bruk der det er mulig et app-passord eller en kobling uten passord.
- En e-postlogg inneholder personopplysninger (hvem som har sendt hva). Ikke la den vokse i det uendelige (leksjon 9.3).
SPF, DKIM og DMARC for nettstedet ditt
Uansett hvilken server som sender, må DNS-en din stemme med det:
- SPF: SPF-posten til domenet ditt må nevne serveren som leverer e-posten. Sender du via e-postserveren til webhotellet ditt, står den som regel allerede der. Sender du via en transaksjonell tjeneste, legger du til deres
include:i den samme SPF-posten (aldri en andre SPF-post, DNS-kurset leksjon 4.3). - DKIM: den sendende serveren må signere e-posten med en nøkkel som står i DNS-en din (
<selector>._domainkey.example.com). Hos webhotellet ditt og hos transaksjonelle tjenester slår du dette på, tjenesten gir deg postene. - DMARC: en post på
_dmarc.example.com. Begynn medp=noneog stram til når alt stemmer (DNS-kurset leksjon 4.5).
For DMARC må domenet i From være justert (aligned) med domenet som består SPF eller DKIM. Derfor er «From på ditt eget domene» så viktig.
Testing
- Mange SMTP-utvidelser har en knapp for Send testmail. Send en til en adresse hos en annen leverandør (en Gmail- eller Outlook.com-adresse) og se om den havner i innboksen.
- Se på headerne i den e-posten («Vis original» eller «Vis kilde»). Se etter
spf=pass,dkim=passogdmarc=pass. - Fyll ut ditt eget kontaktskjema og se om e-posten kommer frem, med riktig Reply-To.
- Test også en passordlenke og, hvis du har en nettbutikk, en testbestilling.
Nettverktøy som mail-tester.com gir en poengsum og forklaring, med E-postsjekken til webhotellet ditt (hos WebOké heter den slik) eller internet.nl kontrollerer du DNS-siden.
I praksis: slik ser det ut i et kontrollpanel
Som eksempel bruker vi DirectAdmin og en SMTP-utvidelse. Hos andre webhoteller og utvidelser heter feltene lignende.
- Opprett i DirectAdmin under E-mail accounts en postboks
website@example.commed et sterkt passord. - Finn innstillingene for utgående e-post hos webhotellet ditt (servernavn, port 465 eller 587, kryptering).
- Fyll dette inn i SMTP-utvidelsen, med
website@example.comsom avsender. Slå på «tving avsender», slik at også andre utvidelser bruker denne adressen. - Kontroller under DNS-administrasjon at SPF, DKIM og DMARC finnes for domenet ditt.
- Send en testmail og les headerne.
Oppsummering
- WordPress sender via wp_mail og som standard via PHP mail(), avsenderen og DNS-en avgjør om den kommer frem.
- Sett avsenderen (From) til en adresse fra ditt eget domene og adressen til den besøkende i Reply-To.
- En SMTP-utvidelse med en egen postboks eller en transaksjonell tjeneste er mest pålitelig, med en logg.
- SPF må nevne den sendende serveren (i én post), DKIM må være aktivert, DMARC begynne med p=none.
- Test med en adresse hos en annen leverandør og les spf, dkim og dmarc i headerne.
Quiz
Oppgave
Oppgave A9.1: Er domenet ditt klart til å sende e-post fra nettstedet ditt? Fyll inn domenet ditt, adressen nettstedet ditt bruker som avsender, og serveren nettstedet ditt sender e-post via (navnet på SMTP-serveren, eller «webserver» hvis du ikke har stilt inn noe). Fyll også inn DKIM-selektoren hvis du vet den. Programmet kontrollerer: avsenderadressen hører til domenet ditt, det finnes nøyaktig én SPF-post og den tillater den nevnte serveren, det finnes en DKIM-post ved selektoren (eller det melder at det ikke kan kontrollere uten selektor), og det finnes en gyldig DMARC-post.
Oppgave D9.1: Å lese en testmail. Send en testmail fra nettstedet ditt (testknappen til SMTP-utvidelsen din, eller en passordlenke til en testkonto) til en adresse hos en annen leverandør. Åpne headerne til den e-posten og noter resultatene ved spf, dkim og dmarc, og hvilket domene som står ved hver av dem. Fyll deretter ut ditt eget kontaktskjema og kontroller: kommer e-posten frem, og går «svar» til adressen du fylte inn i skjemaet?
Oppgave D9.1: Å lese en testmail
Denne oppgaven gjør du selv; ingen kontrollerer den. Kryss av det du har gjort, og merk oppgaven som fullført.
Tre resultater (pass, fail eller none) med et domene, for eksempel "spf=pass smtp.mailfrom=dittdomene.no". Ved en fail nevner du neste steg (fylle ut SPF, slå på DKIM, SMTP-utvidelse).
Avkrysningene og notatene dine blir kun i denne nettleseren; vi sender dem ikke noe sted. Er du logget inn, lagrer vi kun i Mine kurs at du har gjort oppgaven.
Les mer
Disse artiklene beskriver trinnene i kontrollpanelene til WebOké, hos andre kontrollpaneler fungerer det lignende.
- Sending av e-post via PHP virker ikke, MX-postene peker et annet sted
- Hvordan får jeg riktig avsender med mail() i PHP? SMTP
- Et kontaktskjema på nettsiden din: send inn felt på e-post og unngå spam
- Slik sendes e-post / SMTP forklart
- DirectAdmin-veiledning 18.10: Jeg kan ikke sende e-post
- Gratis DNS-kurs 4.3: SPF: hvem kan sende e-post på vegne av domenet ditt?
- Gratis DNS-kurs 4.4: DKIM: signaturen under e-posten din
- Gratis DNS-kurs 4.5: DMARC: hva mottakere skal gjøre med falsk e-post
