Postfix faq

Postfix Întrebări frecvente

Postfix - este agentul de transfer de mesaje (MTA, agent de transport mesaj sau e-mail prin agent de transfer), care se ocupă cu expedierea mesajelor de protocol SMTP de la un agent de utilizator e-mail (MUA, e-mail agent utilizator), de asemenea, cunoscut sub numele de client de e-mail la un server de e-mail de la distanță. De asemenea, MTA primește mesaje de la serverele de e-mail de la distanță și le transmite altor MTA sau le trimite la cutiile poștale locale. Dacă postați sau trimiteți un mesaj, Postfix își încheie activitatea.

Postfix a fost creat ca o alternativă la Sendmail. Se crede că Postfix este mai rapid, mai ușor de administrat, mai sigur și, mai important, compatibil cu Sendmail.

Cum reduc toate atașamentele la trimiterea de scrisori către lumea exterioară?

Implementați această sarcină utilizând programul altermime.

În acest exemplu, a fost utilizată următoarea versiune a altermime

În primul rând, scriem un scenariu mic.

Salvăm-o, de exemplu, sub numele /etc/postfix/filter/remove_attachments.sh

Și am stabilit dreptul de a lansa

Acum trebuie să descriem transportul în sine pentru filtrarea în /etc/postfix/master.cf

Acum, descriem politicile de filtrare din /etc/postfix/main.cf

Trimiterea unui mesaj cu un atașament în interiorul domeniului

Acum încercați să trimiteți o scrisoare cu un atașament lumii

Trimiterea unui mesaj cu un atașament în interiorul domeniului

Cum să scapi de tipurile de mesaje - avertisment: dict_nis_init: numele de domeniu NIS nu este setat - căutările NIS sunt dezactivate

În mod obișnuit, mesajul apare dacă nu ați setat explicit parametrul alias_maps și nu aveți NIS (Network Information Service) configurat pe serverul dvs.

După cum puteți vedea din ieșire, valoarea implicită conține o referință la o hartă de tip nis. Pentru a rezolva această problemă, trebuie doar să specificați următoarea valoare

Și dați comanda postfix citiți fișierul de configurare

Cum pot respinge conexiunile în care sunt reprezentat de numele serverului meu?

Pentru a face acest lucru, trebuie să faceți o verificare corespunzătoare în smtpd_helo_restrictions

În această listă, introduceți numele serverului nostru

Creați o carte hello_access.db și dați comanda postfix pentru a reciti fișierul de configurare

Și acum încercăm limitarea noastră

Cum pot face cote pentru cutiile poștale?

În general, aceasta nu este o funcție MTA, prin urmare, implicit postfix nu suportă această funcționalitate. Dacă aveți nevoie de cote, atunci puteți utiliza vda (agent de livrare virtuală) cu plasturele. Alternativ, puteți utiliza agenți de livrare alternativi, de exemplu, agent de livrare maildrop / dovecot

clasa de domenii locale [clasa de domenii locale]

clasa de aliasuri virtuale [clasa de domeniu virtual alias]

clasa de domenii virtuale [clasa virtuală a domeniului poștal]

clasa domeniilor releelor ​​(redirectionare) [clasa domeniu releu]

clasa de domenii implicite [clasa de domenii implicite]

Lista domeniilor care fac parte din această clasă: de exemplu, toate domeniile locale sau toate domeniile de retransmisie.

Livrarea în mod implicit a transportului. De exemplu, local / virtual / releu / maildrop (purtătoarele de livrare sunt descrise în fișierul master.cf). Acest lucru facilitează configurarea postfixului, deoarece nu este nevoie să specificați în mod explicit rutarea în tabelul de transport

Am 3 casete în sistemul meu, utilizatorii sunt sistem. Cum pot primi mail numai pentru aceste cutii?

Pentru a rezolva această problemă, este suficient să enumerați utilizatorii necesari din fișier și să specificați o legătură într-un parametru local_recipient_maps

Acum trimitem scrisoarea către utilizator ale sistemului alexander, dar care nu este specificată în / etc / postfix / local_mailbox

După cum vedem postfix în stadiul sesiunii SMTP, sa raportat că nu există un astfel de utilizator.

Cum se face cu avertismentul de eroare: nu listați domeniul în BOTH mydestination și virtual_mailbox_domains?

Deci avem postfix cu următoarea configurație

Specificați unde să stocați și în ce format mail-ul pentru utilizator [email protected]

Acum, permite utilizatorului să trimită e-mail [email protected] (sistemul are un sistem de utilizator Alex, așa cum este descris în virtual_mailbox_maps. Cm. Mai sus)

Acum, uita-te la fișierul jurnal

Cea mai simplă soluție la această problemă este dezactivarea domeniului vmware.local de la $ mydestination

Încă o dată trimiteți un mesaj și consultați fișierul jurnal

După cum puteți vedea din mesaj, mesajul a fost livrat utilizatorului alex virtual, după cum reiese din relayul liniei = virtuale. precum și formatul casetei - livrat la maildir

