Vissza a bloghoz

Levelezőszerver-beállítási útmutató: A Postfix, Dovecot, MySQL és SpamAssassin használata

Levelezőszerver-beállítási útmutató: A Postfix, Dovecot, MySQL és SpamAssassin használata

Bevezetés

A(z) Ubuntu 20.04 rendszeren olyan eszközöket használhat, mint a(z) Postfix, Dovecot, MySQL és SpamAssassin egy levelezőszerver konfigurálásához. A folyamat zavaró lehet annak, aki először próbálkozik vele. Ez az útmutató részletes lépésekkel igyekszik leegyszerűsíteni a levelezőszerver konfigurációs folyamatát. Az útmutató végére tudni fogja, hogyan adhat hozzá virtuális tartományokat, felhasználókat és álneveket. Végül pedig biztonságosabbá teszi virtuális szerverét a spamelosztókkal szemben.

Előfeltételek

Mielőtt elkezdené a levelezőszerver konfigurálását, gondoskodnia kell néhány előfeltételről. Először is győződjön meg arról, hogy a virtuális magánszervere rendelkezik egy olyan tartománnyal, amely a szerverére mutat. Szüksége van továbbá a MySQL telepítésére és konfigurálására. Emellett rendelkeznie kell egy root jogosultságokkal rendelkező felhasználóval és telepítenie kell egy SSL-tanúsítványt. Végül győződjön meg arról, hogy az Ön FQDN  be van állítva és azonosítva van.

Ha a csomagokat root felhasználóként telepíti, minden jogosultsággal rendelkezni fog. Ezért javasoljuk ezt:

Adja meg a felhasználó jelszavát. Ekkor látni fogja, hogy a $ szimbólum átvált a következőre: #. Ezután vizsgáljuk meg a konfiguráció különböző szempontjait egyenként.

1. lépés: Csomagok telepítése

Kezdésként megtanuljuk, hogyan kell telepíteni a csomagokat:

Amikor a Postfix konfiguráció megjelenik, válassza az Internet Site:

Mail Server postfix config

lehetőséget. Meg fogják kérdezni a Rendszer levelezési nevét. Itt használhatja a FQDN nevet vagy a fő tartományt:

postfix configuration 2

2. lépés: MySQL adatbázis, virtuális tartományok, felhasználók és álnevek létrehozása

Ezután, miután az összes csomag telepítve van, továbblépünk a konfigurációra. Célunk három tábla konfigurálása. Az egyik a tartományoknak, egy a felhasználóknak és egy az álneveknek lesz. Ezek egy általunk létrehozott MySQL adatbázisban fognak helyet kapni.

Tegyük fel, hogy az adatbázisunkat servermail-nek szeretnénk nevezni. Szabadon választhat tetszőleges nevet. Így fogjuk létrehozni:

Be kell jelentkeznie MySQL root felhasználóként:

Ezután adja meg a jelszavát. Sikeres kísérlet esetén ez jelenik meg eredményként:

Ezután létrehozunk egy új felhasználót kifejezetten a levélhitelesítéshez. Adja meg a SELECT jogosultságot a következőképpen:

Ezt követően frissítse a MySQL jogosultságokat a jogosultságok sikeres alkalmazásához:

Ezután az adatbázisunkat fogjuk használni a táblák létrehozásához és az adatok beviteléhez:

Külön táblákat hozunk létre az engedélyezett tartományként felismert specifikus tartományok számára:

A cél a felhasználók bevezetése a táblába. Ezért hozzáadjuk a megfelelő e-mail címet és jelszót. Tartsa szem előtt, hogy minden felhasználót társítania kell egy tartományhoz:

Ezután létrehozunk egy táblát az összes virtuális álnévhez (alias), hogy megadjuk az összes olyan e-mailt, amelyet továbbítani fogunk a másik e-mail címre:

A folyamat végére sikeresen létrehozott három táblát. Ezután be kell vezetnünk az adatokat.

  • Virtuális tartományok

Ebben a szakaszban megtanuljuk, hogyan vezethetünk be tartományokat a virtual_domains táblában. Kifejezetten arra fogunk összpontosítani, hogyan vezethetjük be az elsődleges tartományt (example.com) és az FQDN (hostname.example.com):

  • Virtuális e-mailek

