Erinevus lehekülje "Postfix'i kasutamine Debianiga" redaktsioonide vahel

Allikas: Kuutõrvaja
(Kasutajate haldus)
(Cyrus)
181. rida: 181. rida:
 
===Cyrus===
 
===Cyrus===
  
Postkastihalduse tarkvara Cyrus sisaldab muu hulgas selliseid kompoenente
+
Postkastihalduse tarkvara Cyrus sisaldab muu hulgas selliseid komponente
  
 +
* haldusvahendid (cyradm programm)
 
* imap server
 
* imap server
 
* pop3 server
 
* pop3 server
* imtest imap test-klient
+
* testkliendid (IMAP serveri testklientprogramm imtest)
  
Cyrus'e kasutuselevõtmiseks tuleb sooritada näiteks selline tegevuste järgnevus
+
Cyrus tarkvaraga saab pealnäha sarnase tulemuse, so postkastide pidamise saavutada üsna mitmel erineval moel. Käesolev tekst kirjeldab järgmisete omadustega juhtumit
 +
 
 +
* kõik Cyruse protsessid töötavad ühes ja samas operatsioonisüsteemi eksemplaris
 +
* Cyruse kasutajad tulevad välisest PostgreSQL andmebaasist SASL ja omakorda PAM abil
 +
* Cyruse postkastidesse saabuvad kirjad Postfix MTA'st LMTP protokolli kasutamise teel
 +
* Cyruse postkastidele on ligipääs IMAP ja POP3 serverite kaudu, krüptitud ja krüptimata andmevahetust võimaldades
 +
 
 +
Sellisel moel käivitatud Cyruse kasutuselevõtmiseks tuleb sooritada näiteks selline tegevuste järgnevus
  
 
* paigaldada vajalik hulk Cyrus'e komponent
 
* paigaldada vajalik hulk Cyrus'e komponent
* paigaldada vajalik hulk SASL komponente
+
* valmistada ette PostgreSQL andmebaas
* paigaldada vajalik hulk PAM komponente
+
* valmistada ette PAM komponent
 +
* valmistada ette SASL komponent
 +
* moodustada kasutajale Cyruse postkast
 
* seadistada Cyrus käima koostöös Postfixiga
 
* seadistada Cyrus käima koostöös Postfixiga
* moodustada kasutajatele Cyruse postkastid
+
 
 +
====Cyrus tarkvara paigaldamine====
  
 
Cyrus'e paigaldamiseks tuleb öelda
 
Cyrus'e paigaldamiseks tuleb öelda
199. rida: 210. rida:
 
   # apt-get install cyrus-pop3d-2.2 cyrus-imapd-2.2 cyrus-doc-2.2 cyrus-clients-2.2 cyrus-admin-2.2 libsasl2-modules libsasl2-2 sasl2-bin
 
   # apt-get install cyrus-pop3d-2.2 cyrus-imapd-2.2 cyrus-doc-2.2 cyrus-clients-2.2 cyrus-admin-2.2 libsasl2-modules libsasl2-2 sasl2-bin
  
Cyrus tarkvara seadistamine toimub peaasjalikult selliste seadistusfailide muutmise teel
+
Cyrus tarkvara seadistamine toimub peaasjalikult seadistusfaili /etc/imapd.conf muutmise teel
  
* /etc/imapd.conf
+
====PostgreSQL andmebaasi ettevalmistamine====
* /etc/default/saslauthd
 
  
====Kasutajate haldus====
+
PostgreSQL andmebaasi tabelis hoitakse Cyruse kasutajate autentimiseks vajalikke andmeid.
  
Cyrus töö käigus kasutatakse mitmeid nö andmebaase
+
====PAM komponendi ettevalmistamine====
 
 
* postkastide andmebaas
 
