Postconf, ili kako bez editora uređivati main.cf

Postfix je standardni MTA (Mail Transfer Agent) servis na CARNetovim čvornim računalima. Tu "čast" je zaslužio svojim brojnim kvalitetama i jednostavnom konfiguracijom, te laganim integiranjem s drugim servisima, najčešće onima s antispam i antivirusnim predznakom. Tu funkciju u CARNetovoj distribuciji preuzima amavisd-new, iako sami možete dodati i druge pomoćne servise.

Postfix dolazi s dosta pomoćnih alata, a danas ćemo se pozabaviti s alatom postconf, koji ispisuje parametre (ali ih može i promijeniti) iz konfiguracijske datoteke /etc/postfix/main.cf. Krenimo odmah:

# postconf -d 
2bounce_notice_recipient = postmaster
access_map_reject_code = 554
address_verify_default_transport = $default_transport
address_verify_local_transport = $local_transport
address_verify_map =
address_verify_negative_cache = yes
address_verify_negative_expire_time = 3d
...

Vidimo da se ispisuju sve varijable i njihove vrijednosti. Uporabom opcije "-d" (default) dobit ćemo ispis svih varijabli i njihovih vrijednosti , onako kako su ukompilirane u sam program. Dakle, uopće se ne gledaju vrijednosti varijabli u main.cf, nego one navedene u izvornom kodu (poneke se ipak isčitaju sa sustava prilikom pokretanja postfixa, primjerice ime hosta).

Najčešće, ipak, želimo vidjeti vrijednost samo određene varijable (ili više njih, ako ih navedemo). Evo primjera za jednu varijablu:

# postconf -d content_filter
content_filter =

Ukoliko želite vidjeti trenutno važeće vrijednosti, jednostavno izostavite (bilo koju) opciju:

# postconf content_filter
content_filter = smtp-amavis:[127.0.0.1]:10024

I zaista, ukoliko zavirite u main.cf, tamo je postavljena upravo ta vrijednost za varijablu content_filter.

Postoji jedna jako korisna opcija, "-n" (new). Ona će ispisati samo ako se razlikuje od ukompilirane vrijednosti. Ovo je jako korisno kad na brzinu želite provjeriti što je promijenjeno u konfiguraciji.

Kako je u Debianovoj distribuciji konfiguracijska datoteka main.cf već predpodešena, a u CARNetovoj i dodatno promijenjena pomoću paketa postfix-cn, lista promjena je zbog još uvijek prevelika. Iz tog razloga, opet ćemo se ograničiti na samo jednu variijablu, uzevši za primjer varijablu smtp_use_tls:

# postconf -n | grep smtp_use_tls
smtp_use_tls = yes

Provjerimo je li ta varijabla po defaultu zaista te vrijednosti:

# postconf -d | grep smtp_use_tls
smtp_use_tls = no

Dakle, varijablu je uistinu mijenjana ili je to učinio netko drugi umjesto nas (ili neki paket). Sada možemo pokušati promijeniti vrijednost varijable pomoću opcije "-e" (edit):

po:/etc/postfix# postconf -e 'smtp_use_tls = no'
po:/etc/postfix# postconf -n smtp_use_tls
smtp_use_tls = no

Provjerom možemo vidjeti da se vrijednost varijable uistinu promijenila iz "yes" u "no". Opcija "-e" se može rabiti u skriptama, i tu je možda njena najveća prednost nad ručnim editiranjem main.cf. Na ovaj način radi i CARNetov paket postfix-cn, koji preko opcije "-e" mijenja određena postavke koje odgovaraju vašem računalu.

Kako vas kasnije namjeravamo upoznati s predlošcima u Postfixu, objasnit ćemo opciju "-b". Ona provjerava sintaksu i ispisuje sve predloške za bounce poruke (http://en.wikipedia.org/wiki/Bounce_message):

# postconf -b /etc/postfix/bounces.cf
expanded_failure_text = <<EOF
Ovo je e-mail servis na posluzitelju posluzitelj.carnet.hr.

Obavjestavamo vas da vasa e-mail poruka nije isporucena jednom ili vise
primatelja. Poruka se nalazi u privitku.
...

Ukoliko želite saznati kako izgledaju originalni predlošci, upotrijebite naredbu u ovom obliku:

# postconf -b ""

Za postconf postoje još neke opcije, ali ih nećemo objašnjavati jer se rjeđe rabe. Svakako zavirite u manual postconfa, kako biste mogli imati uvid u to što ta naredba još pruža, u slučaju da vam to zatreba.

I na kraju, nemojte pobrkati naredbu postfix i postconf, što se zna u brzini dogoditi!

 

Kuharice: 
Kategorije: 
Vote: 
0
No votes yet