rev |
line source |
yuuji@1
|
1 //
|
yuuji@1
|
2 // qmail+maildir+apop+virtualdomain+POPbeforeSMTP extensions to uw-imapd
|
yuuji@1
|
3 // Japanese Document below
|
yuuji@1
|
4 //
|
yuuji@1
|
5
|
yuuji@1
|
6 [Comentary]
|
yuuji@1
|
7 This patch kit enables uw-imapd to handle;
|
yuuji@1
|
8 * maildir
|
yuuji@1
|
9 * qmail's extended mail addresses of user (~/.qmail-ext)
|
yuuji@1
|
10 * Postfix's extended mail addresses of user (~/.forward+ext)
|
yuuji@1
|
11 * Accesses to extended mail addresses (authenticated with ~/.apop-ext)
|
yuuji@1
|
12 * Virtual domain user switching
|
yuuji@1
|
13
|
yuuji@1
|
14 Because this package is produced those who want to avail all features above,
|
yuuji@1
|
15 we recommend you to turn on all switches for every extension.
|
yuuji@1
|
16 Please let me recommend you not to use plain POP3 with this package.
|
yuuji@1
|
17 If you want to cling onto POP3, please use qmail-pop3d which comes with
|
yuuji@1
|
18 qmail distribution.
|
yuuji@1
|
19
|
yuuji@1
|
20 [Configuration]
|
yuuji@1
|
21 You can select these compilation switches.
|
yuuji@1
|
22
|
yuuji@1
|
23 Where: ./Makefile
|
yuuji@1
|
24 Switch: QMAIL
|
yuuji@1
|
25 What: Support maildir and user's address extension.
|
yuuji@1
|
26 This switch is requisite.
|
yuuji@1
|
27
|
yuuji@1
|
28 Where: ./Makefile
|
yuuji@1
|
29 Switch: INET6
|
yuuji@1
|
30 What: Support IPv6 address
|
yuuji@1
|
31 WORKS fine only via ucspi-tcp+ipv6patch
|
yuuji@1
|
32 If you are using tcpserver-ipv6, set this.
|
yuuji@1
|
33
|
yuuji@1
|
34 Where: ./Makefile
|
yuuji@1
|
35 Switch: POSTFIX
|
yuuji@1
|
36 What: Defaults user address file to ~/.forward and
|
yuuji@1
|
37 extension delimiter to "+".
|
yuuji@1
|
38 Setting this flag on is equavalent to declare
|
yuuji@1
|
39 -DQMAIL -DDOTQMAIL=".forward" -DXADDR_DELIM="+"
|
yuuji@1
|
40 in ./Makefile.
|
yuuji@1
|
41
|
yuuji@1
|
42 Where: ./Makefile
|
yuuji@1
|
43 Switch: RESTRICT_POP
|
yuuji@1
|
44 What: Restrict POP3 access from unsafe network. Allow
|
yuuji@1
|
45 normal pop3 access only when environment variable
|
yuuji@1
|
46 INTRANET is set. This can be controled by tcpd with
|
yuuji@1
|
47 /etc/hosts.allow.
|
yuuji@1
|
48
|
yuuji@1
|
49 Where: ./src/osdep/unix/Makefile
|
yuuji@1
|
50 Switch: DEFAULTMAILDIR (quoted string)
|
yuuji@1
|
51 What: Default users' maildir directory when a user does not
|
yuuji@1
|
52 have ~/.qmail file.
|
yuuji@1
|
53 The default value is null. If null, the default value in
|
yuuji@1
|
54 osdep/unix/maildir.c("Maildir") will be taken.
|
yuuji@1
|
55
|
yuuji@1
|
56 Where: ./src/osdep/unix/Makefile
|
yuuji@1
|
57 Switch: QMAILCONTROL (quoted string)
|
yuuji@1
|
58 What: Default qmail/control directory.
|
yuuji@1
|
59 The default value is "/var/qmail/control"
|
yuuji@1
|
60
|
yuuji@1
|
61 Where: ./src/osdep/unix/Makefile
|
yuuji@1
|
62 Switch: USERAPOPFILE (string)
|
yuuji@1
|
63 What: User's APOP password file relative to their home dir.
|
yuuji@1
|
64 ".apop" is set by default.
|
yuuji@1
|
65 One of recommended values is "Mail/.apop".
|
yuuji@1
|
66 NOTE THAT USERAPOPFILE should NOT be readable by others.
|
yuuji@1
|
67 Do chmod 600 USERAPOPFILE.
|
yuuji@1
|
68
|
yuuji@1
|
69 Where: ./src/osdep/unix/Makefile
|
yuuji@1
|
70 Switch: APOPOPEN (string)
|
yuuji@1
|
71 What: Command name to decode APOP password from USERAPOPFILE
|
yuuji@1
|
72 "/usr/local/sbin/deapop" is set by default.
|
yuuji@1
|
73 NOTE THAT you should install deapop command too.
|
yuuji@1
|
74 If you don't want to think about this,
|
yuuji@1
|
75 install the following shell script into /usr/local/sbin/deapop
|
yuuji@1
|
76
|
yuuji@1
|
77 #!/bin/sh
|
yuuji@1
|
78 cat "$@"
|
yuuji@1
|
79
|
yuuji@1
|
80 Where: ./src/osdep/unix/Makefile
|
yuuji@1
|
81 Switch: POPBEFORESMTP
|
yuuji@1
|
82 What: Turn on `POP before SMTP' feature.
|
yuuji@1
|
83 The next variable POP3RECORDER takes effect when
|
yuuji@1
|
84 this variable is defined.
|
yuuji@1
|
85
|
yuuji@1
|
86 Where: ./src/osdep/unix/Makefile
|
yuuji@1
|
87 Switch: POP3RECORDER (string)
|
yuuji@1
|
88 What: Command name to achieve `POP before SMTP'.
|
yuuji@1
|
89 "/usr/local/etc/pop3-record" is set by default.
|
yuuji@1
|
90 This recorder program should take one argument of
|
yuuji@1
|
91 fully qualified hostname (or IP address) where the POP
|
yuuji@1
|
92 authentication is passed to.
|
yuuji@1
|
93
|
yuuji@1
|
94 [NO WARRANTY]
|
yuuji@1
|
95
|
yuuji@1
|
96 This package comes from absolutely NO WARRANTY. The author of
|
yuuji@1
|
97 this package is not responsible for any result caused by using
|
yuuji@1
|
98 this software. The copyright of the extension part is held by
|
yuuji@1
|
99 HIROSE, Yuuji [yuuji@gentei.org].
|
yuuji@1
|
100
|
yuuji@1
|
101 [COPYING]
|
yuuji@1
|
102
|
yuuji@1
|
103 You can re-distribute this package without any cost except some
|
yuuji@1
|
104 practical cost(magnetical media or so). Although this package
|
yuuji@1
|
105 basically obeys the license terms in a file CPYRIGHT in this
|
yuuji@1
|
106 directory, there is one exception; when you modify the code
|
yuuji@1
|
107 against the extensional part (over uw-imapd) and that
|
yuuji@1
|
108 modification is a kind of bug-fix, modification should be telled
|
yuuji@1
|
109 to the author of extensional part if you are thinking of
|
yuuji@1
|
110 re-distribute your modification to the public. This limitation
|
yuuji@1
|
111 is to aim to make this extensional package reasonably safe
|
yuuji@1
|
112 always in any time. Please feel free to hack and distribute it!
|
yuuji@1
|
113
|
yuuji@1
|
114
|
yuuji@1
|
115 -- Japanese document follows...
|
yuuji@1
|
116
|
yuuji@1
|
117 【qmail+maildir+APOP用POPサーバ】
|
yuuji@1
|
118
|
yuuji@1
|
119 このimapパッケージは、qmailとIMAPを組み合わせて使うこと *ではな
|
yuuji@1
|
120 く* qmail+maildir+APOPを柔軟に利用しようということを目的として作
|
yuuji@1
|
121 られましたのでIMAPでのテストは十分に行なわれていません。このパッ
|
yuuji@1
|
122 ケージは以下のような方を満足させるでしょう。
|
yuuji@1
|
123
|
yuuji@1
|
124 * qmailを利用している
|
yuuji@1
|
125 * mail spool には安全性の高い Maildir 形式を利用し(させ)ている
|
yuuji@1
|
126 * ~/.qmail-ext ファイルによるqmailの拡張アドレスをよく利用している
|
yuuji@1
|
127 * virtual domain を活用しまくっている
|
yuuji@1
|
128
|
yuuji@1
|
129 上記のようなことができるqmailですが、この機能を使いこなすために
|
yuuji@1
|
130 はUNIXマシンにログインしてローカルファイルを見に行くメイルリーダ
|
yuuji@1
|
131 を使うという方法しかありませんでした。これでは不便なので、上記の
|
yuuji@1
|
132 使い分けを認識するPOPサーバを作ろうということで作成したのがこの
|
yuuji@1
|
133 パッケージです。またPOPのみのサーバ利用が多い昨今、リモートから
|
yuuji@1
|
134 の認証にログインパスワードを使わずにメイル専用パスワードを利用さ
|
yuuji@1
|
135 せる変更も行なっています。これによりPOPもAPOP(POPのパスワード認
|
yuuji@1
|
136 証の暗号化版)も共通のパスワードを利用できるようにしました。また、
|
yuuji@1
|
137 POP の場合は既存ユーザのパスワード管理を考えて、認証時にUNIXパス
|
yuuji@1
|
138 ワードも参照するようにしています。
|
yuuji@1
|
139
|
yuuji@1
|
140 もう一点、POPはパスワードをプレインテキストで流すため、外部ネッ
|
yuuji@1
|
141 トワークからの利用は危険です。そこでPOPの利用を一部のネットワー
|
yuuji@1
|
142 クに限定する機能もつけました(tcp_wrappersやtcpserverが必要)。
|
yuuji@1
|
143
|
yuuji@1
|
144 【インストール】
|
yuuji@1
|
145
|
yuuji@1
|
146 デフォルト設定では
|
yuuji@1
|
147
|
yuuji@1
|
148 * POP3は拒否する
|
yuuji@1
|
149 * ユーザのパスワード設定ファイルは ~/.apop
|
yuuji@1
|
150 * ~/.apop のデコードプログラムは /usr/local/sbin/deapop
|
yuuji@1
|
151
|
yuuji@1
|
152 となっています。APOP認証はサーバ側で必ず元のパスワードを知る必要
|
yuuji@1
|
153 があります。これまでのAPOPサーバは全てのユーザ毎に管理者権限でパ
|
yuuji@1
|
154 スワードを設定する必要がありました。一見安全そうですが、じつはユー
|
yuuji@1
|
155 ザがパスワードを変更する頻度を限りなくゼロに近づけているだけです。
|
yuuji@1
|
156 そもそもAPOPはサーバ側で元パスワードを取得する必要があるので必ず
|
yuuji@1
|
157 復元可能な形で保存されなければなりません。ということはどんなに凝っ
|
yuuji@1
|
158 た方法で保存しても結局は復号できるのですから、複雑な方法で暗号化
|
yuuji@1
|
159 &格納をすることは手間を増やすだけです。いずれにしてもroot権限さ
|
yuuji@1
|
160 えあれば元のパスワードは簡単に読めるわけですから、最初からユーザ
|
yuuji@1
|
161 自身にパスワード管理をさせてしまっても何ら問題は無く、むしろその
|
yuuji@1
|
162 方がパスワードをこまめに変えてくれる可能性が(ちょりっと)上がりま
|
yuuji@1
|
163 す。ただし、誰にでもパスワードが読めては困るので、パスワードファ
|
yuuji@1
|
164 イルを chmod 600 しておかないとメイルの取り込みが出来ないように
|
yuuji@1
|
165 なっています。またどうしても平文でファイルに保存するのだけはいや
|
yuuji@1
|
166 だーという場合のために、APOPパスワードファイルは
|
yuuji@1
|
167 /usr/local/sbin/deapop というコマンドを経由して読み込むようになっ
|
yuuji@1
|
168 ています。これにデコードする処理を書いておきます。もし、とくにエ
|
yuuji@1
|
169 ンコードしなくてもいいという場合は
|
yuuji@1
|
170
|
yuuji@1
|
171 #!/bin/sh
|
yuuji@1
|
172 cat "$@"
|
yuuji@1
|
173
|
yuuji@1
|
174 というシェルスクリプトでも入れておいてください。このパスワードは
|
yuuji@1
|
175 ログインパスワードとは独立しているのでこれで大きな問題は起こらな
|
yuuji@1
|
176 いでしょう(責任は持ちませんが:-)。
|
yuuji@1
|
177
|
yuuji@1
|
178 コンパイル時の変数は上記英文解説の場所を読んでください。
|
yuuji@1
|
179
|
yuuji@1
|
180 【ユーザから見た使い方】
|
yuuji@1
|
181
|
yuuji@1
|
182 まず、~/.qmail に正しくmaildirが設定されていることを確認します。
|
yuuji@1
|
183 maildirをまだ作っていない場合は、
|
yuuji@1
|
184
|
yuuji@1
|
185 % /var/qmail/bin/maildirmake ~/maildir
|
yuuji@1
|
186
|
yuuji@1
|
187 とし、~/.qmail に
|
yuuji@1
|
188
|
yuuji@1
|
189 ./maildir/
|
yuuji@1
|
190
|
yuuji@1
|
191 と書きます。またメイル専用パスワードを ~/.apop に記録します。
|
yuuji@1
|
192 これは apoppasswd コマンドで行ないます。
|
yuuji@1
|
193
|
yuuji@1
|
194 % apoppasswd
|
yuuji@1
|
195
|
yuuji@1
|
196 これで完了です。apoppasswdコマンドは APOPtools/apoppasswd にある
|
yuuji@1
|
197 ので管理者がサイトの環境に手直しした上で一般ユーザのPATHの通る場
|
yuuji@1
|
198 所にインストールして使って下さい。
|
yuuji@1
|
199
|
yuuji@1
|
200 さて、拡張アドレスを使いましょう。ログイン名を login とします。
|
yuuji@1
|
201 login-isogi@hogehoge.co.jp のようなアドレスは ~/.qmail-isogi とい
|
yuuji@1
|
202 うファイルで作成できます。login-isogi 用のmaildirを作ります。
|
yuuji@1
|
203
|
yuuji@1
|
204 % /var/qmail/bin/maildirmake ~/isogidir
|
yuuji@1
|
205
|
yuuji@1
|
206 これを ~/.qmail-isogi に登録します。
|
yuuji@1
|
207
|
yuuji@1
|
208 ./isogidir/
|
yuuji@1
|
209
|
yuuji@1
|
210 最後に login-isogi 用のパスワードを設定します。
|
yuuji@1
|
211
|
yuuji@1
|
212 % apoppasswd -e isogi -c
|
yuuji@1
|
213 Enter APOP Password:
|
yuuji@1
|
214
|
yuuji@1
|
215 とすると、maildirの作成とパスワードの設定が同時に行えます。
|
yuuji@1
|
216 maildirとパスワードの作成が完了したら、利用してるメイルリーダの
|
yuuji@1
|
217 APOP アカウントの「アカウント名」をlogin-isogi にして接続します。
|
yuuji@1
|
218
|
yuuji@1
|
219 【POP before SMTPについて】
|
yuuji@1
|
220
|
yuuji@1
|
221 まず tcp_wrappers を利用している場合について説明します。
|
yuuji@1
|
222 tcpserverを利用する場合も原理は同じなので仕組みだけ理解してくだ
|
yuuji@1
|
223 さい。
|
yuuji@1
|
224
|
yuuji@1
|
225 tcp_wrapperとtcp-envを組み合わせてSMTPサーバを中継用に使うドメイ
|
yuuji@1
|
226 ンを限定して使っていると思います。これの発展形でPOP接続して来た
|
yuuji@1
|
227 ドメインだけにSMTPサーバを使わせる手法のことを "POP before SMTP"
|
yuuji@1
|
228 と呼びます。このパッケージでも APOP 接続をしたドメインに対して
|
yuuji@1
|
229 SMTPの中継許可を与えることが出来ます。本パッケージの ./APOPtools
|
yuuji@1
|
230 ディレクトリにある pop3-* を /usr/local/etc にインストールします。
|
yuuji@1
|
231 3つのファイルの実体は同じです。さらに以下の作業をします。
|
yuuji@1
|
232
|
yuuji@1
|
233 * 原本となる /etc/hosts.allow を /etc/hosts.allow.src にコピー
|
yuuji@1
|
234 * crontab で10分毎に /usr/local/etc/pop3-age を起動させる
|
yuuji@1
|
235
|
yuuji@1
|
236 後者は、大抵のOSの場合 root の crontab に
|
yuuji@1
|
237
|
yuuji@1
|
238 */10 * * * * root /usr/local/etc/pop3-age
|
yuuji@1
|
239
|
yuuji@1
|
240 などと書けば設定できます。pop3-* スクリプトは自身の環境に合わせ
|
yuuji@1
|
241 て適宜修正して下さい。この段階で、tcp_wrapper の定義ファイルは
|
yuuji@1
|
242 /etc/hosts.allow.src が大元で、/etc/hosts.allow はcronによって自
|
yuuji@1
|
243 動生成されるものとなります。hosts.allowをいじっても自動的に上書
|
yuuji@1
|
244 きされてしまうので、設定を変えるときは *必ず hosts.allow.src を
|
yuuji@1
|
245 編集する* ことに注意して下さい。
|
yuuji@1
|
246
|
yuuji@1
|
247 さらにipop3dを起動するときに接続してきたホストが環境変数
|
yuuji@1
|
248 RELAYCLIENT に入るようにしておきます。/etc/inetd.conf でipop3dを
|
yuuji@1
|
249 起動するときに tcp_wrapper 経由となることを確認します。
|
yuuji@1
|
250
|
yuuji@1
|
251 [/etc/inetd.conf]
|
yuuji@1
|
252 pop3 stream tcp nowait root /usr/libexec/tcpd /usr/libexec/ipop3d
|
yuuji@1
|
253
|
yuuji@1
|
254 1999年頃以降のPC-UNIXではinetdにデフォルトでtcpdが組み込まれてい
|
yuuji@1
|
255 ることが多いので、inetd.confにtcpdははさまなくて良いこともありま
|
yuuji@1
|
256 す。続いて /etc/hosts.allow.src で環境変数の設定が起きるようにし
|
yuuji@1
|
257 ます。
|
yuuji@1
|
258
|
yuuji@1
|
259 [/etc/hosts.allow.src]
|
yuuji@1
|
260 ipop3d : all : setenv RELAYCLIENT %h
|
yuuji@1
|
261
|
yuuji@1
|
262 これで POPサービスを利用しに来たクライアントのアドレスが環境変数
|
yuuji@1
|
263 に入ります。
|
yuuji@1
|
264
|
yuuji@1
|
265 tcpserverの場合は、付属の pop3-record スクリプトの後半に例がある
|
yuuji@1
|
266 のでそれを利用してください。
|
yuuji@1
|
267
|
yuuji@1
|
268 なお、tcp_wrappers 用の pop3-age スクリプトは負荷の高いマシンで
|
yuuji@1
|
269 は hosts.allow ファイルが空になる可能性があります。lockすれば多
|
yuuji@1
|
270 少ましになるでしょうが完ぺきではありません。もし、hosts.allowの
|
yuuji@1
|
271 書き換えに失敗するような負荷の高い環境で使う場合は tcp_wrappers
|
yuuji@1
|
272 ではなく、tcpserverでのアクセス制御をすることを強く勧めます。こ
|
yuuji@1
|
273 ちらはロックの必要もなく、安全にアクセス制御ファイルの更新ができ
|
yuuji@1
|
274 ます。
|
yuuji@1
|
275
|
yuuji@1
|
276 【POPアクセス制御について】
|
yuuji@1
|
277
|
yuuji@1
|
278 POP3とAPOPは同じポートを使うので「外部からはAPOPだけ許す」などの
|
yuuji@1
|
279 制御はルータやtcp_wrappersなどだけではできません。このipop3dでは、
|
yuuji@1
|
280 生のPOP3は環境変数INTRANETが定義されているときだけに利用を制限す
|
yuuji@1
|
281 ることができます。tcp_wrappers の例を示します。
|
yuuji@1
|
282
|
yuuji@1
|
283 ipop3d : localhost .localnet.hoge.jp \
|
yuuji@1
|
284 : setenv INTRANET : setenv RELAYCLIENT %h
|
yuuji@1
|
285 ipop3d : all : setenv RELAYCLIENT %h
|
yuuji@1
|
286
|
yuuji@1
|
287 としておけば、ローカルネットワーク内だけで生POP3を使うことができ
|
yuuji@1
|
288 ます。
|
yuuji@1
|
289
|
yuuji@1
|
290 【virtualdomain機能について】
|
yuuji@1
|
291
|
yuuji@1
|
292 qmailでは /var/qmail/control/virtualdomains を使うことで、ユーザ
|
yuuji@1
|
293 が任意のメイルドメインを持つことができます。これを解釈するように
|
yuuji@1
|
294 しました。/var/qmail/control/virtualdomain ファイルで
|
yuuji@1
|
295
|
yuuji@1
|
296 virtual.hoge.co.jp:user1
|
yuuji@1
|
297 dokan.hoge.co.jp:user2-dokan
|
yuuji@1
|
298
|
yuuji@1
|
299 としておくと、XX@virtual.hoge.co.jp は ~user1/.qmail-XX に配送さ
|
yuuji@1
|
300 れ、YY@dokan.hoge.co.jp は ~user2/.qmail-dokan-YY に配送されます。
|
yuuji@1
|
301 それがMaildirスプールを含む場合、本パッケージのIMAP/POPで取り込
|
yuuji@1
|
302 むことができます。デフォルトではこのためのパスワードはそれぞれ
|
yuuji@1
|
303
|
yuuji@1
|
304 ~user1/.apop-XX
|
yuuji@1
|
305 ~user2/.apop-dokan-YY
|
yuuji@1
|
306
|
yuuji@1
|
307 ファイルに保存しておかなければなりません。
|
yuuji@1
|
308
|
yuuji@1
|
309 【Postfixの拡張アドレス対応について】
|
yuuji@1
|
310
|
yuuji@1
|
311 Postfixによる ~/.forward+ext で発生する拡張アドレスは、その配送
|
yuuji@1
|
312 先がMaildirであれば本パッケージでも利用できます。Postfix のデフォ
|
yuuji@1
|
313 ルト設定の
|
yuuji@1
|
314 forward_path = $home/.forward$recipient_delimiter$extension,
|
yuuji@1
|
315 $home/.forward
|
yuuji@1
|
316 recipient_delimiter = +
|
yuuji@1
|
317
|
yuuji@1
|
318 のまま Postfix を動かしている場合はトップレベルのMakefileの
|
yuuji@1
|
319 EXTRACFLAGS に -DPOSTFIX を追加して下さい(-DQMAILも必要です)。こ
|
yuuji@1
|
320 れにより、拡張アドレスを決めるファイルが ".forward" に、拡張部分
|
yuuji@1
|
321 を区切る文字列が "+" になります。いずれかを変更している場合はた
|
yuuji@1
|
322 とえば、
|
yuuji@1
|
323
|
yuuji@1
|
324 -DDOTQMAIL=".postfix" -DXADDR_DELIM="-"
|
yuuji@1
|
325
|
yuuji@1
|
326 のように変更できます。もし、Postfix の .forward+ext を利用する場
|
yuuji@1
|
327 合は周辺ツールの APOPtools/apoppasswd, APOPtools/apopcall.c の対
|
yuuji@1
|
328 応する変数も変更する必要があることに注意して下さい。また、パスワー
|
yuuji@1
|
329 ドファイルも ~/.apop-ext ではなく~ /.apop+ext となることに注意が
|
yuuji@1
|
330 必要です。これらが面倒な場合は、Postfix の設定の方で .qmail-ext
|
yuuji@1
|
331 を見るようにしてしまうのも手です。この場合は
|
yuuji@1
|
332
|
yuuji@1
|
333 recipient_delimiter = -
|
yuuji@1
|
334 forward_path = $home/.forward$recipient_delimiter$extension,
|
yuuji@1
|
335 $home/.qmail$recipient_delimiter$extension,
|
yuuji@1
|
336 $home/.forward
|
yuuji@1
|
337
|
yuuji@1
|
338 とすると ~/.qmail-ext も参照するようになり、デフォルト状態の本パッ
|
yuuji@1
|
339 ケージのまま利用することができるでしょう。
|
yuuji@1
|
340
|
yuuji@1
|
341 【Postfixの POP before SMTPについて】
|
yuuji@1
|
342
|
yuuji@1
|
343 main.cf で たとえば次のようにします。
|
yuuji@1
|
344
|
yuuji@1
|
345 smtpd_recipient_restrictions =
|
yuuji@1
|
346 permit_mynetworks
|
yuuji@1
|
347 check_client_access hash:/etc/postfix/client_access
|
yuuji@1
|
348
|
yuuji@1
|
349 ここで /etc/postfix/client_access は POP before SMTP の許可ホス
|
yuuji@1
|
350 トリストを保持するためのファイル名で、既に使われてはいないものに
|
yuuji@1
|
351 します。配布ディレクトリの APOPtools/pop3-record.postfix は
|
yuuji@1
|
352 /etc/postfix/client_access ファイルをリレー許可判定に使うことを
|
yuuji@1
|
353 前提とした Postfix 用のスクリプトです。
|
yuuji@1
|
354
|
yuuji@1
|
355 【謝辞】
|
yuuji@1
|
356
|
yuuji@1
|
357 安井卓さん(tach@debian.or.jp)にはsyslog関係のパッチを頂きました。
|
yuuji@1
|
358 ここに感謝の意を表します。
|
yuuji@1
|
359
|
yuuji@1
|
360 【免責】
|
yuuji@1
|
361
|
yuuji@1
|
362 IMAPパッケージに本ドキュメントで説明した拡張機能を追加する部分の
|
yuuji@1
|
363 著作権は広瀬雄二[yuuji@gentei.org]が保持します。このプログラムを
|
yuuji@1
|
364 用いて生じた如何なる結果に対しても著作権者は責任を負いません。
|
yuuji@1
|
365
|
yuuji@1
|
366 2009/9/14 yuuji@gentei.org
|
yuuji@4
|
367 //
|
yuuji@4
|
368 // qmail+maildir+apop+virtualdomain+POPbeforeSMTP extensions to uw-imapd
|
yuuji@4
|
369 // Japanese Document below
|
yuuji@4
|
370 //
|
yuuji@4
|
371
|
yuuji@4
|
372 [Comentary]
|
yuuji@4
|
373 This patch kit enables uw-imapd to handle;
|
yuuji@4
|
374 * maildir
|
yuuji@4
|
375 * qmail's extended mail addresses of user (~/.qmail-ext)
|
yuuji@4
|
376 * Postfix's extended mail addresses of user (~/.forward+ext)
|
yuuji@4
|
377 * Accesses to extended mail addresses (authenticated with ~/.apop-ext)
|
yuuji@4
|
378 * Virtual domain user switching
|
yuuji@4
|
379
|
yuuji@4
|
380 Because this package is produced those who want to avail all features above,
|
yuuji@4
|
381 we recommend you to turn on all switches for every extension.
|
yuuji@4
|
382 Please let me recommend you not to use plain POP3 with this package.
|
yuuji@4
|
383 If you want to cling onto POP3, please use qmail-pop3d which comes with
|
yuuji@4
|
384 qmail distribution.
|
yuuji@4
|
385
|
yuuji@4
|
386 [Configuration]
|
yuuji@4
|
387 You can select these compilation switches.
|
yuuji@4
|
388
|
yuuji@4
|
389 Where: ./Makefile
|
yuuji@4
|
390 Switch: QMAIL
|
yuuji@4
|
391 What: Support maildir and user's address extension.
|
yuuji@4
|
392 This switch is requisite.
|
yuuji@4
|
393
|
yuuji@4
|
394 Where: ./Makefile
|
yuuji@4
|
395 Switch: INET6
|
yuuji@4
|
396 What: Support IPv6 address
|
yuuji@4
|
397 WORKS fine only via ucspi-tcp+ipv6patch
|
yuuji@4
|
398 If you are using tcpserver-ipv6, set this.
|
yuuji@4
|
399
|
yuuji@4
|
400 Where: ./Makefile
|
yuuji@4
|
401 Switch: POSTFIX
|
yuuji@4
|
402 What: Defaults user address file to ~/.forward and
|
yuuji@4
|
403 extension delimiter to "+".
|
yuuji@4
|
404 Setting this flag on is equavalent to declare
|
yuuji@4
|
405 -DQMAIL -DDOTQMAIL=".forward" -DXADDR_DELIM="+"
|
yuuji@4
|
406 in ./Makefile.
|
yuuji@4
|
407
|
yuuji@4
|
408 Where: ./Makefile
|
yuuji@4
|
409 Switch: RESTRICT_POP
|
yuuji@4
|
410 What: Restrict POP3 access from unsafe network. Allow
|
yuuji@4
|
411 normal pop3 access only when environment variable
|
yuuji@4
|
412 INTRANET is set. This can be controled by tcpd with
|
yuuji@4
|
413 /etc/hosts.allow.
|
yuuji@4
|
414
|
yuuji@4
|
415 Where: ./src/osdep/unix/Makefile
|
yuuji@4
|
416 Switch: DEFAULTMAILDIR (quoted string)
|
yuuji@4
|
417 What: Default users' maildir directory when a user does not
|
yuuji@4
|
418 have ~/.qmail file.
|
yuuji@4
|
419 The default value is null. If null, the default value in
|
yuuji@4
|
420 osdep/unix/maildir.c("Maildir") will be taken.
|
yuuji@4
|
421
|
yuuji@4
|
422 Where: ./src/osdep/unix/Makefile
|
yuuji@4
|
423 Switch: QMAILCONTROL (quoted string)
|
yuuji@4
|
424 What: Default qmail/control directory.
|
yuuji@4
|
425 The default value is "/var/qmail/control"
|
yuuji@4
|
426
|
yuuji@4
|
427 Where: ./src/osdep/unix/Makefile
|
yuuji@4
|
428 Switch: USERAPOPFILE (string)
|
yuuji@4
|
429 What: User's APOP password file relative to their home dir.
|
yuuji@4
|
430 ".apop" is set by default.
|
yuuji@4
|
431 One of recommended values is "Mail/.apop".
|
yuuji@4
|
432 NOTE THAT USERAPOPFILE should NOT be readable by others.
|
yuuji@4
|
433 Do chmod 600 USERAPOPFILE.
|
yuuji@4
|
434
|
yuuji@4
|
435 Where: ./src/osdep/unix/Makefile
|
yuuji@4
|
436 Switch: APOPOPEN (string)
|
yuuji@4
|
437 What: Command name to decode APOP password from USERAPOPFILE
|
yuuji@4
|
438 "/usr/local/sbin/deapop" is set by default.
|
yuuji@4
|
439 NOTE THAT you should install deapop command too.
|
yuuji@4
|
440 If you don't want to think about this,
|
yuuji@4
|
441 install the following shell script into /usr/local/sbin/deapop
|
yuuji@4
|
442
|
yuuji@4
|
443 #!/bin/sh
|
yuuji@4
|
444 cat "$@"
|
yuuji@4
|
445
|
yuuji@4
|
446 Where: ./src/osdep/unix/Makefile
|
yuuji@4
|
447 Switch: POPBEFORESMTP
|
yuuji@4
|
448 What: Turn on `POP before SMTP' feature.
|
yuuji@4
|
449 The next variable POP3RECORDER takes effect when
|
yuuji@4
|
450 this variable is defined.
|
yuuji@4
|
451
|
yuuji@4
|
452 Where: ./src/osdep/unix/Makefile
|
yuuji@4
|
453 Switch: POP3RECORDER (string)
|
yuuji@4
|
454 What: Command name to achieve `POP before SMTP'.
|
yuuji@4
|
455 "/usr/local/etc/pop3-record" is set by default.
|
yuuji@4
|
456 This recorder program should take one argument of
|
yuuji@4
|
457 fully qualified hostname (or IP address) where the POP
|
yuuji@4
|
458 authentication is passed to.
|
yuuji@4
|
459
|
yuuji@4
|
460 [NO WARRANTY]
|
yuuji@4
|
461
|
yuuji@4
|
462 This package comes from absolutely NO WARRANTY. The author of
|
yuuji@4
|
463 this package is not responsible for any result caused by using
|
yuuji@4
|
464 this software. The copyright of the extension part is held by
|
yuuji@4
|
465 HIROSE, Yuuji [yuuji@gentei.org].
|
yuuji@4
|
466
|
yuuji@4
|
467 [COPYING]
|
yuuji@4
|
468
|
yuuji@4
|
469 You can re-distribute this package without any cost except some
|
yuuji@4
|
470 practical cost(magnetical media or so). Although this package
|
yuuji@4
|
471 basically obeys the license terms in a file CPYRIGHT in this
|
yuuji@4
|
472 directory, there is one exception; when you modify the code
|
yuuji@4
|
473 against the extensional part (over uw-imapd) and that
|
yuuji@4
|
474 modification is a kind of bug-fix, modification should be telled
|
yuuji@4
|
475 to the author of extensional part if you are thinking of
|
yuuji@4
|
476 re-distribute your modification to the public. This limitation
|
yuuji@4
|
477 is to aim to make this extensional package reasonably safe
|
yuuji@4
|
478 always in any time. Please feel free to hack and distribute it!
|
yuuji@4
|
479
|
yuuji@4
|
480
|
yuuji@4
|
481 -- Japanese document follows...
|
yuuji@4
|
482
|
yuuji@4
|
483 【qmail+maildir+APOP用POPサーバ】
|
yuuji@4
|
484
|
yuuji@4
|
485 このimapパッケージは、qmailとIMAPを組み合わせて使うこと *ではな
|
yuuji@4
|
486 く* qmail+maildir+APOPを柔軟に利用しようということを目的として作
|
yuuji@4
|
487 られましたのでIMAPでのテストは十分に行なわれていません。このパッ
|
yuuji@4
|
488 ケージは以下のような方を満足させるでしょう。
|
yuuji@4
|
489
|
yuuji@4
|
490 * qmailを利用している
|
yuuji@4
|
491 * mail spool には安全性の高い Maildir 形式を利用し(させ)ている
|
yuuji@4
|
492 * ~/.qmail-ext ファイルによるqmailの拡張アドレスをよく利用している
|
yuuji@4
|
493 * virtual domain を活用しまくっている
|
yuuji@4
|
494
|
yuuji@4
|
495 上記のようなことができるqmailですが、この機能を使いこなすために
|
yuuji@4
|
496 はUNIXマシンにログインしてローカルファイルを見に行くメイルリーダ
|
yuuji@4
|
497 を使うという方法しかありませんでした。これでは不便なので、上記の
|
yuuji@4
|
498 使い分けを認識するPOPサーバを作ろうということで作成したのがこの
|
yuuji@4
|
499 パッケージです。またPOPのみのサーバ利用が多い昨今、リモートから
|
yuuji@4
|
500 の認証にログインパスワードを使わずにメイル専用パスワードを利用さ
|
yuuji@4
|
501 せる変更も行なっています。これによりPOPもAPOP(POPのパスワード認
|
yuuji@4
|
502 証の暗号化版)も共通のパスワードを利用できるようにしました。また、
|
yuuji@4
|
503 POP の場合は既存ユーザのパスワード管理を考えて、認証時にUNIXパス
|
yuuji@4
|
504 ワードも参照するようにしています。
|
yuuji@4
|
505
|
yuuji@4
|
506 もう一点、POPはパスワードをプレインテキストで流すため、外部ネッ
|
yuuji@4
|
507 トワークからの利用は危険です。そこでPOPの利用を一部のネットワー
|
yuuji@4
|
508 クに限定する機能もつけました(tcp_wrappersやtcpserverが必要)。
|
yuuji@4
|
509
|
yuuji@4
|
510 【インストール】
|
yuuji@4
|
511
|
yuuji@4
|
512 デフォルト設定では
|
yuuji@4
|
513
|
yuuji@4
|
514 * POP3は拒否する
|
yuuji@4
|
515 * ユーザのパスワード設定ファイルは ~/.apop
|
yuuji@4
|
516 * ~/.apop のデコードプログラムは /usr/local/sbin/deapop
|
yuuji@4
|
517
|
yuuji@4
|
518 となっています。APOP認証はサーバ側で必ず元のパスワードを知る必要
|
yuuji@4
|
519 があります。これまでのAPOPサーバは全てのユーザ毎に管理者権限でパ
|
yuuji@4
|
520 スワードを設定する必要がありました。一見安全そうですが、じつはユー
|
yuuji@4
|
521 ザがパスワードを変更する頻度を限りなくゼロに近づけているだけです。
|
yuuji@4
|
522 そもそもAPOPはサーバ側で元パスワードを取得する必要があるので必ず
|
yuuji@4
|
523 復元可能な形で保存されなければなりません。ということはどんなに凝っ
|
yuuji@4
|
524 た方法で保存しても結局は復号できるのですから、複雑な方法で暗号化
|
yuuji@4
|
525 &格納をすることは手間を増やすだけです。いずれにしてもroot権限さ
|
yuuji@4
|
526 えあれば元のパスワードは簡単に読めるわけですから、最初からユーザ
|
yuuji@4
|
527 自身にパスワード管理をさせてしまっても何ら問題は無く、むしろその
|
yuuji@4
|
528 方がパスワードをこまめに変えてくれる可能性が(ちょりっと)上がりま
|
yuuji@4
|
529 す。ただし、誰にでもパスワードが読めては困るので、パスワードファ
|
yuuji@4
|
530 イルを chmod 600 しておかないとメイルの取り込みが出来ないように
|
yuuji@4
|
531 なっています。またどうしても平文でファイルに保存するのだけはいや
|
yuuji@4
|
532 だーという場合のために、APOPパスワードファイルは
|
yuuji@4
|
533 /usr/local/sbin/deapop というコマンドを経由して読み込むようになっ
|
yuuji@4
|
534 ています。これにデコードする処理を書いておきます。もし、とくにエ
|
yuuji@4
|
535 ンコードしなくてもいいという場合は
|
yuuji@4
|
536
|
yuuji@4
|
537 #!/bin/sh
|
yuuji@4
|
538 cat "$@"
|
yuuji@4
|
539
|
yuuji@4
|
540 というシェルスクリプトでも入れておいてください。このパスワードは
|
yuuji@4
|
541 ログインパスワードとは独立しているのでこれで大きな問題は起こらな
|
yuuji@4
|
542 いでしょう(責任は持ちませんが:-)。
|
yuuji@4
|
543
|
yuuji@4
|
544 コンパイル時の変数は上記英文解説の場所を読んでください。
|
yuuji@4
|
545
|
yuuji@4
|
546 【ユーザから見た使い方】
|
yuuji@4
|
547
|
yuuji@4
|
548 まず、~/.qmail に正しくmaildirが設定されていることを確認します。
|
yuuji@4
|
549 maildirをまだ作っていない場合は、
|
yuuji@4
|
550
|
yuuji@4
|
551 % /var/qmail/bin/maildirmake ~/maildir
|
yuuji@4
|
552
|
yuuji@4
|
553 とし、~/.qmail に
|
yuuji@4
|
554
|
yuuji@4
|
555 ./maildir/
|
yuuji@4
|
556
|
yuuji@4
|
557 と書きます。またメイル専用パスワードを ~/.apop に記録します。
|
yuuji@4
|
558 これは apoppasswd コマンドで行ないます。
|
yuuji@4
|
559
|
yuuji@4
|
560 % apoppasswd
|
yuuji@4
|
561
|
yuuji@4
|
562 これで完了です。apoppasswdコマンドは APOPtools/apoppasswd にある
|
yuuji@4
|
563 ので管理者がサイトの環境に手直しした上で一般ユーザのPATHの通る場
|
yuuji@4
|
564 所にインストールして使って下さい。
|
yuuji@4
|
565
|
yuuji@4
|
566 さて、拡張アドレスを使いましょう。ログイン名を login とします。
|
yuuji@4
|
567 login-isogi@hogehoge.co.jp のようなアドレスは ~/.qmail-isogi とい
|
yuuji@4
|
568 うファイルで作成できます。login-isogi 用のmaildirを作ります。
|
yuuji@4
|
569
|
yuuji@4
|
570 % /var/qmail/bin/maildirmake ~/isogidir
|
yuuji@4
|
571
|
yuuji@4
|
572 これを ~/.qmail-isogi に登録します。
|
yuuji@4
|
573
|
yuuji@4
|
574 ./isogidir/
|
yuuji@4
|
575
|
yuuji@4
|
576 最後に login-isogi 用のパスワードを設定します。
|
yuuji@4
|
577
|
yuuji@4
|
578 % apoppasswd -e isogi -c
|
yuuji@4
|
579 Enter APOP Password:
|
yuuji@4
|
580
|
yuuji@4
|
581 とすると、maildirの作成とパスワードの設定が同時に行えます。
|
yuuji@4
|
582 maildirとパスワードの作成が完了したら、利用してるメイルリーダの
|
yuuji@4
|
583 APOP アカウントの「アカウント名」をlogin-isogi にして接続します。
|
yuuji@4
|
584
|
yuuji@4
|
585 【POP before SMTPについて】
|
yuuji@4
|
586
|
yuuji@4
|
587 まず tcp_wrappers を利用している場合について説明します。
|
yuuji@4
|
588 tcpserverを利用する場合も原理は同じなので仕組みだけ理解してくだ
|
yuuji@4
|
589 さい。
|
yuuji@4
|
590
|
yuuji@4
|
591 tcp_wrapperとtcp-envを組み合わせてSMTPサーバを中継用に使うドメイ
|
yuuji@4
|
592 ンを限定して使っていると思います。これの発展形でPOP接続して来た
|
yuuji@4
|
593 ドメインだけにSMTPサーバを使わせる手法のことを "POP before SMTP"
|
yuuji@4
|
594 と呼びます。このパッケージでも APOP 接続をしたドメインに対して
|
yuuji@4
|
595 SMTPの中継許可を与えることが出来ます。本パッケージの ./APOPtools
|
yuuji@4
|
596 ディレクトリにある pop3-* を /usr/local/etc にインストールします。
|
yuuji@4
|
597 3つのファイルの実体は同じです。さらに以下の作業をします。
|
yuuji@4
|
598
|
yuuji@4
|
599 * 原本となる /etc/hosts.allow を /etc/hosts.allow.src にコピー
|
yuuji@4
|
600 * crontab で10分毎に /usr/local/etc/pop3-age を起動させる
|
yuuji@4
|
601
|
yuuji@4
|
602 後者は、大抵のOSの場合 root の crontab に
|
yuuji@4
|
603
|
yuuji@4
|
604 */10 * * * * root /usr/local/etc/pop3-age
|
yuuji@4
|
605
|
yuuji@4
|
606 などと書けば設定できます。pop3-* スクリプトは自身の環境に合わせ
|
yuuji@4
|
607 て適宜修正して下さい。この段階で、tcp_wrapper の定義ファイルは
|
yuuji@4
|
608 /etc/hosts.allow.src が大元で、/etc/hosts.allow はcronによって自
|
yuuji@4
|
609 動生成されるものとなります。hosts.allowをいじっても自動的に上書
|
yuuji@4
|
610 きされてしまうので、設定を変えるときは *必ず hosts.allow.src を
|
yuuji@4
|
611 編集する* ことに注意して下さい。
|
yuuji@4
|
612
|
yuuji@4
|
613 さらにipop3dを起動するときに接続してきたホストが環境変数
|
yuuji@4
|
614 RELAYCLIENT に入るようにしておきます。/etc/inetd.conf でipop3dを
|
yuuji@4
|
615 起動するときに tcp_wrapper 経由となることを確認します。
|
yuuji@4
|
616
|
yuuji@4
|
617 [/etc/inetd.conf]
|
yuuji@4
|
618 pop3 stream tcp nowait root /usr/libexec/tcpd /usr/libexec/ipop3d
|
yuuji@4
|
619
|
yuuji@4
|
620 1999年頃以降のPC-UNIXではinetdにデフォルトでtcpdが組み込まれてい
|
yuuji@4
|
621 ることが多いので、inetd.confにtcpdははさまなくて良いこともありま
|
yuuji@4
|
622 す。続いて /etc/hosts.allow.src で環境変数の設定が起きるようにし
|
yuuji@4
|
623 ます。
|
yuuji@4
|
624
|
yuuji@4
|
625 [/etc/hosts.allow.src]
|
yuuji@4
|
626 ipop3d : all : setenv RELAYCLIENT %h
|
yuuji@4
|
627
|
yuuji@4
|
628 これで POPサービスを利用しに来たクライアントのアドレスが環境変数
|
yuuji@4
|
629 に入ります。
|
yuuji@4
|
630
|
yuuji@4
|
631 tcpserverの場合は、付属の pop3-record スクリプトの後半に例がある
|
yuuji@4
|
632 のでそれを利用してください。
|
yuuji@4
|
633
|
yuuji@4
|
634 なお、tcp_wrappers 用の pop3-age スクリプトは負荷の高いマシンで
|
yuuji@4
|
635 は hosts.allow ファイルが空になる可能性があります。lockすれば多
|
yuuji@4
|
636 少ましになるでしょうが完ぺきではありません。もし、hosts.allowの
|
yuuji@4
|
637 書き換えに失敗するような負荷の高い環境で使う場合は tcp_wrappers
|
yuuji@4
|
638 ではなく、tcpserverでのアクセス制御をすることを強く勧めます。こ
|
yuuji@4
|
639 ちらはロックの必要もなく、安全にアクセス制御ファイルの更新ができ
|
yuuji@4
|
640 ます。
|
yuuji@4
|
641
|
yuuji@4
|
642 【POPアクセス制御について】
|
yuuji@4
|
643
|
yuuji@4
|
644 POP3とAPOPは同じポートを使うので「外部からはAPOPだけ許す」などの
|
yuuji@4
|
645 制御はルータやtcp_wrappersなどだけではできません。このipop3dでは、
|
yuuji@4
|
646 生のPOP3は環境変数INTRANETが定義されているときだけに利用を制限す
|
yuuji@4
|
647 ることができます。tcp_wrappers の例を示します。
|
yuuji@4
|
648
|
yuuji@4
|
649 ipop3d : localhost .localnet.hoge.jp \
|
yuuji@4
|
650 : setenv INTRANET : setenv RELAYCLIENT %h
|
yuuji@4
|
651 ipop3d : all : setenv RELAYCLIENT %h
|
yuuji@4
|
652
|
yuuji@4
|
653 としておけば、ローカルネットワーク内だけで生POP3を使うことができ
|
yuuji@4
|
654 ます。
|
yuuji@4
|
655
|
yuuji@4
|
656 【virtualdomain機能について】
|
yuuji@4
|
657
|
yuuji@4
|
658 qmailでは /var/qmail/control/virtualdomains を使うことで、ユーザ
|
yuuji@4
|
659 が任意のメイルドメインを持つことができます。これを解釈するように
|
yuuji@4
|
660 しました。/var/qmail/control/virtualdomain ファイルで
|
yuuji@4
|
661
|
yuuji@4
|
662 virtual.hoge.co.jp:user1
|
yuuji@4
|
663 dokan.hoge.co.jp:user2-dokan
|
yuuji@4
|
664
|
yuuji@4
|
665 としておくと、XX@virtual.hoge.co.jp は ~user1/.qmail-XX に配送さ
|
yuuji@4
|
666 れ、YY@dokan.hoge.co.jp は ~user2/.qmail-dokan-YY に配送されます。
|
yuuji@4
|
667 それがMaildirスプールを含む場合、本パッケージのIMAP/POPで取り込
|
yuuji@4
|
668 むことができます。デフォルトではこのためのパスワードはそれぞれ
|
yuuji@4
|
669
|
yuuji@4
|
670 ~user1/.apop-XX
|
yuuji@4
|
671 ~user2/.apop-dokan-YY
|
yuuji@4
|
672
|
yuuji@4
|
673 ファイルに保存しておかなければなりません。
|
yuuji@4
|
674
|
yuuji@4
|
675 【Postfixの拡張アドレス対応について】
|
yuuji@4
|
676
|
yuuji@4
|
677 Postfixによる ~/.forward+ext で発生する拡張アドレスは、その配送
|
yuuji@4
|
678 先がMaildirであれば本パッケージでも利用できます。Postfix のデフォ
|
yuuji@4
|
679 ルト設定の
|
yuuji@4
|
680 forward_path = $home/.forward$recipient_delimiter$extension,
|
yuuji@4
|
681 $home/.forward
|
yuuji@4
|
682 recipient_delimiter = +
|
yuuji@4
|
683
|
yuuji@4
|
684 のまま Postfix を動かしている場合はトップレベルのMakefileの
|
yuuji@4
|
685 EXTRACFLAGS に -DPOSTFIX を追加して下さい(-DQMAILも必要です)。こ
|
yuuji@4
|
686 れにより、拡張アドレスを決めるファイルが ".forward" に、拡張部分
|
yuuji@4
|
687 を区切る文字列が "+" になります。いずれかを変更している場合はた
|
yuuji@4
|
688 とえば、
|
yuuji@4
|
689
|
yuuji@4
|
690 -DDOTQMAIL=".postfix" -DXADDR_DELIM="-"
|
yuuji@4
|
691
|
yuuji@4
|
692 のように変更できます。もし、Postfix の .forward+ext を利用する場
|
yuuji@4
|
693 合は周辺ツールの APOPtools/apoppasswd, APOPtools/apopcall.c の対
|
yuuji@4
|
694 応する変数も変更する必要があることに注意して下さい。また、パスワー
|
yuuji@4
|
695 ドファイルも ~/.apop-ext ではなく~ /.apop+ext となることに注意が
|
yuuji@4
|
696 必要です。これらが面倒な場合は、Postfix の設定の方で .qmail-ext
|
yuuji@4
|
697 を見るようにしてしまうのも手です。この場合は
|
yuuji@4
|
698
|
yuuji@4
|
699 recipient_delimiter = -
|
yuuji@4
|
700 forward_path = $home/.forward$recipient_delimiter$extension,
|
yuuji@4
|
701 $home/.qmail$recipient_delimiter$extension,
|
yuuji@4
|
702 $home/.forward
|
yuuji@4
|
703
|
yuuji@4
|
704 とすると ~/.qmail-ext も参照するようになり、デフォルト状態の本パッ
|
yuuji@4
|
705 ケージのまま利用することができるでしょう。
|
yuuji@4
|
706
|
yuuji@4
|
707 【Postfixの POP before SMTPについて】
|
yuuji@4
|
708
|
yuuji@4
|
709 main.cf で たとえば次のようにします。
|
yuuji@4
|
710
|
yuuji@4
|
711 smtpd_recipient_restrictions =
|
yuuji@4
|
712 permit_mynetworks
|
yuuji@4
|
713 check_client_access hash:/etc/postfix/client_access
|
yuuji@4
|
714
|
yuuji@4
|
715 ここで /etc/postfix/client_access は POP before SMTP の許可ホス
|
yuuji@4
|
716 トリストを保持するためのファイル名で、既に使われてはいないものに
|
yuuji@4
|
717 します。配布ディレクトリの APOPtools/pop3-record.postfix は
|
yuuji@4
|
718 /etc/postfix/client_access ファイルをリレー許可判定に使うことを
|
yuuji@4
|
719 前提とした Postfix 用のスクリプトです。
|
yuuji@4
|
720
|
yuuji@4
|
721 【謝辞】
|
yuuji@4
|
722
|
yuuji@4
|
723 安井卓さん(tach@debian.or.jp)にはsyslog関係のパッチを頂きました。
|
yuuji@4
|
724 ここに感謝の意を表します。
|
yuuji@4
|
725
|
yuuji@4
|
726 【免責】
|
yuuji@4
|
727
|
yuuji@4
|
728 IMAPパッケージに本ドキュメントで説明した拡張機能を追加する部分の
|
yuuji@4
|
729 著作権は広瀬雄二[yuuji@gentei.org]が保持します。このプログラムを
|
yuuji@4
|
730 用いて生じた如何なる結果に対しても著作権者は責任を負いません。
|
yuuji@4
|
731
|
yuuji@4
|
732 2009/9/14 yuuji@gentei.org
|