* Cyruse kasutajate andmebaas (läbi SASL'i nt PAM kaudu ja nt omakorda PostgreSQLi andmebaasist)
 
  
 
PostgreSQLi andmebaasi kasutamiseks peab paigaldama paketi üldotstarbelise paketi libpam-pgsql
 
PostgreSQLi andmebaasi kasutamiseks peab paigaldama paketi üldotstarbelise paketi libpam-pgsql
215. rida: 222. rida:
 
   # apt-get install libpam-pgsql
 
   # apt-get install libpam-pgsql
  
ning seadistusfaili /etc/pam_pgsql.conf sisuga
+
PAM komponendi ettevalmistamine toimub failide /etc/pam.d/imap ning /etc/pam_pgsql.conf abil
  
 +
  # cat /etc/pam.d/imap
 +
  auth        required    pam_pgsql.so
 +
  account    required    pam_pgsql.so
 +
  password    required    pam_pgsql.so
 +
 +
ning
 +
 +
  # cat /etc/pam_pgsql.conf
 
   host = andmebaasi.hostname
 
   host = andmebaasi.hostname
 
   database = andmebaasinimi
 
   database = andmebaasinimi
229. rida: 244. rida:
 
   pw_type = md5
 
   pw_type = md5
  
ning /etc/pam.d/imap failis ridu
+
====SASL komponendi ettevalmistamine====
 +
 
 +
SASL kompoenendi seadistamine toimub faili /etc/default/saslauthd abil.
 +
 
 +
====Cyruse administratiivne kasutaja ja kasutajate haldus====
 +
 
 +
Cyrus töö käigus kasutatakse mitmeid nö andmebaase
  
  auth        required    pam_pgsql.so
+
* postkastide andmebaas
  account    required    pam_pgsql.so
+
* Cyruse kasutajate andmebaas (läbi SASL'i nt PAM kaudu ja nt omakorda PostgreSQLi andmebaasist)
  password    required    pam_pgsql.so
 
  
 
ning /etc/imapd.conf failis peavad sisalduma read
 
ning /etc/imapd.conf failis peavad sisalduma read

Redaktsioon: 16. detsember 2008, kell 01:11

Sissejuhatus

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

  • postijaotusagendile (ingl. k. mail delivery agent, MDA) kirjade kasutajate postkastidesse jaotamiseks
  • järgmisele postiedastusagendile
  • viiruste analüüsi süsteemile
  • spami 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 analüüs   <---->  |     | <---- 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

Eesmärk

Eesmärgiks on seadistada käima selliste omadustega postiedastusagent

  • võtab vastu domeenide loomaaed.tartu.ee ja www.loomaaed.tartu.ee posti
  • saadab mart@loomaaed.tartu.ee aadressile saadetud kirja edasi aadressile
  • salvestab priit@loomaaed.tartu.ee aadressile saadetud kirja faili /var/mail/mart
  • võimaldab saata välja alamvõrkudest 192.168.0.0/24 ja 172.16.0.0/24 posti

Tarkvara paigaldamine

Postfix tarkvara saab paigaldada Debiani paketihaldusest öeldes

 bash# apt-get install postfix

Tavaliselt siis eemaldatakse vaikimisi Debiani standard operatsioonisüsteemi kooseisus esinev Exim Postfixi vastu. Postfixi paigaldamisel tuleb valida 'General type of configuration', 'valime Internet Site'

  • No configuration
  • Internet Site
  • Internet with smarthost
  • Satellite system
  • Local only

Seejärel küsitakse 'mail name' väärtust, see hakkab esinema läbi selle postisüsteemi välja saadetud kirjade eposti aadresside @ märgist paremal

 loomaaed.tartu.ee

Seejärel tekitatakse kasutaja, genereeritakse seadistusfailid ja käivitatakse Postfix.

 Setting up postfix (2.3.8-2) ...
 Adding group `postfix' (GID 105) ...
 Done.
 Adding system user `postfix' (UID 104) ...
 Adding new user `postfix' (UID 104) with group `postfix' ...
 Not creating home directory `/var/spool/postfix'.
 Creating /etc/postfix/dynamicmaps.cf
 Adding tcp map entry to /etc/postfix/dynamicmaps.cf
 Adding group `postdrop' (GID 106) ...
 Done.
 setting myhostname: ria-pg1a.test.kit
 setting alias maps
 setting alias database
 changing /etc/mailname
 setting myorigin
 setting destinations: loomaaed.tartu.ee, ria-pg1a.test.kit, localhost.test.kit, localhost
 setting relayhost: 
 setting mynetworks: 127.0.0.0/8
 setting mailbox_command
 setting mailbox_size_limit: 0
 setting recipient_delimiter: +
 setting inet_interfaces: all
  
 Postfix is now set up with a default configuration.  If you need to make 
 changes, edit
 /etc/postfix/main.cf (and others) as needed.  To view Postfix configuration
 values, see postconf(1).
 
 After modifying main.cf, be sure to run '/etc/init.d/postfix reload'.
 
 Running newaliases
 Stopping Postfix Mail Transport Agent: postfix.
 Starting Postfix Mail Transport Agent: postfix.

Postfixiga on seotud failisüsteemis sellised kataloogid ning failid

  • /etc/postfix - Postfixi seadistusfailid
  • /etc/mailname
  • /var/spool/postfix - saba (ingl. k. queue)
  • /var/log/mail.log - logi
  • /usr - programmifailid ja teegid ning dokumentatsioon, erinevates kataloogides, 'dpkg -L postfix' ütleb

Seadistamine

Süsteemist väljuva posti ümbriku muutmiseks tuleb kasutada mail.cf failis rida

 smtp_generic_maps = hash:/etc/postfix/generic

ning /etc/postfix/generic ise sisaldab näiteks selliseid ridu

 www-data@arvuti.sisedomeen   www-bounce@valisdomeen.ee
 root@arvuti.sisedomee       www-bounce@valisdomeen.ee

Muudatuste kehtestamiseks tuleb generic'ikile vastav andmebaas moodustada käsuga

 # postmap /etc/postfix/generic

ning laadida reload'iga Postfix.

Kasutamine

Aliase olemasolu kontrollimiseks sobib öelda

 # postmap -q mart@loomaaed.tartu.ee pgsql:/etc/postfix/pgsql-local.cf

Logi

Jõudlus

Amavis

Põhimõtteliselt Amavis tarkvara iseseisvalt sisulist lisaväärtust postisüsteemile ei paku, aga ta võimaldab ühendada Postfix'i kokku väliste teenustega, näiteks viiruste analüüsi tarkvaraga ClamAV.

Amavis paigaldatakse öeldes

 # apt-get install amavisd-new

Vaikeseadistustega Amavis sobib kasutamiseks

  • Amavis kuulab soketil 127.0.0.1:10024
  • Amavis pöördub MTA poole aadressile 127.0.0.1:10025

Selleks, et Postfix kõik talle laekunud posti saadaks läbi Amavisi peab lisama main.cf faili rea

 content_filter=amavisfeed:[127.0.0.1]:10024

ning faili master.cf lisama sektsioonid

 amavisfeed unix    -       -       n       -       2     smtp
    -o smtp_data_done_timeout=1200
    -o smtp_send_xforward_command=yes
    -o smtp_tls_note_starttls_offer=no
 
 127.0.0.1:10025 inet n    -       n       -       -     smtpd
    -o content_filter=
    -o smtpd_delay_reject=no
    -o smtpd_client_restrictions=permit_mynetworks,reject
    -o smtpd_helo_restrictions=
    -o smtpd_sender_restrictions=
    -o smtpd_recipient_restrictions=permit_mynetworks,reject
    -o smtpd_data_restrictions=reject_unauth_pipelining
    -o smtpd_end_of_data_restrictions=
    -o smtpd_restriction_classes=
    -o mynetworks=127.0.0.0/8
    -o smtpd_error_sleep_time=0
    -o smtpd_soft_error_limit=1001
    -o smtpd_hard_error_limit=1000
    -o smtpd_client_connection_count_limit=0
    -o smtpd_client_connection_rate_limit=0 
    -o receive_override_options=no_header_body_checks,no_unknown_recipient_checks,no_milters
    -o local_header_rewrite_clients=
    -o smtpd_milters=
    -o local_recipient_maps=
    -o relay_recipient_maps=

ClamAV

ClamAV on vaba tarkvaraline viirustõrjeprogramm, mille kasutamisel tarvitatakse ClamAV tasuta viiruste kontrolli andmebaasi teenust.

Tarkvara paigaldatakse tavaliselt Debian volatile arhiivis, selleks peab /etc/apt/sources.list sisaldama esimese reana

 deb http://ftp.aso.ee/debian-volatile lenny/volatile main contrib non-free

Paigaldamiseks tuleb öelda

 # apt-get install clamav

Vaikeseadistustega ClamAV sobib kasutamiseks.

Cyrus

Postkastihalduse tarkvara Cyrus sisaldab muu hulgas selliseid komponente

  • haldusvahendid (cyradm programm)
  • imap server
  • pop3 server
  • testkliendid (IMAP serveri testklientprogramm imtest)

Cyrus tarkvaraga saab pealnäha sarnase tulemuse, so postkastide pidamise saavutada üsna mitmel erineval moel. Käesolev tekst kirjeldab järgmisete omadustega juhtumit

  • kõik Cyruse protsessid töötavad ühes ja samas operatsioonisüsteemi eksemplaris
  • Cyruse kasutajad tulevad välisest PostgreSQL andmebaasist SASL ja omakorda PAM abil
  • Cyruse postkastidesse saabuvad kirjad Postfix MTA'st LMTP protokolli kasutamise teel
  • Cyruse postkastidele on ligipääs IMAP ja POP3 serverite kaudu, krüptitud ja krüptimata andmevahetust võimaldades

Sellisel moel käivitatud Cyruse kasutuselevõtmiseks tuleb sooritada näiteks selline tegevuste järgnevus

  • paigaldada vajalik hulk Cyrus'e komponent
  • valmistada ette PostgreSQL andmebaas
  • valmistada ette PAM komponent
  • valmistada ette SASL komponent
  • moodustada kasutajale Cyruse postkast
  • seadistada Cyrus käima koostöös Postfixiga

Cyrus tarkvara paigaldamine

Cyrus'e paigaldamiseks tuleb öelda

 # apt-get install cyrus-pop3d-2.2 cyrus-imapd-2.2 cyrus-doc-2.2 cyrus-clients-2.2 cyrus-admin-2.2 libsasl2-modules libsasl2-2 sasl2-bin

Cyrus tarkvara seadistamine toimub peaasjalikult seadistusfaili /etc/imapd.conf muutmise teel

PostgreSQL andmebaasi ettevalmistamine

PostgreSQL andmebaasi tabelis hoitakse Cyruse kasutajate autentimiseks vajalikke andmeid.

PAM komponendi ettevalmistamine

PostgreSQLi andmebaasi kasutamiseks peab paigaldama paketi üldotstarbelise paketi libpam-pgsql

 # apt-get install libpam-pgsql

PAM komponendi ettevalmistamine toimub failide /etc/pam.d/imap ning /etc/pam_pgsql.conf abil

 # cat /etc/pam.d/imap
 auth        required    pam_pgsql.so 
 account     required    pam_pgsql.so
 password    required    pam_pgsql.so

ning

 # cat /etc/pam_pgsql.conf
 host = andmebaasi.hostname
 database = andmebaasinimi
 user = cyrus_auth
 password = cyrus_auth_parool
 table = skeeminimi.tabelinimi
 user_column = username
 pwd_column = passwd
 expired_column = expire_status
 newtok_column = newtok
 debug
 pw_type = md5

SASL komponendi ettevalmistamine

SASL kompoenendi seadistamine toimub faili /etc/default/saslauthd abil.

Cyruse administratiivne kasutaja ja kasutajate haldus

Cyrus töö käigus kasutatakse mitmeid nö andmebaase

  • postkastide andmebaas
  • Cyruse kasutajate andmebaas (läbi SASL'i nt PAM kaudu ja nt omakorda PostgreSQLi andmebaasist)

ning /etc/imapd.conf failis peavad sisalduma read

 sasl_mech_list: PLAIN
 sasl_pwcheck_method: saslauthd

Testimiseks sobib kasutada Cyrus tarkvaraga kaasa tulevat imap klienti imtest, näiteks selliselt

 $ imtest -a mart -u mart localhost -w mardiparool
 S: * OK smtp2a Cyrus IMAP4 v2.2.13-Debian-2.2.13-14+b3 server ready
 C: C01 CAPABILITY
 S: * CAPABILITY IMAP4 IMAP4rev1 ACL QUOTA LITERAL+ NAMESPACE UIDPLUS ID NO_ATOMIC_RENAME UNSELECT CHILDREN MULTIAPPEND BINARY SORT     THREAD=ORDEREDSUBJECT THREAD=REFERENCES ANNOTATEMORE IDLE
 S: C01 OK Completed
 C: L01 LOGIN mart {7}
 S: + go ahead
 C: <omitted>
 S: L01 OK User logged in
 Authenticated.
 Security strength factor: 0
 . list "" "*"
 * LIST (\HasChildren) "." "INBOX"
 . OK Completed (0.000 secs 6 calls)
 . logout
 * BYE LOGOUT received
 . OK Completed
 Connection closed.