DKIM konfigurálás Postfix-al, Debian 7 alatt

Ha levelezőszervert üzemeltetünk nem árt, hogy ha megfelelően beállítottuk azt, mert a szerverünkről küldött levelek a fogadó oldalon könnyen a spam mappában végezhetik vagy rosszabb esetben el sem jut odáig. Ennek elkerülése érdekében érdemes jól beállítani a levelezőszervert és ellátni hitelesített aláírással. A következő linken mindenki szabadon tesztelheti (24 óránként 3 e-mail megvizsgálása ingyenes) a levelezőszerverének a beállításait: https://www.mail-tester.com/

A teszteléshez nincs más teendőnk csak az oldal utasításait követni: a generált e-mail címre egy levelet küldeni majd megnyomni az „Ezután nézd meg a pontszámot” gombot. Nálam az alapértelmezett beállítások sajnos nem kecsegtettek túl sok jóval, a 10-ből 2.9-et értem el. Ugye, hogy nem hangzik jól az értékelés?

A levele soha nem fog eljutni a címzetthez

Nade lássunk is hozzá, hogy mit kell tenni ahhoz, hogy a bűvös 10/10-et elérjük. A kiértékelt oldalon a plusz gombokat nyomkodva tájékoztat a rendszer minket, hogy pontosan mi is a probléma…

Először is telepítsük fel az opendkim és opendkim-tools csomagokat:

apt-get install opendkim opendkim-tools

Ezután szerkesszük meg a /etc/opendkim.conf fájlt:

mcedit /etc/opendkim.conf

Itt figyelnünk kell, hogy Socket-nek mit adtunk meg, mert a későbbiekben erre hivatkozunk:

AutoRestart             Yes
AutoRestartRate         10/1h
UMask                   002
Syslog                  yes
SyslogSuccess           Yes
LogWhy                  Yes

Canonicalization        relaxed/simple

ExternalIgnoreList      refile:/etc/opendkim/TrustedHosts
InternalHosts           refile:/etc/opendkim/TrustedHosts
KeyTable                refile:/etc/opendkim/KeyTable
SigningTable            refile:/etc/opendkim/SigningTable

Mode                    sv
PidFile                 /var/run/opendkim/opendkim.pid
SignatureAlgorithm      rsa-sha256

UserID                  opendkim:opendkim

Socket                  inet:8891@localhost
TemporaryDirectory      /var/tmp
Selector                default
MinimumKeyBits          1024
OversignHeaders         From/others
KeyFile                 /etc/opendkim/keys/szilieu/default

Mentsük el a változtatásokat, majd nyissuk meg a /etc/default/opendkim fájlt és írjuk bele:

SOCKET="inet:8891@localhost"

A következő lépés a Postfix beállítása, nyissuk meg szerkesztésre:

mcedit /etc/postfix/main.cf

Adjuk hozzá a következő sorokat (figyeljünk arra, hogy a portszámnak meg kell egyezni az opendkim.conf fájlban szereplő Socket sorban lévő port számmal):

milter_protocol = 2
milter_default_action = accept
smtpd_milters = inet:localhost:8891
non_smtpd_milters = inet:localhost:8891

Ha ezzel megvagyunk, hozzuk létre az alábbi mappákat:

mkdir /etc/opendkim
mkdir /etc/opendkim/keys

Ezt követően hozzuk létre az alábbi fájlt:

mcedit /etc/opendkim/TrustedHosts

Írjuk bele az alábbi tartalmat (több domain esetén soroljuk fel mindet, aldomain esetén írhatunk *.szili.eu-t is):

127.0.0.1
localhost
szili.eu

Hozzuk létre a következő fájlt:

mcedit /etc/opendkim/SigningTable

Majd módosítsuk az alábbi szerint (több domain esetén szintén felsorolható az összes):

*@szili.eu default._domainkey.szili.eu

Végül hozzuk létre az utolsó fájlt:

mcedit /etc/opendkim/KeyTable

Töltsük fel az alábbi tartalommal:

default._domainkey.szili.eu szili.eu:default:/etc/opendkim/keys/szili.eu/default

Generáljuk le a publikus és privát kulcsokat, de előtte hozzunk létre mappákat domainenként, amiben a kulcsokat tároljuk:

cd /etc/opendkim/keys
mkdir szili.eu
cd szili.eu

Kulcs generálása:

opendkim-genkey -s default -d szili.eu

Majd nevezzük át a default.private állományt:

mv default.private default

Ezután adjuk meg a megfelelő jogosultságot a mappához és a fájlokhoz:

chown -R opendkim: szili.eu

A következő lépés a DNS bejegyzések hozzáadása. Adjuk hozzá a publikus kulcsunkat az alábbi módon:

@                               IN      TXT     "v=spf1 a mx ~all"
_dmarc                          IN      TXT     "v=DMARC1; p=none"
default._domainkey              IN      TXT     "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDrOs64rqF4hLt2PgyYGpQ50+3JK7tDajNkQG1Z3ya4a1EC0IDFrrsFZY5Z6P2d+k6OlXI0o4+W5L9FHLg1wX8j7BRZpKmRnnXt1pP/mBpIl8PIl0QjebDAhvxNNz7oQlqBGIcZOxN84MYOr7lwE+ky73jZEh0ZIfMs0qoyGmclPQIDAQAB"

A DNS bejegyzéseket a következőképpen tudjuk tesztelni:

dig +short default._domainkey.szili.eu TXT
dig +short _dmarc.szili.eu TXT

A beállítások után indítsuk újra a postfix-et és az opendkim-et, majd az opendkim-et adjuk hozzá az automatikus indításhoz:

/etc/init.d/postfix restart
/etc/init.d/opendkim restart
update-rc.d opendkim defaults

Természetesen várni kell a amíg a DNS szerverek frissülnek, így nem biztos hogy elsőre jó eredményt kapunk vissza. A beállítások elvégzése után az első teszt levelem tartalma csupán teszt tárgy és teszt szöveg volt, ezért csak 8.1-es eredményt kaptam:

Jónak tűnik. Majdnem tökéletes levél

Ha komplettebb tartalmat teszünk a levélbe, akkor már meg fogjuk kapni a várva várt 10/10-es értékelést:

Remek! Tökéletes levél, elküldheti

Ezzel el is készültünk. 🙂

Ha nem lenne elegendő a nap 3 e-mail, van egy másik módja is tesztelni a leveleinket. Küldjünk erre a címre egy tetszőleges üzenetet és vissza fog jönni egy válasz az eredményeről: [email protected]

Akkor vagyunk jók, ha válaszban az alábbi tartalmat látjuk:

==========================================================
Summary of Results
==========================================================
SPF check:          pass
DomainKeys check:   neutral
DKIM check:         pass
DKIM check:         pass
Sender-ID check:    pass
SpamAssassin check: ham

 

Hozzászólás

Az e-mail címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük

A honlap további használatához a sütik használatát el kell fogadni. További információ

A süti beállítások ennél a honlapnál engedélyezett a legjobb felhasználói élmény érdekében. Amennyiben a beállítás változtatása nélkül kerül sor a honlap használatára, vagy az "Elfogadás" gombra történik kattintás, azzal a felhasználó elfogadja a sütik használatát.

Bezárás