Ezután adja meg az e-mail címet és a hozzá tartozó jelszavakat mindegyik tartományhoz. Győződjön meg arról, hogy minden adatot a saját specifikus adataira cserél:

  • Virtuális álnevek

Most megadhatja azt az e-mail címet, amelyre a másik e-mail címet továbbítani fogja. Az előbbi a forrás, míg az utóbbi a cél:

Ezután kiléphet a MySQL-ből:

3. lépés: A Postfix konfigurálása

Fontos a Postfix konfigurálása, hogy kezelni tudja az SMTP kapcsolatokat. Képesnek kell lennie arra is, hogy elküldje az üzeneteket a MySQL adatbázisban megadott összes felhasználó számára. Kezdjük azzal, hogy másolatot készítünk az alapértelmezett fájlról. Ez azért szükséges, hogy szükség esetén könnyen visszaállhasson az alapértelmezett konfigurációra:

Most nyissa meg a main.cf fájlt a módosításához:

Kezdje a TLS paraméterek kikommentelésével, majd fűzzön hozzá minden egyéb paramétert. Példánkban az ingyenes SSL tanúsítványokat használjuk. Természetesen a konfigurációt az igényeinek megfelelően módosíthatja:

Ezután ezeket a paramétereket fogja hozzáfűzni a TLS beállítások alá:

Ezután ki kell kommentelnünk a mydestination alapértelmezett beállításait. Majd lecseréljük erre: localhost. Ezzel a változtatással a VPS képes lesz használni a MySQL táblában lévő virtuális tartományokat:

Most használja ezt a parancsot annak ellenőrzésére, hogy a myhostname paraméter be van-e állítva az FQDN-ben:

Ezenkívül fűzze hozzá ezt a sort, hogy aktiválja a helyi kézbesítést a táblázatban felsorolt összes virtuális tartományhoz:

Végezetül a következő paramétereket fogjuk hozzáadni, hogy utasítsuk a Postfixet a virtuális tartományok, felhasználók és álnevek konfigurálására:

Hogy megbizonyosodjon arról, hogy nincsenek hibák, hasonlítsa össze ezeket a változtatásokat a következő fájllal:

https://www.dropbox.com/s/x9fpm9v1dr86gkw/etc-postfix-main.cf.txt

Miután mindezt ellenőrizte, létre kell hoznia három fájlt, amelyeket hozzáfűz a main.cf fájlhoz. A cél itt az, hogy utasításokat adjunk a Postfixnek a MySQL-hez való kapcsolódásra. Ehhez először létrehozzuk a mysql-virtual-mailbox-domains.cf fájlt. Természetesen a saját fájljában a személyes konfigurációjának megfelelő módosításokat kell elvégeznie:

Ezután indítsa újra a Postfixet:

Meg kell győződnie arról, hogy a Postfix képes megtalálni a tartományát. Ennek teszteléséhez használja ezt a parancsot:

A parancs sikeres futás esetén 1-et ad vissza. Ebben az esetben folytathatja a mysql-virtual-mailbox-maps.cf fájl létrehozásával:

Indítsa újra a Postfixet még egyszer:

Ismét meggyőződünk arról, hogy a Postfix képes megtalálni az első e-mail címet. Ennek teszteléséhez használja a következő parancsot:

Sikeres futás esetén a kimenet 1 lesz. Ennek megfelelően továbblépünk az utolsó fájl létrehozására:

Ezzel befejeződött a Postfix és a MySQL közötti konfiguráció. A módosítások alkalmazásához indítsa újra a Postfixet:

A következő paranccsal ellenőrizheti, hogy a Postfix valóban megtalálja-e az álneveket:

Ideális esetben kimenetként azt az e-mailt kell kapnia, amely az álnévre lett továbbítva. Módosíthatja a /etc/postfix/master.cf fájlt is a következőképpen, ha biztonságosan szeretne csatlakozni a 587 porthoz az e-mail kliensekkel biztonságosan:

A következőképpen távolíthatja el a kommentjelet bizonyos sorok elől, és fűzhet hozzájuk paramétereket:

Esetenként szükség lehet a Postfix újraindítására, hogy megbizonyosodjon a port nyitottságáról:

Ez az eszköz szintén használható a tartomány portjainak pásztázására. Segítségével ellenőrizheti, hogy a 25 és 587 portok nyitva vannak-e.

4. lépés: A Dovecot konfigurálása

Most pedig ideje konfigurálni a Dovecotot. Ebben a részben le kell másolnunk azt a 7 fájlt, amelyet módosítani szeretne. Ez biztosítja, hogy szükség esetén visszaállíthassa az eredeti állapotot. Írja be a következő parancsokat egyenként:

Szerkesztenie kell a Dovecot konfigurációs fájlját:

Győződjön meg arról, hogy az opció nincs kikommentelve:

Ezután engedélyezzük a protokollokat a !include_try /usr/share/dovecot/protocols.d/*.protocol sor alatt. Ha szeretné, hozzáadhatja a pop3:

A hibák elkerülése érdekében hasonlítsa össze ezzel a fájllal:

https://www.dropbox.com/s/wmbe3bwy0vcficj/etc-dovecot-dovecot.conf.txt

Ezután szerkessze a levelezési konfigurációs fájlt:

Keresse meg a mail_location sort. Távolítsa el a kommentjelet, és adja hozzá ezt a paramétert:

Ezt követően keresse meg a mail_privileged_group sort. Ismét távolítsa el a kommentjelet, és adja hozzá a mail paramétert:

A hibák lehetőségének kizárása érdekében hasonlítsa össze ezzel a fájllal:

https://www.dropbox.com/s/hnfeieuy77m5b0a/etc.dovecot.conf.d-10-mail.conf.txt

  • Jogosultságok ellenőrzése

A jogosultságok ellenőrzéséhez használja ezt a parancsot:

Győződjön meg arról, hogy a jogosultságok a következőképpen jelennek meg:

Minden tartományhoz létrehozhat egy mappát. Ezek a mappák mind regisztrálva lesznek a MySQL táblában:

Hozzon létre egy vmail felhasználót és csoportot a következő azonosítóval: 5000:

Ezután meg kell változtatnia a tulajdonosát a /var/mail mappának a vmail felhasználóra:

Most szerkessze a /etc/dovecot/conf.d/10-auth.conf fájlt:

Adja hozzá a következő sort az egyszerű szöveges hitelesítés kommentjének feloldása után:

Használja ezt a auth_mechanisms paraméter módosítására:

Most tegye kommentbe ezt a sort:

A MySQL hitelesítés engedélyezéséhez fel kell oldania a következő sor kommentjét:

A hibák észleléséhez és javításához használja a következő fájlt:

https://www.dropbox.com/s/4h472nqrj700pqk/etc.dovecot.conf.d.10-auth.conf.txt

Egy /etc/dovecot/dovecot-sql.conf.ext fájl létrehozása az Ön adataival lehetővé teszi a hitelesítést:

Írja be ezt a kódot a fájlba:

A saját MySQL adatainkat fogjuk használni a /etc/dovecot/dovecot-sql.conf.ext fájl módosításához:

Állítsa be a MySQL-t paraméterként, miután feloldotta a driver paraméter kommentjét, így:

A MySQL-specifikus adatait a connect sor kommentjének feloldásával adhatja meg:

Most fel kell oldania a default_pass_scheme sor kommentjét, és át kell írnia erre: SHA-512:

Adja hozzá a következő információkat, miután feloldotta a kommentet itt: password_query:

A hibák észleléséhez használja ezt a fájlt az összehasonlításhoz:

https://www.dropbox.com/s/48a5r0mtgdz25cz/etc.dovecot.dovecot-sql.conf.ext.txt

Ezután megváltoztathatja a dovecot mappa tulajdonosát és csoportját a vmail felhasználóra:

A következő lépés a /etc/dovecot/conf.d/10-master.conf fájl módosítása. Itt különösen óvatosnak kell lennie, mivel különböző paraméterek fognak változni:

Használja a következő kódot a unix_listener paraméter módosítására a következőre: service_auth:

Ezután szerkesztenie kell a service auth-worker a következőképpen:

Keresse meg a hibákat a következő fájllal való összehasonlítással:

https://www.dropbox.com/s/g0vnt233obh6v2h/etc.dovecot.conf.d.10-master.conf.txt

A következő lépésben módosítjuk a Dovecot SSL konfigurációs fájlját. Ha az alapértelmezett konfigurációt tervezi használni, akkor ezt a lépést kihagyhatja, és továbbléphet a következő szakaszra:

Ezután módosítsa az ssl paramétert „required” értékre a következőképpen:

Módosítjuk az útvonalat mindkét paraméternél: ssl_cert és ssl_key:

Indítsa újra a Dovecotot:

Győződjön meg róla, hogy a 993 port nyitva van. Ha engedélyezte a pop3 szolgáltatást, akkor ellenőrizze a 995:

Ha eddig a pontig elvégezte a lépéseket, gratulálunk! Sikeresen konfigurálta a levelezőszerverét. Annak ellenőrzésére, hogy minden lépést helyesen hajtott-e végre, tesztelheti a fiókját egy levelezőkliens segítségével, például így:

A 993 port a biztonságos IMAP-hoz használatos, míg a 587 port/ 25 port az SMTP-hez.

5. lépés: A SpamAssassin konfigurálása

Végül elérkeztünk az útmutató utolsó részéhez, ahol a SpamAssassin-t fogjuk konfigurálni. A SpamAssassin telepítésével kezdjük:

Hozzon létre egy felhasználót a SpamAssassin számára a következőképpen:

A SpamAssassin konfigurálásához meg kell nyitnia és módosítania kell a konfigurációs beállításokat:

Most, hogy itt van, módosítania kell az ENABLED paramétert a SpamAssassin démon engedélyezéséhez:

Módosítsa a home és az options paramétereket ezzel a kóddal:

Használja ezt a sort a PID_File paraméter megadásához:

Ezután használja ezt a parancsot annak jelzésére, hogy a SpamAssassin szabályai automatikusan frissüljenek:

Ellenőrizze a hibákat a következő dokumentummal való összehasonlítással:

https://www.dropbox.com/s/ndvpgc2jipdd4bk/etc.default.spamassassin.txt

Ha be szeretné állítani a spamszűrő szabályokat, meg kell nyitnia az /etc/spamassassin/local.cf fájlt ismét:

A SpamAssassin úgy működik, hogy pontoz minden, a felhasználó által kapott levelet. Értékeli a levelek pontszámait, és ha a spam-ellenőrzés során ez meghaladja az 5.0-t, a levelet spamként jelöli meg. Íme a paraméterek, amelyeket a spamszűrő szabályok konfigurálásához használhat:

Miután a levélszemét-ellenes szabályok be vannak állítva, meg kell mondania a Postfixnek, hogy minden e-mailt ellenőrizzen a SpamAssassin segítségével. Ebből a célból módosítanunk kell a /etc/postfix/master.cf fájlt:

Keresse meg a következő sort, és adja hozzá a spamassassin szűrőt:

Most pedig hozzáfűzheti ezeket a paramétereket:

Végül indítsa el a SpamAssassint, és indítsa újra a Postfixet a változtatások alkalmazásához. Az újraindítás után a Postfix elkezdi ellenőrizni a levélszemetet az e-mailekben:

És ennyi! Sikeresen konfigurálta levelezőszerverét a Postfix és a Dovecot segítségével. Elvégezte a MySQL hitelesítést is, és beállította a levélszemétszűrést a SpamAssassin segítségével.

Összegzés

Ez az útmutató vázolja azokat a lépéseket, amelyeket követnie kell a levelezőszerver konfigurálásához a fent említett eszközökkel. Átfogó útmutatóként használható a levelezőszerver önálló beállításához. Ha érdekli a Google SMTP-szerver funkciójának használata, kövesse ezt az útmutatót.

Kellemes számítógéphasználatot!

author

Pranay Kapgate

Szerző · CloudSigma

Preslav Dobrev a CloudSigma kreatív tervezője, aki hagyományos és innovatív marketingcsatornák segítségével következetes vállalati identitás kialakítására összpontosít. Kiemelkedően képes ötvözni a művészi látásmódot a stratégiai marketinggel, hogy hatásos márkatörténeteket hozzon létre.

Hozzászólások

Még nincsenek hozzászólások. Legyen Ön az első.