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.
59 Temple Place - Suite 330, Boston, MA 02111-1307, 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:
|