E-posti teenuste (SMTP, Imap ja Imaps) seadistamine ja SMTP-le juurdepääsu piiramine - 7. osa


LFCE ( Linux Foundationi sertifitseeritud insener ) on väljaõppinud spetsialist, kellel on oskused Linuxi süsteemides võrguteenuste installimiseks, haldamiseks ja tõrkeotsinguks ning kes vastutab süsteemi arhitektuuri ja kasutajate halduse kavandamine, juurutamine ja pidev hooldamine.

Tutvustame Linux Foundationi sertifitseerimisprogrammi.

Eelmises õpetuses arutasime, kuidas postiteenuse vajalikke komponente installida. Kui te pole veel rakendusi Postfix ja Dovecot installinud, lugege enne jätkamist selle seeria 1. osas juhiseid.

  1. Installige Postfixi meiliserver ja Dovecot - 1. osa

Selles postituses näitan teile, kuidas oma meiliserverit konfigureerida ja kuidas järgmisi ülesandeid täita:

  1. konfigureerige e-posti varjunimed
  2. konfigureerige IMAP- ja IMAPS-teenus
  3. konfigureerige smtp-teenus
  4. Piirake juurdepääsu smtp-serverile

Märkus. Meie seadistus hõlmab ainult kohtvõrgu meiliserverit, kus masinad kuuluvad samasse domeeni. E-kirjade saatmine teistele domeenidele nõuab keerukamat seadistamist, sealhulgas domeeninime lahendamise võimalusi, mis jääb LFCE sertifikaadi reguleerimisalast välja.

Alustuseks alustame mõne definitsiooniga.

Posti saatmise, transpordi ja kättetoimetamise protsessi komponendid

Järgmine pilt illustreerib e-posti edastamise protsessi alates saatjast kuni sõnumi saabumiseni saaja postkasti:

Selle võimaldamiseks toimub kulisside taga mitu asja. Selleks, et e-kiri toimetataks kliendirakendusest (näiteks Thunderbird, Outlook või veebimeili teenused nagu Gmail või Yahoo! Mail) tema meiliserverisse ja sealt edasi sihtserverisse ning lõpuks selle ettenähtud adressaadile , peab igas serveris olema SMTP (Simple Mail Transfer Protocol) teenus.

E-teenustest rääkides leiate järgmisi mõisteid, mida mainitakse väga sageli:

MTA (lühend sõnadest Mail või Message Transport Agent ), ehk e-posti relee, on tarkvara, mis vastutab e-kirjade edastamise eest serverist kliendile (ja ka vastupidi). Selles seerias toimib Postfix meie MTA-na.

MUA ehk Mail User Agent on arvutiprogramm, mida kasutatakse kasutaja e-posti postkastide juurde pääsemiseks ja nende haldamiseks. MUA-de näited hõlmavad, kuid ei ole nendega piiratud, Thunderbirdi, Outlooki ja veebimeili liideseid, näiteks Gmail, Outlook.com, kui neid nimetada. Selles seerias kasutame oma näidetes Thunderbirdi.

MDA (lühend sõnast või Mail Delivery Agent ) on tarkvaraosa, mis tegelikult edastab e-kirju kasutaja postkastidesse. Selles õpetuses kasutame Dovecotit oma MDA-na. Dovecot tegeleb ka kasutajate autentimisega.

Selleks, et need komponendid saaksid üksteisega\" rääkida ", peavad nad\" rääkima " sama\" keelt " (või protokoll), nimelt SMTP ( lihtne postiedastusprotokoll ), nagu on määratletud RFC-s 2821. Tõenäoliselt peate oma posti seadistamisel sellele RFC-le viitama serveri keskkond.

Muud protokollid, mida peame arvestama, on IMAP4 ( Interneti-sõnumite juurdepääsuprotokoll ), mis võimaldab hallata e-kirju otse serveris ilma neid meie kliendi kõvakettale alla laadimata ja POP3 ( postkontori protokoll ), mis võimaldab sõnumeid ja kaustu kasutaja arvutisse alla laadida.

Meie testimiskeskkond on järgmine:

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 
Mail Client OS	: 	Ubuntu 12.04
IP Address	:	192.168.0.103

Oleme oma kliendis seadistanud elementaarse DNS-i eraldusvõime, lisades järgmise rea faili /etc/hosts .

192.168.0.15 example.com.ar mailserver

E-posti varjunimede lisamine

