Postfix: erinevus redaktsioonide vahel

Allikas: Kuutõrvaja
Mine navigeerimisribaleMine otsikasti
Jj (arutelu | kaastöö)
Resümee puudub
Jj (arutelu | kaastöö)
Resümee puudub
 
(ei näidata 3 kasutaja 74 vahepealset redaktsiooni)
1. rida: 1. rida:
===Sissejuhatus===
===Sissejuhatus===


Postfix on vabavaraline mail transfre agent (MTA), serveritarkvara mis mõeldud
Postfix on postiedastusagent (ingl. k. mail transport agent, MTA). Postiedastusagendi ülesanne on sooritada kontrolle, võtta epost vastu võrgust või lokaalselt ja anda edasi
emailide vastuvõtmiseks ning saatmiseks. Postfixi kiirus, kergelt administreeritavus ja turvalisus
on teinud sellest ühe enimkasutatava mta ja laialdase alternatiivi sendmailile.


Selle kirjutas hollandlane Wietse Venema ja kasutusse võeti esmakordselt 1999.a.  
* postijaotusagendile (ingl. k. mail delivery agent, MDA) kirjade kasutajate postkastidesse jaotamiseks või kopeerida ise failisüsteemi
* järgmisele postiedastusagendile
* viiruste ja spämmi analüüsi süsteemile


===Anatoomia===
Postiedastusagent on epostisüsteemi keskne komponent, mis ühendab kokku kõik eposti liikumisega toimuvad tegevused


Kitsam pilt MTA'st. Tegemist ei ole mingi väikese tarkvaraga. Kokku koosneb postfix kuskil 11'nest põhilisest
                    internet (teised MTA'd)
käsurea utiliidist ja 20nest protsessist/deemonist.
 
                            | ^
                            v |
                            _____
  spämmi ja       <---->  |    | <---- lokaalne meilisaatja (nn /usr/sbin/sendmail STDIO)
  viiruste analüüs        | MTA | <---- MTA klient, nt Icedove või Thunderbird
                          |_____| ----> postijaotusagent nt Cyrus või lihtsamal juhul kopeeritakse
                                        kiri faili /var/mail/kasutajanimilinefail


[[Pilt:Psfxcomn.gif]]
Kuutõrvajas on käsitletud seoses Postfixi kasutamisega selliseid teemasid


Kollased märgid on mail programmid neist kastid on maili järjekorrad (queue) või failid
* [[:Mailman kasutamine FreeBSD'ga]]
 
* [[:Cyrus kasutamine Gentooga]]
sinised kastid on lookup table'd
* [[:Postfix'i kasutamine Debianiga]]
 
* [[:Postfix'i arhitektuuri kirjeldus ja kasutamise keerulisemad võimalused]]
programmid üldkasti sees töötavad kontrollituna postfixi master daemoni poolt
* [[:Kahetasemelise Postfix'i süsteemi kasutamine Debianiga]]
info selle sees kuulub samuti postfixi mailisüsteemile
* [[:Cyruse kasutamine Postfixi ja Debianiga]]
 
* [[:Mailmani kasutamine Postfixi ja Debianiga]]
Kuna deemoneid on äärmiselt palju ja nende kõigi esiletoomine võtaks palju aega siis
* [[:Sympa kasutamine Postfixi ja Debianiga]]
kõige olulisemad deemonid on
* [[:Amavis kasutamine Debian Lenniga]]
 
* [[:Postfix'i SMTP AUTH üle TLS vastu Postgresql baasi Debianiga]]
master
* [[:Opportunistic encryption kasutamine Postfixiga]]
The master daemon is the brain of the Postfix mail system.
* [[:Squirrelmail kasutamine Debian Lennyga]]
It spawns all other daemons.
* [[Postfix + courier + mysql]] FreeBSD postfix mailisüsteem koos mysql'is olevate kasutajate ning veebihaldusliidesega paigaldusõpetus
 
* [[:SPF kasutamine Postfixiga]]
smtpd
The smtpd daemon (server) handles incoming
connections.
 
smtp
The smtp client handles outgoing connections.
 
qmgr
The qmgr-Daemon is the heart of the Postfix mail system.
It processes and controls all messages in the mail queues.
 
local
The local program is Postfix’ own local delivery agent. It
stores messages in mailboxes.
 
Posfixil on neli põhilist järjekorda: maildrop, incoming, active ja deferred.
Lokaalne meil saadetakse maildropile ja kopeeritakse incoming järjekorda. Incoming
järjekord on mailidele mis äsja saabunud ja queue manager pole neid veel ülevaadanud.
Mailid mida ei saa edastada tõstetakse defferred järjekorda ,et see ei jääks
saabuvatele-saadetavatele kirjadele jalgu.
 
Pisut detailsemat juttu http://www.linuxjournal.com/article/9454
 
===Paigaldus===
 
Üldiselt peaks iga vähegi enesest lugupidavam ja suurem operatsioonisüsteem
omama mingit oma porti/installipakki postfixist.
Postfix on juba paljude operatsioonisüsteemide vaikimisi mta'ks, näiteks ubuntul.
Kaasa tuleb installiga ka ohtralt seadistuse näiteid, abifaile ja manuale
 
===Seadistus===
 
Postfixi põhilisteks seadistusfailideks on '''main.cf''' ja '''master.cf'''. Main.cf sisaldab
postfixi seadistusparameetreid mis vajalikud mailide liigutamiseks ning master.cf seadistab deemonprotsesse
 
====Main.cf====
 
Kõige lihtsamaks main.cf seadistuseks oleks
 
smtpd_banner = $myhostname ESMTP no spam please ;)
myhostname = kool.edu.ee
mydomain = $myhostname
myorigin = $mydomain
inet_interfaces = all
mynetworks = 127.0.0.0/8, 192.168.1.0/24
mydestination = $myhostname, localhost.$mydomain, /usr/local/etc/postfix/mydestination
unknown_local_recipient_reject_code = 550
alias_maps = hash:/etc/mail/aliases
alias_database = hash:/etc/mail/aliases
home_mailbox = mbox
smtpd_sender_restrictions = permit_mynetworks, reject_unknown_sender_domain
smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination
 
See kõik on üldine ja töötab ühtemoodi nii freebsd, solarise kui debiani või kasvõi windowsil (kui postfix sinna
kunagi porditakse)
 
Seejärel tuleb muidugi seadistada ka postfixi septsiifilisem osa, mis varieerub erinevatel operatsioonisüsteemidel
omasuudu, näiteks kus asub deemon, kus spool kaust või mis õigustes töötab postfix
 
Kasutada võib ka muutujaid stiilis config_directory = /usr/local/etc/postfix
ja kasutada stiilis transport_maps = hash:$config_directory/transport
 
Seletaks pisut põhilisi ridu lahti
 
'''smtpd_banner = $myhostname ESMTP no spam please ;) '''
 
Üldine teade mida näeb kui ühenduda 25 pordi külge, üldiselt
täidab pigem ilu ülesannet :)
 
'''myhostname = kool.edu.ee'''
 
See muutuja võetakse tavaliselt shellist ja sõltub mis on sereri hostnameks määratud,
üldiselt võib olla soov seda siiski sageli muuta
 
'''mydomain = $myhostname'''
 
mydomain võib samuti sageli erineda myhostnamest, üldiselt kui aga ei võib
kasutada näiteks muutujat $myhostname
 
'''myorigin = $mydomain'''
 
is the domain name that locally-posted email appears to have come from and is delivered to.
 
'''inet_interfaces = all'''
 
Postfix kuulab vaikimisi kõikidel võrguseadmetel mis serveril küljes 25ndat porti ja
kust posti ka vastu võetakse
 
'''mynetworks = 127.0.0.0/8, 192.168.1.0/24'''
 
IP aadressid või võrkude vahemikud mis on turvalised nimetame localhosti ja serveri taguse kontori sisevõrgu.
Nendest võrkudest võib saata maile läbi serveri. Kõik katsed saata või relay'da maili teistelt
mitte siin defineeritud ip'delt keelatakse
 
'''mydestination = $myhostname, localhost.$mydomain, /usr/local/etc/postfix/mydestination'''
 
Siin võib defineerida veel kõik masina küljes olevad domeenid neid komaga eraldadest, kust
server peaks emaile vastuvõtma, lihtustamise huvides võib need kõik mydestination faili lisada
ning faili korraga külgevõtta
 
/usr/local/etc/postfix/mydestination
luunja.tartu.ee
luunja.edu.ee
 
'''unknown_local_recipient_reject_code = 550'''
 
Viisakas seadistada teiste mailisaatjate jaoks.
 
''' alias_maps = hash:/etc/mail/aliases'''
 
alias faili, vaikimisi etc all
 
''' alias_database = hash:/etc/mail/aliases'''
 
Alias faili andmebaas
 
'''home_mailbox = mbox'''
 
Mailide salvestamise formaadiks mailbox. See on kõige vanem ja lihtsam formaat
kuid mitte kõige parem ja tänapäeval oleks
tegelikult juba üsnagi mõttekas kasutada maildir'i home_mailbox = Maildir/
võimalik on kogu maili kettale transportimine anda eraldi programmine, näit
cyrusele mailbox_transport = cyrus
 
'''smtpd_sender_restrictions = permit_mynetworks, reject_unknown_sender_domain'''
 
Piirangud läbi mailiserveri saatjale, lubame automaatselt mynetworgist saatmised
ning keelame tundmatud
 
'''smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination'''
 
siinpuhul saab seadistada veel
 
  permit_sasl_authenticated,
  reject_non_fqdn_hostname,
  reject_non_fqdn_sender,
  reject_non_fqdn_recipient,
  reject_unauth_destination,
  reject_unauth_pipelining,
  reject_invalid_hostname,
  reject_rbl_client bl.spamcop.net,
  reject_rbl_client sbl-xbl.spamhaus.org
 
'''Veel vajalikke muutujaid'''
 
'''maximal_queue_lifetime = 3d'''
'''bounce_queue_lifetime = 3h'''
 
Saba elupikkuse reguleerimine, oluline masinates
mis näiteks paljudele teistele domeenidele relay'ks
 
'''relay_domains = /etc/mail/relay-domains'''
 
domeenid milledele näiteks ollakse teiseks mx'iks
 
'''Suhtlemiskiiruste limiteerimised'''
 
anvil_rate_time_unit = 60s
smtpd_client_connection_count_limit = 5
smtpd_client_connection_rate_limit = 100
smtpd_client_message_rate_limit = 100
smtpd_client_recipient_rate_limit = 200
smtpd_client_event_limit_exceptions = $mynetworks, ".ee"
smtpd_timeout = 60s
 
Hea kasutada spammimiste pidurdamisteks
 
selleks hea näiteks nõuda ka '''smtpd_helo_required = yes'''
kui korrektset suhtlus pole ei tule ka vastuseid
'''Konfiguratsiooni automaatne muutmine postconf utiliidiga'''
 
konfiguratsiooniooni saab jooksvalt vaadata käsuga
postconf -n
 
Postconf võimaldab kiirelt ja mugavalt muuta mingeid parameetreid main.cf seadistuses
ning seda võib kasutada nii hästi skriptimisel näiteks
 
postconf -e 'readme_directory = no'
 
Käsuga muudetakse readme_directory väli
 
====Muud konfiguratsioonid====
 
envelope sender and recipient addresses
 
aliases
virtual
generic
canonical
relocated
 
dedicated transport settings
 
transports
 
SMTP communication control
 
access
Postfix
 
For content control
 
header_checks
body_checks
mime_header_checks
nested_header_checks (obscure)
 
 
===Krüpteeringud TLS===
 
Kahe mailiserveri vaheline tls krüpteering
 
===Auth SASL===
 
Kasutajate autentimine ja kürpteeritud login
 
===Mysql kasutajad===
 
postfixadmin
 
===Lisadeemonid viirusetõrje/spam===
 
clamav, amavisd, postgrey jpt
 
content_filter = smtp-amavis:[127.0.0.1]:10024
 
===Abivahendid===
 
Oluliseimad posfixi käsud mida sagedaimini igapäevaelus võib vajaminna on
 
postalias
postmap
postconf
postqueue
postsuper
 
Järjekordadega tegelemisel põhiliseks on muidugi mailq mis võimaldab mugavalt järjekordade sisu jälgida
 
Suuremate mailivoogude ning blokeerumiste korral on hea uurida mis domeenid on probleemiks
ja mis järjekordades on need kinni. Mailq pole samuti sageli selles osas eriti ülevaatlik.
 
# qshape deferred | head
                                          T  5 10 20 40 80 160 320 640 1280 1280+
                                  TOTAL 540  0  3  1  2 10  4  14  31  59  416
                          mingi.edu.ee 320  0  2  1  0  9  3  4  11  51  239
                            hotmail.org  25  0  0  0  0  1  0  0  0    0    24
 
Mõne domeeni või saatja kõigi kirjade eemaldamiseks võib kasutada sarnast käsku
 
mailq | grep '''spamidomeen.ee''' | awk '{ print $1 }' | tr -d '*!' | postsuper -d -
 
Postisüsteemi heaks testimise abivahendiks on ikka telnet muidugi ja telnet port 25
 
===Logi ja selle analüüs===
 
tail -f mail.log ;)
 
mailgraph
 
===Lingid===
 
Ametlik dokumentatsioon
 
http://www.postfix.org/documentation.html
 
Mailiserverite võrdlused
 
http://en.wikipedia.org/wiki/Comparison_of_mail_servers
 
dspam ja postfix
 
http://ubuntuforums.org/showthread.php?t=520075
 
redhat'i postfixi põhjalikud manualid
 
http://www.redhat.com/support/resources/howto/RH-postfix-HOWTO/x368.html
 
postfixi arhidektuuri täpsem ülevaade
 
http://www.postfix.org/OVERVIEW.html
 
Veel logimisest
 
http://www.onlamp.com/pub/a/onlamp/2004/01/22/postfix.html

Viimane redaktsioon: 23. september 2010, kell 12:44

Sissejuhatus

Postfix on postiedastusagent (ingl. k. mail transport agent, MTA). Postiedastusagendi ülesanne on sooritada kontrolle, võtta epost vastu võrgust või lokaalselt ja anda edasi

  • postijaotusagendile (ingl. k. mail delivery agent, MDA) kirjade kasutajate postkastidesse jaotamiseks või kopeerida ise failisüsteemi
  • järgmisele postiedastusagendile
  • viiruste ja spämmi analüüsi süsteemile

Postiedastusagent on epostisüsteemi keskne komponent, mis ühendab kokku kõik eposti liikumisega toimuvad tegevused

                   internet (teised MTA'd)
 
                            | ^
                            v |
                           _____
 spämmi ja        <---->  |     | <---- lokaalne meilisaatja (nn /usr/sbin/sendmail STDIO)
 viiruste analüüs         | MTA | <---- MTA klient, nt Icedove või Thunderbird
                          |_____| ----> postijaotusagent nt Cyrus või lihtsamal juhul kopeeritakse 
                                        kiri faili /var/mail/kasutajanimilinefail

Kuutõrvajas on käsitletud seoses Postfixi kasutamisega selliseid teemasid