E-mail szolgáltatások beállítása (SMTP, Imap és Imap) és az SMTP-hez való hozzáférés korlátozása – 7. rész
Az LFCE (Linux Foundation Certified Engineer) egy képzett szakember, aki rendelkezik a hálózati szolgáltatások telepítéséhez, kezeléséhez és hibaelhárításához szükséges ismeretekkel Linux rendszereken, és felelős a a rendszer architektúra és a felhasználói adminisztráció tervezése, megvalósítása és folyamatos karbantartása.
Bemutatkozik a Linux Foundation Certification Program.
Egy korábbi oktatóanyagban megbeszéltük, hogyan telepítsük a levelezőszolgáltatás szükséges összetevőit. Ha még nem telepítette a Postfix és a Dovecot alkalmazást, kérjük, olvassa el ennek a sorozatnak az 1. részét a további lépések előtt.
Követelmény
- A Postfix Mail Server és a Dovecot telepítése – 1. rész
Ebben a bejegyzésben megmutatom, hogyan kell konfigurálni a levelezőkiszolgálót, és hogyan kell végrehajtani a következő feladatokat:
- E-mail álnevek konfigurálása
- Konfiguráljon egy IMAP- és IMAPS-szolgáltatást
- Állítson be egy smtp szolgáltatást
- Korlátozza a hozzáférést egy smtp-kiszolgálóhoz
Megjegyzés: Beállításunk csak olyan helyi hálózat levelezőszerverére vonatkozik, ahol a gépek ugyanahhoz a tartományhoz tartoznak. Az e-mail üzenetek más tartományokba történő küldése bonyolultabb beállítást igényel, beleértve a tartománynév-feloldási képességeket is, amely nem tartozik az LFCE-tanúsítvány hatálya alá.
De először kezdjük néhány meghatározással.
A levélküldési, szállítási és kézbesítési folyamat összetevői
A következő kép az e-mailek továbbításának folyamatát mutatja be, a feladótól kezdve egészen addig, amíg az üzenet el nem éri a címzett postaládáját:
Ahhoz, hogy ez lehetséges legyen, több dolog történik a színfalak mögött. Annak érdekében, hogy egy e-mail üzenetet egy kliens alkalmazásból (például Thunderbird, Outlook vagy webmail szolgáltatások, például Gmail vagy Yahoo! Mail) a levelezőszerverére, majd onnan a célszerverre és végül a címzetthez kézbesítsen. , minden szerveren SMTP (Simple Mail Transfer Protocol) szolgáltatásnak kell lennie.
Amikor az e-mail szolgáltatásokról beszélünk, a következő kifejezéseket gyakran említik:
Üzenetátviteli ügynök – MTA
Az MTA (a Mail vagy a Message Transport Agent rövidítése), más néven mail relay, egy olyan szoftver, amely az e-mail üzenetek szerverről történő átviteléért felelős. ügyfélnek (és fordítva is). Ebben a sorozatban a Postfix az MTA-nk szerepét tölti be.
Mail User Agent – MUA
A MUA vagy a Mail User Agent egy számítógépes program, amely a felhasználó e-mail-fiókjainak elérésére és kezelésére szolgál. A MUA-kra példák többek között a Thunderbird, az Outlook és a webmail felületek, például a Gmail, az Outlook.com, hogy csak néhányat említsünk. Ebben a sorozatban példáinkban a Thunderbird-et fogjuk használni.
Levélkézbesítési ügynök
Az MDA (az Üzenet vagy a Mail Delivery Agent rövidítése) az a szoftverrész, amely ténylegesen kézbesíti az e-mail üzeneteket a felhasználó postafiókjába. Ebben az oktatóanyagban a Dovecotot fogjuk használni MDA-ként. A Dovecot kezeli a felhasználói hitelesítést is.
Simple Mail Transfer Protocol – SMTP
Ahhoz, hogy ezek az összetevők „beszélhessenek ” egymással, ugyanazt a „nyelvet” (vagy protokollt) kell „beszélniük” ), nevezetesen az RFC 2821-ben meghatározott SMTP (Simple Mail Transfer Protocol). Valószínűleg erre az RFC-re kell hivatkoznia a levelezőszerver-környezet beállításakor.
Egyéb protokollok, amelyeket figyelembe kell vennünk, az IMAP4 (Internet Message Access Protocol), amely lehetővé teszi az e-mail üzenetek közvetlen kezelését a szerveren anélkül, hogy azokat kliensünk merevlemezére kellene letöltenünk. és a POP3 (Post Office Protocol), amely lehetővé teszi az üzenetek és mappák letöltését a felhasználó számítógépére.
Tesztelési környezetünk
Tesztelési környezetünk a következő:
Levélkiszolgáló beállítása
Mail Server OS : Debian Wheezy 7.5
IP Address : 192.168.0.15
Local Domain : example.com.ar
User Aliases : [email is aliased to [email and [email
Ügyfélgép beállítása
Mail Client OS : Ubuntu 12.04
IP Address : 192.168.0.103
kliensünkön beállítottuk az elemi DNS-feloldást, és a következő sort adtuk az /etc/hosts fájlhoz.
192.168.0.15 example.com.ar mailserver
E-mail aliasok hozzáadása
Alapértelmezés szerint egy adott felhasználónak küldött üzenetet csak az adott felhasználónak kell kézbesíteni. Ha azonban a felhasználók egy csoportjának vagy egy másik felhasználónak is szeretné kézbesíteni, létrehozhat egy e-mail aliast, vagy használhatja a meglévő aliast az /etc/postfix/aliases fájlban. , ezt a szintaxist követve:
user1: user1, user2
Így a(z) user1 címre küldött e-mailek a user2 címre is eljutnak. Vegye figyelembe, hogy ha kihagyja a kettőspont után a felhasználó1 szót, mint a
user1: user2
a felhasználó1 címre küldött üzenetek csak a felhasználó2 címre kerülnek, a felhasználó1 címre nem.
A fenti példában a felhasználó1 és a felhasználó2 már léteznie kell a rendszeren. Érdemes lehet olvasni az LFCS sorozat 8. részét, ha frissítenie kell a memóriáját, mielőtt új felhasználókat adna hozzá.
- Felhasználók/csoportok hozzáadása és kezelése Linuxban
- 15 parancs a felhasználók hozzáadásához Linuxban
Konkrét esetünkben a következő álnevet fogjuk használni, ahogy azt korábban kifejtettük (adja hozzá a következő sort az /etc/aliases mappához).
sysadmin: gacanepa, jdoe
És futtassa a következő parancsot az álnevek keresési táblázatának létrehozásához vagy frissítéséhez.
postalias /etc/postfix/aliases
Így a(z) [email címre küldött üzenetek a fent felsorolt felhasználók postafiókjába kerülnek.
A Postfix konfigurálása – Az SMTP szolgáltatás
A Postfix fő konfigurációs fájlja az /etc/postfix/main.cf. Csak néhány paramétert kell beállítania a levelezési szolgáltatás használatához. Azonban meg kell ismerkednie a teljes konfigurációs paraméterekkel (amelyeket a man 5 postconf-ban lehet felsorolni) egy biztonságos és teljesen testreszabott levelezőszerver beállításához.
Megjegyzés: Ennek az oktatóanyagnak csak az a célja, hogy elindítsa a folyamatot, és nem ad átfogó útmutatót a Linuxon futó e-mail szolgáltatásokról.
Nyissa meg az /etc/postfix/main.cf fájlt a választott szerkesztővel, és hajtsa végre a következő módosításokat a leírtak szerint.
vi /etc/postfix/main.cf
1. A myorigin azt a tartományt adja meg, amely megjelenik a szervertől küldött üzenetekben. Láthatja az ezzel a paraméterrel használt /etc/mailname fájlt. Szerkessze nyugodtan, ha szükséges.
myorigin = /etc/mailname
Ha a fenti értéket használja, az e-maileket a rendszer [e-mail néven küldi el, ahol a felhasználó az üzenetet küldő felhasználó.
2. A mydestination felsorolja, hogy ez a gép mely tartományokba kézbesíti az e-mail üzeneteket helyben, ahelyett, hogy egy másik gépre továbbítaná (továbbítórendszerként működik). Esetünkben az alapértelmezett beállítások elegendőek (ügyeljen arra, hogy a fájlt a környezetének megfelelően szerkessze).
Ahol az /etc/postfix/transport fájl határozza meg a tartományok és a következő szerver közötti kapcsolatot, amelyre a leveleket továbbítani kell. Esetünkben, mivel az üzeneteket csak a helyi hálózatunkra fogjuk kézbesíteni (így minden külső DNS-feloldást megkerülve), a következő konfiguráció elegendő.
example.com.ar local:
.example.com.ar local:
Ezután ezt az egyszerű szöveges fájlt .db formátumba kell konvertálnunk, amely létrehozza azt a keresési táblázatot, amelyet a Postfix ténylegesen használni fog, hogy megtudja, mit kell tennie a bejövő és kimenő levelekkel.
postmap /etc/postfix/transport
Ne felejtse el újra létrehozni ezt a táblázatot, ha további bejegyzéseket ad hozzá a megfelelő szövegfájlhoz.
3. A mynetworks meghatározza azokat a jogosult hálózatokat, amelyekről a Postfix továbbítja az üzeneteket. Az alapértelmezett érték, az alhálózat, arra utasítja a Postfixet, hogy csak a helyi géppel azonos IP-alhálózatokban lévő SMTP-kliensek leveleit továbbítsa.
mynetworks = subnet
4. A relay_domains meghatározza azokat a célállomásokat, amelyekre az e-maileket el kell küldeni. Az alapértelmezett értéket érintetlenül hagyjuk, ami a célállomásra mutat. Ne feledje, hogy egy levelezőszervert állítunk be a LAN-unkhoz.
relay_domains = $mydestination
Vegye figyelembe, hogy a tényleges tartalom felsorolása helyett használhatja a $mydestination parancsot.
5. Az inet_interfaces meghatározza, hogy a levelezőszolgáltatás mely hálózati interfészekre figyeljen. Az alapértelmezett, mind azt mondja a Postfixnek, hogy az összes hálózati interfészt használja.
inet_interfaces = all
6. Végül a mailbox_size_limit és message_size_limit segítségével beállíthatja az egyes felhasználók postafiókjának méretét, illetve az egyes üzenetek maximális megengedett méretét, bájtban.
mailbox_size_limit = 51200000
message_size_limit = 5120000
Az SMTP-kiszolgálóhoz való hozzáférés korlátozása
A Postfix SMTP szerver bizonyos korlátozásokat alkalmazhat minden egyes kliens csatlakozási kérelmére. Nem szabad minden kliensnek megengedni, hogy azonosítsa magát a levelezőszerver előtt az smtp HELO paranccsal, és természetesen nem mindegyiküknek kell hozzáférést biztosítani az üzenetek küldéséhez vagy fogadásához.
E korlátozások végrehajtásához a következő direktívákat fogjuk használni a main.cf fájlban. Bár ezek önmagukban érthetőek, az egyértelműség kedvéért megjegyzéseket adtunk hozzá.
Require that a remote SMTP client introduces itself with the HELO or EHLO command before sending the MAIL command or other commands that require EHLO negotiation.
smtpd_helo_required = yes
Permit the request when the client IP address matches any network or network address listed in $mynetworks
Reject the request when the client HELO and EHLO command has a bad hostname syntax
smtpd_helo_restrictions = permit_mynetworks, reject_invalid_helo_hostname
Reject the request when Postfix does not represent the final destination for the sender address
smtpd_sender_restrictions = permit_mynetworks, reject_unknown_sender_domain
Reject the request unless 1) Postfix is acting as mail forwarder or 2) is the final destination
smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination
A Postfix konfigurációs paraméterei postconf oldal hasznos lehet az elérhető lehetőségek további felfedezéséhez.
Dovecot konfigurálása
A dovecot telepítése után azonnal támogatja a POP3 és az IMAP protokollokat, valamint azok biztonságos verzióját, a POP3S és IMAPS, ill.
Adja hozzá a következő sorokat a /etc/dovecot/conf.d/10-mail.conf fájlhoz.
%u represents the user account that logs in
Mailboxes are in mbox format
mail_location = mbox:~/mail:INBOX=/var/mail/%u
Directory owned by the mail group and the directory set to group-writable (mode=0770, group=mail)
You may need to change this setting if postfix is running a different user / group on your system
mail_privileged_group = mail
Ha megnézi a saját könyvtárát, észre fogja venni, hogy van egy levelezési alkönyvtár a következő tartalommal.
Azt is vegye figyelembe, hogy a legtöbb rendszeren a /var/mail/%u fájl tárolja a felhasználó leveleit.
Adja hozzá a következő direktívát a /etc/dovecot/dovecot.conf fájlhoz (vegye figyelembe, hogy az imap és a pop3 az imaps és a pop3 elemeket is jelenti).
protocols = imap pop3
És győződjön meg arról, hogy a /etc/conf.d/10-ssl.conf tartalmazza a következő sorokat (ellenkező esetben adja hozzá őket).
ssl_cert = </etc/dovecot/dovecot.pem
ssl_key = </etc/dovecot/private/dovecot.pem
Most indítsuk újra a Dovecot alkalmazást, és ellenőrizzük, hogy figyel az imap, imaps, pop3 és pop3-hoz kapcsolódó portokon.
netstat -npltu | grep dovecot
Levelezőkliens beállítása és levelek küldése/fogadása
Kliensszámítógépünkön megnyitjuk a Thunderbird programot, és a Fájl → Új → Meglévő e-mail fiók elemre kattintunk. A rendszer kéri, hogy adjuk meg a fiók nevét és a hozzá tartozó e-mail címet, valamint a jelszót. Amikor a Folytatás gombra kattintunk, a Thunderbird megpróbál csatlakozni a levelezőszerverhez a beállítások ellenőrzése érdekében.
Ismételje meg a fenti folyamatot a következő fiókkal ([e-mail védett]), és a következő két beérkező leveleknek meg kell jelenniük a Thunderbird bal oldali ablaktáblájában.
Szerverünkön e-mail üzenetet fogunk írni a sysadmin címre, amelynek álneve jdoe és gacanepa.
Úgy tűnik, hogy a levelezőnapló (/var/log/mail.log) azt jelzi, hogy a sysadmin címre küldött e-mail továbbításra került a következő címre: [email b> és [e-mail védett], amint az a következő képen is látható.
Ellenőrizhetjük, hogy a leveleket valóban kézbesítették-e a kliensünkhöz, ahol az IMAP-fiókokat a Thunderbirdben konfigurálták.
Végül próbáljunk meg üzenetet küldeni a(z) [email címről a(z) [email címre.
A vizsgán arra kérik, hogy kizárólag parancssori segédprogramokkal dolgozzon. Ez azt jelenti, hogy nem tud majd olyan asztali kliens alkalmazást telepíteni, mint a Thunderbird, hanem levelet kell használnia. Ebben a fejezetben a Thunderbird alkalmazást csak illusztrációként használtuk.
Következtetés
Ebben a bejegyzésben elmagyaráztuk, hogyan állíthat be IMAP levelezőszervert a helyi hálózathoz, és hogyan korlátozhatja az SMTP szerverhez való hozzáférést. Ha véletlenül problémába ütközik egy hasonló beállítás végrehajtása során a tesztkörnyezetben, érdemes megnézni a Postfix és a Dovecot online dokumentációját (különösen a fő konfigurációs fájlokról szóló oldalakat, /etc/postfix/main.cf és/etc/dovecot/dovecot.conf), de minden esetben ne habozzon kapcsolatba lépni velem az alábbi megjegyzés űrlap segítségével. Szívesen segítek Önnek.