Vaikimisi peaks konkreetsele kasutajale saadetud sõnumi edastama ainult sellele kasutajale. Siiski, kui soovite selle edastada ka kasutajate rühmale või teisele kasutajale, võite luua meilisaliaasi või kasutada ühte olemasolevatest jaotises /etc/postfix/aliases , järgides seda süntaksit:

user1: user1, user2

Seega edastatakse aadressile kasutaja1 saadetud meilid ka kasutajale kasutaja2 . Pange tähele, et kui jätate kooloni järel sõna kasutaja1 välja, nagu joonisel

user1: user2

kasutajale kasutaja1 saadetud sõnumid saadetakse ainult kasutajale kasutaja2 ja mitte kasutajale kasutaja1 .

Ülaltoodud näites peaksid kasutaja1 ja kasutaja2 süsteemis juba olemas olema. Kui soovite enne uute kasutajate lisamist oma mälu värskendada, võiksite viidata LFCS-sarja 8. osale .

  1. Kuidas kasutajaid/gruppe Linuxis lisada ja hallata
  2. 15 käsku kasutajate lisamiseks Linuxis

Meie konkreetsel juhul kasutame järgmisi varjunimesid, nagu eelnevalt selgitatud (lisage järgmine rida /etc/aliases -i).

sysadmin: gacanepa, jdoe

Ja pseudonüümide otsingu tabeli loomiseks või värskendamiseks käivitage järgmine käsk.

postalias /etc/postfix/aliases

Nii et [meiliga kaitstud] saadetud sõnumid toimetatakse eelpool loetletud kasutajate postkasti.

Postfixi konfigureerimine - SMTP-teenus

Postfixi peamine konfiguratsioonifail on /etc/postfix/main.cf . Enne postiteenuse kasutamist peate seadistama vaid mõned parameetrid. Turvalise ja täielikult kohandatud meiliserveri seadistamiseks peaksite siiski tutvuma kõigi seadistamisparameetritega (mida saab loetleda man 5 postconf -iga).

Märkus. See õpetus peaks teid selles protsessis ainult alustama ja see ei hõlma põhjalikku juhendit Linuxi meiliteenuste kohta.

Avage valitud redaktoriga fail /etc/postfix/main.cf ja tehke järgmised muudatused, nagu on selgitatud.

# vi /etc/postfix/main.cf

1 . myorigin määrab domeeni, mis kuvatakse serverist saadetud sõnumites. Võite näha selle parameetriga kasutatavat faili /etc/mailname . Vajadusel muutke seda julgelt.

myorigin = /etc/mailname

Kui kasutatakse ülaltoodud väärtust, saadetakse kirjad kui [meiliga kaitstud] , kus kasutaja on sõnumi saatja.

2 . mydestination loetleb, millistes domeenides see masin e-kirju kohalikult edastab, selle asemel, et edastada neid teisele masinale (toimides relee süsteemina). Meie puhul piisab vaikeseadetest (redigeerige fail kindlasti oma keskkonnale vastavalt).

Kus fail /etc/postfix/transport määratleb domeenide ja järgmise serveri vahelise suhte, kuhu meilisõnumid tuleks edastada. Kuna me edastame sõnumeid ainult oma kohtvõrku (seega välistame igasuguse välise DNS-i eraldusvõime), piisab järgmisest konfiguratsioonist.

example.com.ar    local:
.example.com.ar    local:

Järgmisena peame selle tavalise tekstifaili teisendama vormingusse .db , mis loob otsingu tabeli, mida Postfix tegelikult kasutab teadmiseks, mida teha sissetulevate ja väljaminevate meilidega.

# postmap /etc/postfix/transport

Kui lisate vastavasse tekstifaili rohkem kirjeid, peate selle tabeli uuesti koostama.

3 . mynetworks määratleb autoriseeritud võrgud, kust Postfix edastab sõnumeid. Vaikeväärtus, alamvõrk, käsib Postfixil edastada posti SMTP-klientidelt ainult kohaliku masinaga samades IP-alamvõrkudes.

mynetworks = subnet

4 . relay_domains määrab sihtkohad, kuhu meilid tuleb saata. Jätame vaikeväärtuse puutumata, mis viitab minu sihtmärgile. Pidage meeles, et me seadistame oma LAN-i jaoks meiliserveri.

relay_domains = $mydestination

Pange tähele, et tegeliku sisu loetlemise asemel võite kasutada funktsiooni $mydestination .

5 . inet_interfaces määratleb, milliseid võrguliideseid postiteenus peaks kuulama. Vaikimisi ütleb kõik, et Postfix kasutab kõiki võrguliideseid.

inet_interfaces = all

6 . Lõpuks kasutatakse postkasti_suuruse_piirangut ja sõnumi_suuruse_piirangut , et määrata iga kasutaja postkasti suurus ja üksikute sõnumite maksimaalselt lubatud suurus baitides.

mailbox_size_limit = 51200000
message_size_limit = 5120000

Juurdepääsu piiramine SMTP-serverile

Postfix SMTP server saab rakendada igale kliendi ühenduse taotlusele teatud piiranguid. Kõigil klientidel ei tohiks lubada käsu smtp HELO abil end meiliserveris tuvastada ja kindlasti ei tohiks neile kõigile anda juurdepääsu sõnumite saatmiseks või vastuvõtmiseks.

Nende piirangute rakendamiseks kasutame failis main.cf järgmisi direktiive. Ehkki need on iseenesestmõistetavad, on selguse huvides lisatud kommentaare.

# 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

Postfixi konfiguratsiooniparameetrite postconf leht võib olla kasulik, et saadaolevate valikute edasiseks uurimiseks.

Dovecoti seadistamine

Kohe pärast dovecoti installimist toetab see protokollide POP3 ja IMAP paketiväliseid seadmeid koos nende turvaliste versioonidega, POP3S ja vastavalt IMAPS .

Lisage järgmised read faili /etc/dovecot/conf.d/10-mail.conf .

# %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

Kui kontrollite oma kodukataloogi, märkate, et on olemas järgmise sisuga posti alamkataloog.

Pange tähele, et fail /var/mail /% u on koht, kus kasutaja kirjad on enamikus süsteemides salvestatud.

Lisage järgmine käsk /etc/dovecot/dovecot.conf (arvestage, et imap ja pop3 tähendavad ka imapsi ja pop3-d).

protocols = imap pop3

Ja veenduge, et /etc/conf.d/10-ssl.conf sisaldaks järgmisi ridu (vastasel juhul lisage need).

ssl_cert = </etc/dovecot/dovecot.pem
ssl_key = </etc/dovecot/private/dovecot.pem

Nüüd taaskäivitame Dovecot ja kontrollime, kas see kuulab imapi, imapsi, pop3 ja pop3 seotud porte.

# netstat -npltu | grep dovecot

E-posti kliendi seadistamine ja kirjade saatmine/vastuvõtmine

Avame oma klientarvutis Thunderbird ja klõpsake nupul Fail Uus Olemasolev e-posti konto . Meil palutakse sisestada konto nimi ja seotud e-posti aadress koos selle parooliga. Kui klõpsame nuppu Jätka , üritab Thunderbird seadete kinnitamiseks ühenduse luua meiliserveriga.

Korrake ülaltoodud toimingut järgmise konto jaoks ( [meiliga kaitstud] ) ja järgmised kaks postkasti peaksid ilmuma Thunderbirdi vasakule paanile.

Kirjutame oma serveris meilisõnumi saidile sysadmin , mis on varjatult nimega jdoe ja gacanepa .

Tundub, et meililogi ( /var/log/mail.log ) näitab, et meiliaadressile sysadmin saadetud meil edastati aadressile [email , nagu on näha järgmiselt pildilt.

Saame kontrollida, kas kiri tarniti tegelikult meie kliendile, kus IMAP-kontod olid Thunderbirdis konfigureeritud.

Lõpuks proovime saata sõnumi aadressilt [email .

Eksamil palutakse teil töötada ainult käsurea utiliitidega. See tähendab, et te ei saa installida töölauarakenduse rakendust, näiteks Thunderbird, kuid peate selle asemel kasutama posti. Oleme selles peatükis kasutanud Thunderbirdi ainult illustratiivsetel eesmärkidel.

Järeldus

Selles postituses oleme selgitanud, kuidas seadistada oma kohalikule võrgule IMAP meiliserver ja kuidas piirata juurdepääsu serverile SMTP . Kui juhtub, et testimiskeskkonnas sarnase seadistuse juurutamisel tekib mõni probleem, peaksite kontrollima vastavalt veebi dokumentatsiooni /etc/dovecot/dovecot.conf), kuid ärge mingil juhul võtke minuga ühendust allolev kommentaarivorm. Mul on rohkem kui hea meel teid aidata.