Server de poștă electronică pe linux

Cum să configurați un server de poștă electronică care să poată primi și trimite mesaje e-mail, să lupte împotriva spamului, să interacționeze cu clienții? De fapt, totul este destul de simplu.







Astăzi vom vorbi despre serverele de mail pe Linux. Vom vorbi despre modul de configurare a serverului, despre protocolul SMTP utilizat pe Internet și despre alte protocoale, cum ar fi POP și IMAP. Ca rezultat, veți găsi un sistem complet de lucru cu e-mail.

Server de poștă electronică pe linux

Să începem cu un server SMTP pe Linux

Server SMTP

Simple Mail Transfer Protocol (SMTP) definește regulile pentru trimiterea de e-mail între computere și nu reglementează regulile de stocare sau vizualizare a mesajelor. Acesta este un protocol independent de sistem, adică expeditorul și destinatarul de e-mail pot avea sisteme de operare diferite.

SMTP cere numai ca serverul să poată trimite text obișnuit ASCII unui alt server utilizând portul 25. care este portul standard SMTP.

Astăzi, cele mai populare distribuții Linux au două implementări comune SMTP: sendmail și postfix.

Sendmail este un server popular de mail open source folosit în multe distribuții Linux. Pentru dezavantajele sale poate fi atribuită o arhitectură oarecum complicată și un nivel insuficient de ridicat de protecție.

Postfix - un sistem puțin mai avansat, în dezvoltarea acestui server de poștă electronică, o atenție deosebită a fost acordată problemelor de securitate.

Componente ale serviciului poștal

Un serviciu poștal tipic constă din trei componente principale:

Serverul de e-mail. sau Agentul de Transport al Mailului (MTA). Această componentă este responsabilă pentru mutarea e-mailurilor între sisteme, acest lucru fiind realizat, de exemplu, de Sendmail și Postfix.

Agent de livrare a corespondenței (MDA). Această componentă este responsabilă pentru distribuirea mesajelor primite către cutiile poștale ale utilizatorilor. De exemplu, acesta este Postfix-maildrop și Procmail.

Instalarea serverului de e-mail

Pentru a configura serverul nostru, a fost selectat pachetul Postfix. Este o alegere populară între administratorii de sistem, serverul de e-mail standard în majoritatea distribuțiilor moderne Linux.

Să începem prin a verifica dacă Postfix este instalat pe sistem:

Dacă Postfix nu a fost găsit, instalați-l, de exemplu, în distribuții bazate pe Red Hat, puteți utiliza această comandă:

Apoi rulați serviciul postfix și organizați autorun la boot:

În distribuțiile bazate pe Debian, cum ar fi Ubuntu, puteți instala Postfix după cum urmează:

În timpul instalării, vi se va solicita să selectați configurația serverului. Dintre cele patru opțiuni disponibile (fără configurare, site Internet, Internet cu smarthost, sistem satelit și local numai), vom selecta Nicio configurație. ceea ce va duce la crearea conturilor de utilizator și de grup necesare pentru Postfix.

Configurarea serverului

După instalarea serverului de poștă electronică Postfix, trebuie să îl configurați. Cele mai multe fișiere de configurare sunt localizate în directorul / etc / postfix /.

Acest parametru este utilizat pentru a specifica numele gazdei sistemului de e-mail. Acesta este numele gazdei pe Internet pentru care Postfix va primi e-mail.

Exemple tipice de nume de gazde ale serverelor de mail sunt mail.example.com și smtp.example.com.

Configurați acest parametru după cum urmează:

Această setare vă permite să specificați domeniul de mail pe care serverul îl întreține, de exemplu - example.com:

Acest parametru vă permite să specificați numele de domeniu utilizat în e-mailul trimis de server. Atribuiți-i valoarea $ mydomain:

În setări, puteți să vă referiți la parametri adăugând semnul $ în fața numelui variabilei.

Acest parametru conține lista de domenii pe care serverul Postfix le va considera destinații de destinație pentru mesajele primite.

În cazul nostru, acesta va fi numele gazdei serverului și numele domeniului, însă acest parametru poate conține alte nume:

Serverul de e-mail Postfix poate utiliza două moduri de livrare a poștei:

Această variabilă este o setare importantă. Acesta vă permite să specificați serverele care pot trimite e-mail prin serverul Postfix.

În mod normal, numai poșta de la calculatoarele client locale este permisă. În caz contrar, serverul dvs. poate fi interesat de spammeri.

Dacă parametrul mynetworks este setat incorect. spammerii vor putea folosi serverul ca un releu de poștă electronică. Acest lucru conduce foarte repede la faptul că un sistem anti-spam îl va pune pe unul dintre listele negre, cum ar fi DNS Black List (DNSBL) sau Lista Blackhole List (RBL) în timp real. De îndată ce serverul ajunge pe o listă similară, foarte puțini vor putea primi e-mailurile trimise cu el.

Iată cum să setați acest parametru:

Această variabilă vă permite să specificați răspunsul pe care serverul îl întoarce atunci când clienții sunt conectați.

Cel mai bine este să modificați această valoare astfel încât să nu indice ce server de poștă electronică este utilizat.

Această variabilă vă permite să specificați versiunea IP pe care Postfix o va utiliza la stabilirea conexiunilor.

Pentru ca modificările aduse fișierelor de configurare să aibă efect, serviciul Postfix trebuie repornit:

De fapt, în fișierul de configurare Postfix, există mult mai multe pentru configurare. De exemplu - pentru a gestiona nivelurile de securitate, setați opțiunile de depanare și alți parametri.







Poate prin configurarea serverului, introducerea valorilor parametrilor, faceți o greșeală. Puteți verifica corectitudinea setărilor utilizând următoarea comandă:

Cu acest instrument, puteți găsi linia în care a fost comisă eroarea și rezolvați-o.

Verificarea corespondenței mesajelor

Uneori coada de e-mail este plină. Acest lucru poate fi cauzat de un număr de factori, cum ar fi eroarea de rețea sau din orice motiv care poate întârzia trimiterea de e-mailuri.

Pentru a verifica coada de mesaje, utilizați această comandă:

Acesta va afișa mesajele din coadă. Dacă coada este plină și este nevoie de câteva ore pentru a trimite mesajul, puteți iniția procesul de trimitere a mesajelor cu această comandă:

Dacă verificați acum coada, ar trebui să fie goală.

Testarea serverului de e-mail

Apoi, încercați să primiți un mesaj trimis de la un alt server.

Dacă problemele nu sunt încă rezolvate, încercați să verificați setările DNS, aruncați o privire asupra înregistrărilor MX folosind comenzile de rețea Linux.

Combaterea spamului

Există multe soluții pentru identificarea mesajelor nedorite în mesajele spam - spam. Unul dintre cele mai bune este proiectul open source SpamAssassin.
Puteți să o instalați astfel:

Apoi trebuie să porniți serviciul corespunzător și să-l adăugați la pornire:

După instalarea programului SpamAssassin, aruncați o privire asupra setărilor acestuia în /etc/mail/spamassassin/local.cf.

SpamAssassin poate distinge scrisori obișnuite de spam, pe baza rezultatelor studiului corespondenței folosind diverse scripturi. Rezultatele controalelor sunt evaluate în puncte.

Cu cât este mai mare scorul final al unei scrisori, cu atât este mai mare probabilitatea ca aceasta să fie spam.

În fișierul de configurare, parametrul required_hits 5 indică faptul că SpamAssassin va marca mesajul ca spam dacă ratingul său este de 5 sau mai mare.

Parametrul report_safe ia valorile 0, 1 sau 2. Setarea lui la 0 înseamnă că mesajele marcate ca spam sunt trimise în forma lor originală, dar antetul lor este modificat pentru a indica faptul că acestea sunt spam.

Dacă acest parametru este setat la 1 sau 2, SpamAssassin va genera raportul și îl va trimite destinatarului.

Diferența dintre valorile 1 și 2 este că, în primul caz, mesajul de spam va fi codificat în mesajul format / rfc822, iar în al doilea - în textul format / simplu.

Textul / codificarea simplu este mai sigur, deoarece unii clienți de e-mail execută mesajele din formatul mesaj / rfc822, care, în anumite condiții, poate duce la infecția computerului client cu un virus.

După instalarea și configurarea SpamAssassin, trebuie să o integrați cu Postfix. Poate că cel mai simplu mod de a face acest lucru este utilizarea procmail.

Creați fișierul / etc / procmailrc și adăugați următoarele:

Apoi editați fișierul de setări Postfix - /etc/postfix/main.cf. setarea parametrului mailbox_command după cum urmează:

În cele din urmă, reporniți serviciile Postfix și SpamAssassin:

Trebuie să spun că SpamAssassin nu recunoaște întotdeauna spamul, ceea ce duce la umplerea cu cutiile poștale cu scrisori inutile.

Din fericire, mesajele înainte de a ajunge la serverul de poștă electronică de pe Postfix pot fi filtrate utilizând Liste de Blackhole (RBL) în timp real. Acest lucru va reduce încărcarea pe serverul de poștă electronică și îl va menține curat.

Deschideți fișierul de configurare Postfix /etc/postfix/main.cf. modificați parametrul smtpd_recipient_restrictions și configurați alți parametri după cum urmează:

Apoi, reporniți serverul Postfix:

Listele negre de mai sus sunt folosite cel mai des, dar puteți găsi și alte servere similare.

Protecție conexiune SMTP

Cel mai bine este să trimiteți traficul SMTP peste TLS pentru al proteja de un atac prin intermediul unui intermediar.
În primul rând, trebuie să generați un certificat și o cheie utilizând comanda openssl:

Apoi trebuie să adăugați următoarele în fișierul de setări Postfix /etc/postfix/main.cf:

În cele din urmă, trebuie să reporniți serviciul Postfix:

Acum, când conectați clientul la server, trebuie să selectați TLS. Aici, când trimiteți mai întâi e-mail după modificarea setărilor, veți vedea un avertisment, deoarece certificatul nu este semnat.

Elementele de bază ale POP3 și IMAP

Așadar, am stabilit procesul de trimitere și primire a e-mailurilor prin SMTP, dar acest lucru nu pune capăt organizării unui serviciu de e-mail cu drepturi depline. Luați în considerare următoarele situații:

Pentru a ține cont de toate aceste cazuri speciale, s-au creat alte protocoale. Acestea pot fi descrise ca protocoale pentru accesarea mesajelor e-mail.

Cele mai frecvente sunt două protocoale populare pentru accesul la poștă - POP (Post Office Protocol) și IMAP (Internet Message Access Protocol).

În centrul POP este o idee foarte simplă. Serverul central de poștă electronică pe Linux este întotdeauna conectat la Internet, primește și salvează e-mailuri pentru toți utilizatorii. Toate e-mailurile primite rămân în coada de pe server până când utilizatorul se conectează la el folosind protocolul POP și descarcă literele.

Când un utilizator dorește să trimită un mesaj, clientul de e-mail îl trimite de obicei prin serverul central prin SMTP.

Rețineți că serverul SMTP și serverul POP pot funcționa fără probleme pe aceeași mașină. Aceste zile este o practică obișnuită.

Posibilitățile, cum ar fi stocarea pe server a instanțelor originale ale literelor utilizatorilor, cu numai copii cache păstrate pe client, nu sunt prezente în POP. Acest lucru a dus la dezvoltarea protocolului IMAP.

Utilizând IMAP, serverul va suporta trei moduri de acces la poștă:

  • Modul online este similar cu accesul direct la sistemul de fișiere de pe serverul de e-mail.
  • Modul offline este similar cu modul în care POP funcționează atunci când un client se deconectează de la rețea după primirea mesajelor sale. În acest mod, serverul nu stochează, de obicei, copii ale mesajelor.
  • Modul offline permite utilizatorilor să stocheze copii în cache ale e-mailurilor lor, iar serverul stochează de asemenea copii ale acestor e-mailuri.

Există diverse implementări ale IMAP și POP, în acest domeniu serverul Dovecot este foarte popular, ceea ce permite lucrul cu ambele protocoale.

Serverele POP3, POP3S, IMAP și IMAPS ascultau, respectiv, la porturile 110, 995, 143 și 993.

Instalarea Dovecot

Cele mai multe distribuții Linux conțin un Dovecot preinstalat, însă îl puteți instala singur. În sistemele bazate pe Red Hat, aceasta se face astfel:

În sistemele bazate pe Debian, funcționalitatea IMAP și POP3 este furnizată în două pachete diferite:

Aici vă va fi oferit să creați un certificat cu semnătură automată pentru a lucra cu IMAP și POP3 pe SSL / TLS. Răspundeți da și, dacă vi se solicită, introduceți numele gazdei sistemului.

Apoi puteți porni serviciul corespunzător și îl puteți adăuga la pornire:

Configurarea Dovecot

Iată câteva dintre opțiunile folosite pentru a configura Dovecot.

protocoale. protocoale care trebuie menținute.

Aici, un asterisc înseamnă toate interfețele IPv4, un dublu colon înseamnă toate interfețele IPv6.

userdb. baza de date pentru autentificare.

mail_location. această intrare este în fișierul /etc/dovecot/conf.d/10-mail.conf. Se pare ca aceasta:

Dovecot vine cu certificate standard SSL și fișiere cheie care sunt utilizate în fișierul /etc/dovecot/conf.d/10-ssl.conf.

Când un utilizator încearcă să se conecteze la Dovecot, serverul afișează un avertisment, deoarece certificatele nu sunt semnate. Dacă este necesar, certificatele semnate pot fi achiziționate de la o autoritate de certificare potrivită.

Nu uitați să deschideți porturile serverului Dovecot pe paravanul de protecție.

Și nu uitați de portul SMTP.

Apoi salvați regulile. Dacă doriți să actualizați caracteristicile de lucru cu iptables pe Linux, aruncați o privire asupra acestui material.
Sau, dacă utilizați firewall, puteți face acest lucru:

Și dacă ceva nu a mers bine, uitați-vă la fișierele jurnal / var / log / messages. / var / log / maillog și /var/log/mail.log.

Acum puteți configura serviciul de poștă electronică pe serverul dvs. Linux. După cum vedeți, nu va dura mult timp. Desigur, pachetele luate în considerare aici, cum ar fi Postfix, au o mulțime de setări, dar dacă ați stăpânit secvența de acțiuni descrise aici și ați dat seama de elementele de bază, atunci tot ceea ce aveți nevoie va fi ușor de aflat din documentație.

Dragi cititori! Și cum configurați serverele de poștă electronică pe Linux?







Articole similare

Trimiteți-le prietenilor: