[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[postfix-jp:923] Re: SMTP-AUTH ではまっています。
- Subject: [postfix-jp:923] Re: SMTP-AUTH ではまっています。
- From: Takashi SUGIMOTO <taka@xxxxxxxxxxx>
- Date: Thu, 19 Jul 2001 06:24:26 +0900
こんにちは。すぎもとです。
jit00806 さんが Wed, 18 Jul 2001 18:34:04 +0900 ころに書いた
"[postfix-jp:920] SMTP-AUTH ではまっています。"
<3B55580C.4040107@xxxxxxxxxxxxxxxx> のメールへの返信です。
> 私も、Postfix+cyrus-sasl+cyrus-imapd でメールシステムを構築していて
> SMTP-AUTHではまっています。
>
> postfix-20010228-pl03 を以下のように make したのですが、
Cyrus-SASL と Cyrus-IMAPD のバージョン、および
メイルサーバを構築したシステムは何でしょうか?
> 250-AUTH LOGIN PLAIN DIGEST-MD5 CRAM-MD5
> が出てきません。どこか勘違いしているのでしょうか?
:
> 250-AUTH LOGIN PLAIN
を見る限り、BerkeleyDB のバージョン問題だと思います。
[postfix-jp:905] で書きましたが、 Linux glibc 2.1 環境では
Cyrus-IMAPD 2.x をインストールしようと思うと
BerkeleyDB 2 と 3 を共存させる必要があります。
Cyrus-SASL + Cyrus-IMAPD (2.x) は db3 でリンクするのに対して、
glibc 2.1 が悪さをして Postfix が db2 になってしまうようです。
# ldd の出力は db3 にリンクしているんだけどなぁ...
Postfix (db2) が sasldb (db3) を見に行こうとすると、
松本さんが試したように LOGIN, PLAIN しか現れず、
しかも PLAIN, LOGIN で認証を試みても失敗します。
glibc 2.2 では BerkeleyDB を別個にインストールする必要があるため、
複数のバージョンを同居させなくて済む、らしいです。(未確認)
結局 Cyrus-IMAPD Ver.2 を利用することを優先し、
SMTP-AUTH は利用していません。
# せっかく TLS パッチも当てたのに SMTP-AUTH が使えないと意味がない。:-(
--
すぎもとたかし <muneharu@xxxxxxxx>
せっかくなので、 Postfix + Cyrus-IMAPD のインストール記録。
(Linux Kernel 2.2.14, glibc 2.1)
細かい設定などはそれぞれのドキュメントを読んでください。
日本語訳などに頼らず、まずは原文を読むべきです。
--[BerkeleyDB 3.2.9]--------------------------------------------
% cd build_unix/
% ../dist/configure --enable-compat185 --enable-cxx \
--enable-dynamic --enable-shared
% make
% su
# make install
# vi /etc/ld.so.conf
/usr/local/BerkeleyDB.3.2/lib
# /sbin/ldconfig
--[Cyrus-SASL 1.5.24]-------------------------------------------
% CPPFLAGS='-I/usr/local/BerkeleyDB.3.2/include' \
LDFLAGS='-L/usr/local/BerkeleyDB.3.2/lib' \
./configure --with-dblib=berkeley
% make
% make check
% su
# make install
# ln -s /usr/local/lib/sasl /usr/lib/sasl
# vi /etc/ld.so.conf
/usr/local/lib
# /sbin/ldconfig
--[Cyrus-IMAPD 2.0.14]------------------------------------------
% CPPFLAGS='-I/usr/local/BerkeleyDB.3.2/include' \
LDFLAGS='-L/usr/local/BerkeleyDB.3.2/lib -L/usr/local/lib -L/usr/lib' \
./configure --with-openssl=/usr/include/openssl
% make clean
% make depend
% make
% su
# make install
# touch /etc/imapd.conf
# vi /etc/imapd.conf
configdirectory: /var/imap
partition-default: /var/spool/imap
admins: cyrus
allowanonymouslogin: no
autocreatequota: 0
plaintextloginpause: 3
allowplaintext: yes
sasl_pwcheck_method: sasldb
sievedir: /var/imap/sieve
# vi /etc/syslog.conf
local6.debug /var/log/imapd.log
auth.debug /var/log/auth.log
# touch /var/log/imapd.log /var/log/auth.log
# chmod go-r /var/log/imapd.log /var/log/auth.log
# /etc/rc.d/init.d/syslog restart
# mkdir /var/imap
# mkdir /var/spool/imap
# chown cyrus:mail /var/imap /var/spool/imap
# chmod 750 /var/imap /var/spool/imap
# cd /usr/local/src/cyrus-imapd-2.0.14
# su cyrus
cyrus% tools/mkimap
# chattr +S /var/imap /var/imap/user /var/imap/quota /var/imap/user/* \
/var/imap/quota/* /var/spool/imap /var/spool/imap/*
※Linux ext2 ファイルシステムでは信頼性を上げるために
同期書き込みをするように設定します。
# cd /usr/local/src/cyrus-imapd-2.0.14/master/conf
# cp normal.conf /etc/cyrus.conf
# vi /etc/services
imap4 143/tcp imap
imaps 993/tcp simap
pop3 110/tcp
pop3s 995/tcp spop3
imsp 406/tcp
acap 674/tcp
sieve 2000/tcp
lmtp 2003/tcp
fud 4301/udp
# ln -s /usr/local/lib/perl5/site_perl/5.005/i386-linux/Cyrus/ \
/usr/lib/perl5/site_perl/5.005/i386-linux/
# ln -s /usr/local/lib/perl5/site_perl/5.005/i386-linux/auto/Cyrus/ \
/usr/lib/perl5/site_perl/5.005/i386-linux/auto/
# ln -s /usr/local/lib/perl5/man/man3/* /usr/lib/perl5/man/man3/
※Cyrus-IMAPD が Perl の場所を自動で認識して
くれていないようなので symbolic link で解決しました。
# /usr/local/sbin/saslpasswd -c -u foo.bar.com cyrus
# chown cyrus:mail /etc/sasldb
# su cyrus
cyrus% /usr/local/sbin/saslpasswd -c -u foo.bar.com username
※sasldb の所有権はよく考えて設定する必要があります。
postfix に持たせてはいけません。
# su cyrus
cyrus% cyradm localhost
cyradm> createmailbox user.username
cyradm> quit
※imap メイルボックスを作る。
(このあと TLS の鍵を作ったりしてているけど省略)
--[Postfix 20010228-pl03 + pfixtls-0.7.3]-----------------------
% patch -p0 < pfixtls-0.7.3-20010228-pl03-0.9.6a/pfixtls.diff
% cd postfix-20010228-pl03
% make clean
% make tidy
% make makefiles \
CCARGS="-DHAS_SSL -I/usr/include/openssl -I/usr/local/include -I/usr/include" \
AUXLIBS="-L/usr/local/lib -L/usr/lib -lssl -lcrypto"
※(残念ながら) SMTP-AUTH は使っていません
# vi /etc/group
mail:x:12:mail,postfix
maildrop:x:12346:
# make install
※今回は Cyrus-IMAPD なのであまり関係ないのですが、
UNIX 共有メイルスプールを利用するならば、インストール時
setgid: [no]
に対して "maildrop" とすべきです。
c.f.
http://www.jp.qmail.org/
http://www.jp.qmail.org/postfix/
# vi /etc/postfix/master.cf
cyrus unix - n n - - pipe
flags=R user=cyrus argv=/usr/cyrus/bin/deliver -m ${extension} ${user}
tlsmgr fifo - - n 300 1 tlsmgr
smtps inet n - y - - smtpd
-o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes
submission inet n - y - - smtpd
-o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes
# vi /etc/postfix/main.cf
mailbox_transport = cyrus
# vi /etc/services
smtps 465/tcp ssmtp
submission 587/tcp
# vi /usr/local/lib/sasl/smtpd.conf
pwcheck_method: sasldb
# ln -s /etc/postfix/aliases /etc/aliases
# ln -s /etc/postfix/aliases.db /etc/aliases.db
# vi /etc/aliases
cyrus: root
root: username
(このあと imapd と同様に TLS の設定をしているけど省略)
----------------------------------------------------------------
- Follow-Ups
-
- [postfix-jp:924] SMTP-AUTH ではまっています。, jit00806
- References
-
- [postfix-jp:920] SMTP-AUTH ではまっています。, jit00806
[検索ページ]
[Postfix-JP ML Home]