Unele comenzi utile

Afișați valoarea implicită a unui parametru specific

Afișați valoarea curentă a parametrului

Ieșire Postfix

Ștergerea tuturor mesajelor din coadă

Trimiteți din nou mesajele care se află în coada de așteptare

Cum pot implementa graylingul inteligent?

În acest exemplu, am folosit -gld pentru lipire. care ascultă conexiunile de intrare de pe portul 2525. Puteți folosi orice greylisting la alegere.

În acest fișier, descriem expeditorii pe care dorim să îi excludem de la greylisting

În acest fișier vom descrie gazdele pe care dorim să le excludem de la greylisting

În acest fișier vom descrie politica în sine - dacă nu există nicio intrare în zona inversă, clientul va primi un greylisting. greylisting este o clasă de utilizatori care este definită în fișierul principal.cf.

În acest fișier, descriem politica - când se utilizează forma literală, clientul va fi recompensat cu greylisting.

Apoi, când încercați să vă trimiteți un mesaj în fișierul de jurnal, vor fi următoarele

Și acum să vedem ce nu-i plăcea postfix în acest client

Acum cred că totul a devenit clar, nu merită să luați poșta de la clienți în care înregistrarea MX indică 127.0.0.1

Cum pot preveni primirea mailurilor de la un anumit domeniu / utilizator?

Cum pot preveni primirea e-mailurilor cu anumite atașări?

Apoi, atunci când încercați să trimiteți un mesaj cu un atașament exe / bat / cmd / mp3 în fișierul jurnal, următoarele

Cum puteți evita duplicarea e-mailurilor când folosiți alias?

De exemplu, avem următorul pseudonim

Dacă o persoană trimite un mesaj la info și user1, atunci user1 va primi două copii ale e-mailului. Din păcate, arhitectura postfixului nu permite în acest moment să evite această problemă

Cum primesc toate e-mailurile pentru casele inexistente?

Pentru aceasta, este suficient să setați următorii parametri în main.cf

Caracteristicile acestei funcții:

va funcționa numai pentru utilizatorii de sistem și local

Pentru a afla valoarea implicită, trebuie să executați următoarea comandă

Cum de a forța postfix să notifice expeditorului că mesajul nu a fost livrat destinatarului și se află în coada de așteptare?

Pentru a activa această funcție, trebuie să setați parametrul delay_warning_time

Cu această setare, notificarea va fi trimisă după 3 ore

Am câteva interfețe în sistem, cum să-i spun lui postfix să asculte numai anumite?

Există două modalități de a rezolva această problemă: efectuarea de modificări la main.cf sau master.cf

Cum pot spune postfixului să asculte alt port decât cel de-al 25-lea?

Pentru aceasta, este suficient să înlocuiți șirul în master.cf

Și reporniți postfixul. După aceasta, puteți verifica modificările

Cum pot ști dacă postfix acceptă autentificarea și, dacă da, ce metode?

Pentru aceasta, trebuie doar să executați următoarea comandă și după primire trebuie să introduceți comanda ESMTP ehlo

Linia 250-AUTH PLAIN LOGIN indică faptul că acest server acceptă două metode de autentificare - PLAIN și LOGIN.

De asemenea, din această concluzie putem obține următoarele informații interesante:

250-SIZE 5242880 - dimensiunea maximă a literei

250 DSN - acest server acceptă DSN (notificări privind starea livrării)

250-STARTTLS - asistență SSL / TLS activată pentru trimiterea de e-mailuri utilizând criptarea

Cum pot ști dacă postfix acceptă MySQL, LDAP. SQLite, PCRE, ...

Pentru aceasta, trebuie doar să executați următoarea comandă

După cum puteți vedea din ieșire, această construcție postfix nu suportă MySQL. De asemenea, puteți verifica cu ce biblioteci externe se construiește postfixul în sine

Am 2 interfețe pe server și trebuie să am un banner la conectarea la prima interfață și a doua interfață la conectarea la a doua interfață. Cum se poate realiza acest lucru?

Cum pot salva copii ale tuturor e-mailurilor trimise?

Cu această configurație, copii ale tuturor e-mailurilor trimise vor fi duplicate în căsuța poștală [email protected].

Cum pot păstra o copie a tuturor e-mailurilor primite?

Cu această setare, copiile tuturor mesajelor primite vor fi duplicate în cutia poștală [email protected].

Cum pot păstra o copie a tuturor scrisorilor?

Cu această setare, copiile tuturor mesajelor vor fi duplicate în caseta [email protected]

/etc/postfix/main.cf:
smtpd_sender_restrictions = hash: / etc / postfix / acces

# postmap / etc / postfix / acces
# postfix reload

Pentru a trimite fișierul principal.cf
recipient_bcc_maps = hash: / etc / postfix / recipient_bcc

În fișierul recipient_bcc


postmap / etc / postfix / recipient_bcc
postfix reload