Postfix: Selektivna zaštita korisnika

Jedna od moćnih funkcija Postfix MTA jest mogućnost selektivne zaštite pojedinih prijemnih adresa elektronske pošte, tako da se određenom korisniku ili grupi korisnika proslijeđuju poruke samo ukoliko zadovoljavaju određene kriterije (npr. poslane su iz lokalne mreže, dozvoljene domene ili od određene osobe ili liste osoba). To je naročito korisno, ako imate interne liste e-mail adresa ili aliase, koje ne želite da budu izložene spamu.

Slijede praktične upute kako to izvesti u Postfixu:

Editirajte /etc/postfix/main.cf i u dijelu "smtpd_recipient_restrictions =" unesite, ako ne postoji, stavku

hash:/etc/postfix/access_recipient

i odvojite je zarezom od ostalih stavki kao u primjeru dolje, istaknuto masnim slovima, no gledajte da Vam cijeli izraz stane u jedan red, a ne u više redova!

smtpd_recipient_restrictions =
hash:/etc/postfix/access_recipient,
reject_invalid_hostname,
reject_unknown_sender_domain,
reject_unknown_recipient_domain,
reject_unauth_pipelining,
permit_sasl_authenticated,
permit_mynetworks,
reject_unauth_destination,
reject_rbl_client zen.dnsbl-sh.carnet.hr,
reject_rbl_client zen.spamhaus.org,
reject_rbl_client bl.spamcop.net,
reject_rbl_client dnsbl.njabl.org,
permit

Nadalje, odmah ispod toga upišite točno kako slijedi, pazeći da ne bude nepotrebnih razmaka ili tabulatora, inače bi se moglo dogoditi da stvar ne radi:

smtpd_restriction_classes = probaclass
probaclass = check_sender_access hash:/etc/postfix/access_probaclass, reject

probaclass je proizvoljno ime, vi možete uzeti neko slično (npr. ne-spamclass, carnetclass ili sl., samo se onda trebate dosljedno držati tog imena).

Sada treba u /etc/postfix direktoriju napraviti datoteku access_recipient i u nju upisati:

svi_na_domeni@vaša_domena.hr         probaclass
asistenti@vaša_domena.hr             probaclass
kolegij@vaša_domena.hr               probaclass
nastavnici@vaša_domena.hr            probaclass
novaci@vaša_domena.hr                probaclass
suradnici@vaša_domena.hr             probaclass
vijece@vaša_domena.hr                probaclass
sindikat@vaša_domena.hr              probaclass
administracija@vaša_domena.hr        probaclass
postdiplomanti@vaša_domena.hr        probaclass

tj. sve liste ili aliase, na koje ne želite da dolazi pošta osim s lokalne mreže ili po drugim kriterijima za koje se odlučite (dakle možetete mirno dopisati nekog pojedinca ili više njih koji ne spadaju ni u jednu listu, npr.:

Huso.Patacic@vaša_domena.hr          probaclass
kantina_primjedbe@vaša_domena.hr probaclass
malimujo@vaša_domena.hr probaclass

a možete i ukloniti sve liste, a ostaviti samo pojedince).

Još treba u /etc/postfix direktoriju napraviti i datoteku access_probaclass i u nju upisati:

# Odkomentirajte zakomentirane linije (tj izbrišite #) prema potrebi
#double-bounce@mx.vaša_domena.hr         OK
#root@mx.vaša_domena.hr            OK
#MAILER-DAEMON@mx.vaša_domena.hr      OK
# Ovima je dozvoljeno slanje onima koji su
#navedeni u datoteci access_recipient
#Korisnik@neka_domena.hr OK
#ttf.hr OK
#irb.hr OK
vaša_domena.hr OK

U obje spomenute datoteke svugdje umjesto "vaša_domena" upišite ime vaše domene. Ne zaboravite udariti "Enter" tipku na kraju svakog zadnjeg reda u obje datoteke, jer će vam inače u idućem koraku (postmap) nastati greška.

Stvorite baze od navedenih datoteka:

postmap access_probaclass
postmap access_recipient

Ako je sve prošlo kako treba, trebali bi u direktoriju dobiti dvije nove datoteke, access_recipient.db i access_probaclass.db

Još samo izvršite naredbu:

postfix reload

Vaše interne liste ili aliasi ili odabrani korisnici će moći primati e-poštu samo od onih, kojima ste dozvolili.

Mjera opreza: ako radite "na živo", tj na poslužitelju koji je u produkciji, svaka greška mogla bi prouzročiti zastoj isporuke cijele pošte, zato uvijek prije zahvata napravite rezervnu kopiju main.cf datoteke "koja radi", na pr. main.cf.original.

Datoteke access_recipient.db i access_probaclass.db ne morate ni tada izbrisati, jer ako u originalnom main.cf nisu spomenute, neće imati nikakvog utjecaja na isporuku pošte. Isprobavanja vršite tako da napravite probnog korisnika ili alias i šaljite mu poštu sa zabranjene domene (npr. gmail.com). Tog korisnika/aliasa kod isprobavanja stavite ili samog u datoteku access_recipient ili ostale zakomentirajte s #. Uvijek iznova provjeravajte da li prolazi poruka kad je pošaljete sami sebi, da biste se uvjerili da je cijeli sustav isporuke pošte u funkciji. Naredbom:

tail /var/log/mail.log

pratite pojavljuju li se ikakve greške pri slanju/primanju pošte.

Autor ovog članka može ovom tekstu samo dodati onu poznatu krilaticu "Meni radi" (TM), ali ne može preuzeti nikakvu odgovornost za eventualnu štetu nastalu primjenom ovih uputa.

 

Kuharice: 
Kategorije: 
Vote: 
5
Vaša ocjena: Nema Average: 5 (3 votes)

Komentari

Budući da je sadašnji editor članaka jako osjetljiv na svaki novi zahvat (može se dogoditi da se poremeti poravnanje teksta, tako da ne može biti predviđeno kako će izgledati publicirani sadržaj), umjesto umetanja u tekst članka, ovdje ponovo naglašavam:

Nakon svakog editiranja datoteke main.cf ili vraćanja na originalnu konfiguraciju, kako je navedeno u tekstu, tj.

cp main.cf.original main.cf

treba izvršiti naredbu:

postfix reload

da bi postfix učitao aktualnu konfiguraciju.

Autor