summaryrefslogtreecommitdiff
path: root/mailman/messages/hu/README.POSTFIX.hu
blob: f2a36c3f08ade8a91f9243da12f56a4b09100ead (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
Mailman - The GNU Mailing List Management System
Copyright (C) 2001-2003 by the Free Software Foundation, Inc.
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA


ÁLTALÁNOS BEÁLLÍTÁSOK

    A Mailmannek minden gond nélkül mûködnie kell egy általánosan
    beállított Postfix-el. A dokumentáció írásakor a beállítások
    Postfix 19991231 verziótól kezdve pl13 verzióig, és 200010228
    verziótól pl08 verzióig, valamint Postfix 2.0.15-tel lettek 
    tesztelve.

    A Postfix alapértelmezésként speciális módon kezeli az -owner
    és -request címekre érkezõ leveleket. Ha azt szeretnénk, hogy
    az ide érkezõ leveleket is a Mailmannek továbbítsa a program
    kapcsoljuk ki ezt a funkciót a main.cf állomány módosításával:   
 
	  owner_request_specil = no
	
    Ahhoz hogy esetlegesen használni tudjuk a Mailman VERP küldési
    képességét ki kell kapcsolnunk az luser_relay (ez az alapértelmezett)
    beállítást és módosítanunk kell a recipient_delimeter értékén.
    Ehhez kommentezzük ki a main.cf állományban található összes
    luser_relay sort, visszatérve ezzel az alpértelmezett opcióhoz.
    Továbbá, helyezzük el main.cf fájlba a következõ sort:
    
          recipient_delimiter = +
	  
    A + jel használatával a a Defaults.py állományban megadott 
    alapértelmezett VERP_FORMAT és VERP_REGEXP értékek megfelelõen 
    fognak mûködni.

    A Postfix 450-es hibaüzenettel válaszol, ha egy nem létezõ lokális
    címre probálunk meg levelet továbbítani. Mivel ez nem jelent
    végzetes hibát, ezért a Mailman a kézbesítést addig ismételgeti,
    amíg le nem jár a DELIVERY_RETRY_PERIOD változóban megadott idõ
    (alapesetben 5 nap). Ennek elkerülésére be lehet állítani a
    Postfixet úgy, hogy a nem létezõ helyi felhasználóknak történõ
    kézbesítéskor a nem végzetes hibaüzenet helyet egy végzetes
    hiba üzenetet küldjön. Ehhez a beállításhoz a következõ sort kell
    elhelyezni a main.cf állományba:

          unknown_local_recipient_reject_code = 550

    Végül ha Postfix-stílusú virtuális tartományokat használunk, akkor
    olvassuk el az errõl szóló lejjebb található fejezetet.


POSTFIX ÉS MAILMAN ÖSSZEKAPCSOLÁSA

    A Postfixet össze lehet kapcsolni a Mailmannel úgy, hogy egy új
    lista létrehozásakor, vagy törlésekor a Postfix alias adatbázisa
    automatikusan frissüljön. Ehhez a következõk lépéseken kell 
    végigmennünk.

    A leírás feltételezi, hogy a Mailmant az alapértelmezett telepítési
    helyére telepítettük, ez a /usr/local/mailman. Ha nem így tettük,
    akkor a lépéseknél megfelelõen módosítsuk az elérési útvonalakat
    azokra amiket a konfigurálásakor a --prefix és --with-var-prefix
    kapcsolóknál használtunk.

    - Ha Postfix-stílusú virtuális tartományokat használunk és 
      szeretnénk, hogy a Mailman kezelje ezeket a tartományokat, akkor
      elõször olvassuk el a virtuális tartományokról lejjebb található
      fejezetet.

    - A $prefix/Mailman/mm_cfg.py állományban adjuk meg a következõt:

      MTA = 'Postfix'

      Az MTA változó értékével arra a programmodulra hivatkozunk a 
      Mailman/MTA könyvtárban, amelyik az adott MTA-ra jellemzõ hívások
      segítségével kezeli létrehozáskor vagy törléskor a listákat.

    - Keressük meg a Defaults.py állományban a POSTFIX_ALIAS_CMD és
      POSTFIX_MAP_CMD változókat. Gyõzõdjünk meg, hogy a változók a
      postalias és postmap programok helyes teljes elérési útvonalát
      tartalmazzák. Fontos, hogy ha ezeket megszeretnénk változtatni,
      akkor ne itt tegyük hanem az mm_cfg.py állományban.

    - Futtassuk a genaliases programot az aliases állomány létrehozásához:

      % cd /usr/local/mailman
      % bin/genaliases

      Gyõzõdjünk meg, hogy a data/aliases és data/aliases.db tulajdonosa
      a `mailman' és az állományok csoport tulajdonosa is a `mailman'.

      % su
      % chown mailman:mailman data/aliases*

    - Módosítsuk a Postfix main.cf konfigurációs állományában az alias_maps
      változót úgy, hogy a tartalmazza a következõ elérési útvonalat is:

          /usr/local/mailman/data/aliases

      (nincs a végén .db kiterjesztés) Az alias_database változóban ne
      adjuk meg ezt az útvonalat, mert nem szeretnénk hogy módosítsa a 
      Postfix newaliases parancsa a Mailman aliases.db állományát. Mindössze
      azt szeretnénk, hogy a Postfix figyelembe vegye az aliases.db 
      állományt, amikor a hely kézbesítési címeket keresi.

      Célszerû egy hash: típusú adatbázisként megadni ezt az állományt.
      Ezt megtehetjük például így:

      alias_maps = hash:/etc/postfix/aliases,
          hash:/usr/local/mailman/data/aliases

    - A Mailman konfigurálásakor használjuk a --with-mail-gid=mailman 
      kapcsolót (mellesleg ez az alapértelmezett beállítás), mivel az
      aliases.db állomány tulajdonosa a `mailman' felhasználó és a Postfix
      a Mailman wrapper programját mailman uid és gid alatt próbálja meg
      futtatni.

    Ennyi! Egy kis gond: amikor létrehozunk, vagy törlünk egy listát, akkor
    az aliases.db állomány azonnal frissül, viszont nem fut le automatikusan
    a változtatások érvényesítéséhez a "postfix reload" parancs. Ez azért
    van így, mert ehhez root jogokkal kell rendelkezni, vagy egy suid-root
    programnak kell futnia, amelyek biztonsági kockázatot jelentenek.
    A megoldás egyetlen hátrányát tehát az jelenti, hogy körülbelül csak
    egy perc múlva veszi észre a Postfix a módosításokat és érvényesít a
    változtatásokat. Ez a kis kényelmetlenség szerintünk elviselhetõ.


VIRTUÁLIS TARTOMÁNYOK

    A Postix 2.0 a támogatja "virtual alias domains" kezelést, amelyet
    a korábbi Postfix verziókban egyszerûen csak Postfix-típusú virtuális
    tartománykezelésnek hívtak. Ahhoz, hogy a Mailman képes legyen a 
    virtuális tartománykezelés használatához mind a Mailman, mind a 
    Postfix beállításokon változtatni kell. A Mailman alapesetben az
    összes virtuális tartományhoz tartaozó bejegyzést az 
    /usr/local/mailman/data/virtual-mailman állományban tárolja. A postmap
    program is ezen állomány alapján készíti el a virtual-mailman.db 
    állományt, melyet a Postfix valójában használni fog.

    Elõször a Postfix dokumentációban foglaltak alapján állítsuk be a 
    virtuális tartománykezelést (bõvebben a Postfix virtual(5) súgója ad
    eligazítást). Fontos, hogy el ne felejtsük megadni, ahogy a súgóban
    le van írva a "virtual-alias.domain anything" sort, mivel a Mailman
    virtual-mailman állománya nem tartalmazza ezt a sort. Javasoljuk,
    hogy még mielõtt telepítenénk a Mailmant, gyõzödjünk meg róla, hogy
    megfelelõen mûködik a virtuális tartománykezelés.

    A következõ lépséként a Postfix virtual_maps változóhoz kell egy 
    újabb könyvtár elérési utat adni:

    virtual_maps = <your normal virtual files>,
        hash:/usr/local/mailman/data/virtual-mailman

    Esetünkben a Mailman az alapértelmezett telepítési könyvtárban
    helyezkedik el. Régebbi Postfix-eknél nincsen virtual_alias_maps
    változó, ez esetben használjuk a virtual_maps változót.

    Következõ lépésként az mm_cfg.py állományba állítsuk be a
    POSTFIX_STYLE_VIRTUAL_DOMAINS változóba azon virtuális tartományokat,
    amelyekre a Mailmannek figyelnie kell. Elõfordulhat, hogy nem itt nem
    soroljuk fel a Postfix beállításunk által támogatott összes virtuális
    tartományunkat. Az itt megadott értékeknek pontosan egyezniük kell a
    levelezõlisták host_name változójában megadott értékekkel.

    Nézzük meg egy példán keresztül:

    Tegyük fel, hogy a Postfixben a dom1.ain, dom2.ain és dom3.ain
    virtuális tartományokat szeretnénk kezelni. Ehhez mondjuk a main.cf
    állományban a következõ beállítások vannak megadva:

        myhostname = mail.dom1.ain
        mydomain = dom1.ain
        mydestination = $myhostname, localhost.$mydomain
        virtual_maps = 
	    hash:/some/path/to/virtual-dom1,
            hash:/some/path/to/virtual-dom2,
            hash:/some/path/to/virtual-dom2

    Példánkban a virtual-dom1 állományban a következõ sorokat adtuk meg:

        dom1.ain  IGNORE
        @dom1.ain @mail.dom1.ain

    Ezzel a Postfixet arra utasítottuk, hogy minden dom1.ain-re címzett
    levelet tegyen ugyanabba a postafiókba, mint a mail.dom1.ain, az
    alapértelmezett címre érkezõket.

    Ez esetben a POSTFIX_STYLE_VIRTUAL_DOMAINS-ben nem szabad megadnunk 
    a dom1.ain-t, mivel különben a Mailman levelezõlisták bejegyzései a
    dom1.ain tartományban a következõ lennének

        mylist@dom1.ain         mylist
        mylist-request@dom1.ain mylist-request
        # és így tovább ...

    Az egyre pontosabb bejegyzések felülírják az elõttük található
    általánosabb bejegyzéseket, ezzel megakadályozzák a dom1.ain
    levelezõlisták megfelelõ mûködését.

    Azonban az mm_cfg.py állományban megadjuk a dom2.ain és dom3.ain
    értékeket:
    
        POSTFIX_STYLE_VIRTUAL_DOMAINS = ['dom2.ain', 'dom3.ain']

    Ezzel elértük, hogy minden olyan listának, amelyet a Mailman a fenti
    két tartomány valamelyikében hoz létre a megfelelõ bejegyzései a
    /usr/local/mailman/data/virtual-mailman állományban helyesen fognak
    megjelenni.

    Csak úgy mint a fent említett data/aliases* állományoknál, itt is
    gyõzõdjünk meg arról, hogy a data/virtual-mailman és 
    data/virtual-mailman.db állományok felhasználó- és csoporttulajdonosa
    `mailman' legyen. A megfelelõ mûködéshez tehát elõbb hozzuk létre
    a virtuális tartományokat, futtassuk a bin/genaliases programot és
    végül ellenõrizzük ezen állományokon a jogosultságokat. Ezen túl,
    többet már nem kell velük foglalkoznunk.


EGY MÁSIK MEGKÖZELÍTÉS

    Fil <fil@rezo.net> máshogy, virtual maps és szabványos keresési
    kifejezések használatával kezeli a virtuális tartományokat.
    Leírása megtalálható:

    (franciául)  http://listes.rezo.net/comment.php
    (angolul) http://listes.rezo.net/how.php

    Egy jó (és egyszerûbb) módszer azon esetekben ha nem bánjuk, hogy
    a tartomány részben egy újabb hostnév jelenik, ezzel növelve annak
    a címnek a karakter hosszát, amelyen keresztül a felhasználók
    elérik a listát. Pl. a listát a felhasználók sajatlista@lists.dom.ain
    címmel érik el sajatlista@dom.ain cím helyett.

    Ezt a megoldást a dokumentáció készítõje alaposan nem tesztelte.



Local Variables:
mode: text
indent-tabs-mode: nil
End: