Moduuli 4 · 4.4
DKIM: allekirjoitus sähköpostisi alla
Moduuli 4: Sähköpostin tietueet · Lukuaika: 8 minuuttia
Oppimistavoite: Tämän oppitunnin jälkeen osaat selittää miten DKIM toimii, löytää ja tarkistaa DKIM-tietueen, ja lisätä ulkoisen palvelun DKIM-tietueen (TXT- tai CNAME-muodossa) oikein.
Keskeiset käsitteet: DKIM, digitaalinen allekirjoitus, yksityinen avain ja julkinen avain, selector, _domainkey, d= ja s=, v=DKIM1; k=rsa; p=, DKIM CNAME:n kautta, avainten rotaatio
Sinetti jokaisessa sähköpostissa
SPF (oppitunti 4.3) tarkistaa miltä palvelimelta sähköposti tulee. DKIM (DomainKeys Identified Mail, RFC 6376) toimii eri tavalla: se lisää digitaalisen allekirjoituksen itse sähköpostiin.
Näin se toimii:
- Lähettävällä sähköpostipalvelimella on salainen yksityinen avain. Sillä se luo jokaiselle sähköpostille allekirjoituksen tärkeimmistä osista: lähettäjästä, aiheesta, päivämäärästä ja sisällöstä.
- Tämä allekirjoitus liitetään sähköpostin otsaketietoon:
DKIM-Signature. - Vastaava julkinen avain on verkkotunnuksen DNS:ssä TXT-tietueena.
- Vastaanottaja hakee julkisen avaimen ja tarkistaa allekirjoituksen. Jos se täsmää, hän tietää kaksi asiaa: sähköpostin on allekirjoittanut joku, joka hallinnoi kyseisen verkkotunnuksen DNS:ää, ja sähköpostin sisältöä ei ole muutettu matkalla.
Hienoa DKIM:ssä on, että se toimii edelleen kun sähköposti välitetään eteenpäin, kunhan sisältöä ei muuteta. SPF:llä on tämän kanssa vaikeuksia.
Missä avain sijaitsee? Selector
Verkkotunnuksella voi olla useita DKIM-avaimia: yksi omalta sähköpostipalvelimelta, yksi Microsoft 365:ltä, yksi uutiskirjepalvelulta. Jotta ne pysyvät erillään, jokaisella avaimella on nimi, selector.
Allekirjoituksessa on kaksi tärkeää kenttää:
DKIM-Signature: v=1; a=rsa-sha256; d=example.com; s=mail2026; ...d=example.com: allekirjoittava verkkotunnus.s=mail2026: selector.
Vastaanottaja hakee avaimen tällä nimellä:
<selector>._domainkey.<domein>
mail2026._domainkey.example.comOsa _domainkey on kiinteä. Tietue näyttää esimerkiksi tältä:
mail2026._domainkey.example.com. 3600 IN TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOC..."| Osa | Merkitys |
|---|---|
v=DKIM1 | Tämä on DKIM-avain. |
k=rsa | Avaimen tyyppi. RSA on yleinen; myös ed25519 on käytössä (RFC 8463). |
p=... | Itse julkinen avain, pitkä kirjain- ja numerosarja. Jos p= on tyhjä, avain on peruutettu. |
2048 bitin RSA-avain on yleinen valinta; 1024 bittiä on minimi (RFC 8301). Tällainen avain on pidempi kuin 255 merkkiä, joten tietue koostuu useista tekstinpätkistä (oppitunti 4.2). Useimmat hallintapaneelit hoitavat tämän itse.
Oma DKIM, ja palveluiden DKIM
Hostingpakettisi tai sähköpostipalvelimesi. Monilla palvelimilla DKIM on oletuksena käytössä ja hallintapaneeli lisää tietueen DNS:ään itse. Näet silloin TXT-tietueen, jonka nimi on esimerkiksi x._domainkey tai default._domainkey.
Jos verkkotunnuksesi DNS on toisella palveluntarjoajalla (esimerkiksi Cloudflare tai verkkotunnusvälittäjäsi), sähköpostipalvelimesi ei voi lisätä tietuetta sinne itse. Silloin kopioit nimen ja koko arvon hostingpaneelistasi ja luot DNS-palveluntarjoajallesi TXT-tietueen täsmälleen samalla nimellä ja arvolla. Tämä unohtuu usein nimipalvelimia vaihdettaessa: sähköposti alkaa silloin yllättäen mennä useammin roskapostiin.
Ulkoiset palvelut. Microsoft 365, Google Workspace ja uutiskirjepalvelut allekirjoittavat omalla avaimellaan. Saat heiltä yhden tai useamman tietueen:
- TXT-muodossa, esimerkiksi Google Workspace: nimi
google._domainkey, arvov=DKIM1; k=rsa; p=ja sen perässä pitkä avain. - CNAME-muodossa, esimerkiksi Microsoft 365 (
selector1._domainkeyjaselector2._domainkey) tai Mailchimp (k2._domainkeyjak3._domainkey). CNAME osoittaa avaimeen, jota palvelu hallinnoi itse. Etu: palvelu voi vaihtaa avaimensa ilman, että sinun tarvitsee tehdä mitään.
Kaikilla näillä tietueilla on oma selector, joten ne eivät ole ristiriidassa keskenään. Älä poista oman sähköpostipalvelimesi DKIM-tietuetta kun lisäät uuden palvelun.
Miksi kaksi selectoria?
Palvelut kuten Microsoft 365 pyytävät kaksi CNAME-tietuetta, selector1 ja selector2. Ne allekirjoittavat kerrallaan yhdellä avaimella ja vaihtavat säännöllisesti toiseen (avainten rotaatio). Jos lisäät vain selector1-tietueen, se toimii ensimmäiseen vaihtoon asti, ja sen jälkeen DKIM epäonnistuu kertaheitolla. Lisää siis aina kaikki tietueet, jotka palvelu ilmoittaa.
Yleisiä virheitä
- Verkkotunnus kahteen kertaan. Kirjoitat
k2._domainkey.example.companeeliin, joka lisää verkkotunnuksen perään itse. Tuloksena:k2._domainkey.example.com.example.com. Kirjoita vaink2._domainkey. - TXT CNAME:n sijaan (tai toisinpäin). Käytä täsmälleen sitä tyyppiä, jonka palvelu ilmoittaa.
- Ei pistettä CNAME-kohteen lopussa. Paneeleissa, jotka tätä vaativat:
dkim2.mcsv.net.pisteen kanssa. - Avain katkennut. Kopioinnissa viimeinen osa
p=-arvosta puuttuu. Vertaa alkua ja loppua alkuperäiseen. - DKIM otettu käyttöön palvelun paneelissa, mutta tietueita ei ole lisätty, tai toisinpäin. Useimmissa palveluissa tietueet pitää lisätä ensin ja vasta sen jälkeen DKIM otetaan käyttöön palvelun hallintanäkymässä.
DKIM:n toimivuuden tarkistaminen
Lähetä sähköposti suuren palveluntarjoajan osoitteeseen (esimerkiksi Gmail) ja katso viestin alkuperäinen muoto (Näytä alkuperäinen tai Näytä lähde). Etsi dkim=pass ja katso mikä verkkotunnus siinä mainitaan. Voit myös lähettää sähköpostin testipalveluun kuten mail-tester.com. Voit hakea tietueen myös itse DNS-työkalulla: hae TXT-tietue osoitteesta <selector>._domainkey.<domein>.
Käytännössä: näin se näkyy hallintapaneelissa
Tässä esimerkissä käytämme DirectAdminia. DNS Administration -näkymässä on TXT-tietue nimeltä x._domainkey; arvo alkaa v=DKIM1; k=rsa; p=. E-mail Manager -kohdan E-mail Accounts -näkymässä on painike DKIM:n kytkemiseksi päälle tai pois. Palvelun CNAME-tietueen luot kohdasta Add Record, tyyppi CNAME, nimi k2._domainkey, arvo pisteellä lopussa.
Muissa paneeleissa DKIM saattaa löytyä kohdasta "Sähköpostin todennus" tai "Sähköpostin suojaus", mutta DNS:ssä oleva tietue on kaikkialla samanlainen.
Yhteenveto
- DKIM lisää digitaalisen allekirjoituksen jokaiseen sähköpostiin; julkinen avain sijaitsee DNS:ssä.
- Avain sijaitsee osoitteessa
<selector>._domainkey.<domein>. Selector on allekirjoituksessa (s=), samoin verkkotunnus (d=). - Jokaisella palvelulla on oma selector; eri palveluiden tietueet eivät ole ristiriidassa keskenään.
- Palvelut käyttävät usein CNAME-tietueita ja useita selectoreita. Lisää ne kaikki, täsmälleen ilmoitetulla tyypillä.
- Jos DNS:si on toisella palveluntarjoajalla, sinun täytyy lisätä oman sähköpostipalvelimesi DKIM-avain sinne itse.
Tietovisa
Tehtävä
Tehtävä Z4.4: DKIM:n etsiminen. Avaa sähköposti, jonka olet saanut yritykseltä tai organisaatiolta, ja katso sen alkuperäinen muoto. Etsi otsaketiedosta DKIM-Signature verkkotunnus (d=) ja selector (s=). Syötä molemmat. Tarkistus hakee vastaavan avaimen.
Tehtävä O4.4: Oman harjoitusvyöhykkeen asetukset. Harjoitusvyöhykkeellä käytetään valesovellusta; omassa oikeassa verkkotunnuksessasi käytät todellista avainta tai CNAME:a sähköpostipalvelimeltasi tai palvelultasi. Saat tehtävän yhteydessä harjoitusavaimen (arvon p=-kentän jälkeen). Avain on pitkä: liitä se kokonaan, jättämättä mitään pois. Luo harjoitusvyöhykkeellesi :<code>.dnspractice.eu
- TXT-tietue osoitteeseen
cursus._domainkeyarvollav=DKIM1; k=rsa; p=<oefensleutel>; - CNAME-tietue osoitteeseen
k2._domainkey, joka osoittaa osoitteeseendkim.newsletter-demo.dnspractice.eu.(pisteen kanssa lopussa, jos paneelisi sitä vaatii).
Tehtävä O4.4
Teet tämän tehtävän omassa harjoitusvyöhykkeessäsi: aidossa DNS-vyöhykkeessä WebOkén nimipalvelimilla, vain sinua varten. Kirjaudu sähköpostiosoitteellasi. Saat kirjautumislinkin sähköpostiisi ja palaat sen jälkeen tälle oppitunnille. Käytämme osoitettasi vain tätä kurssia varten.
Lue lisää
Näissä artikkeleissa kuvatut vaiheet pätevät WebOkén hallintapaneeleihin; muissa paneeleissa toimintaperiaate on samankaltainen.
- DirectAdmin-ohje 5.8: DKIM:n käyttöönotto ja tarkistaminen
- DKIM:n määrittäminen, kun DNS on ulkoisella palvelimella
- DirectAdmin-ohje 5.4: CNAME-tietueet ja piste lopussa
- WebOké-käyttöopas 6.7: Sähköpostiasetukset-kortti (MX, SPF, DKIM, DMARC)
- RFC 6376 (DKIM), RFC 8301 (avaimen pituus), RFC 8463 (Ed25519)
