カテゴリー
FreeBSD Software

FreeBSD (imap-uw 2006j) (続)

昨日の件、portsがまた更新されてました。


cclient-2006j,1   < needs updating (port has 2006j_1,1)
imap-uw-2006j_2,1 < needs updating (port has 2006j_3,1)

試しにportsinstallしてみたら問題なく動きました。んーきっとどこかに不具合があったのでしょう。

カテゴリー
FreeBSD Software

FreeBSD (imap-uw 2006j)

えらい目に遭いました。

pkg_versionがアップデートのお知らせを毎日送って来るようにしているのですが、以下のportsのアップデートをしてしまいました。

cclient-2004g_1,1 < needs updating (port has 2006j,1)
imap-uw-2004g_1,1 < needs updating (port has 2006j_2,1)

そうすると今まで使えていたimapもipop3dも機能しなくなっちゃいました。多分、認証関係の設定が変わったんだと思います。pop3は apopでcram-md5認証、imapもcram-md5認証なのですがそのままインストールしても駄目みたい。色々調べてみたのですがいまいち良く 分からんので、当座復活させるために本家ftpサイトから古いimap-uw 2004gを落としてきて手動でインストールし直しました。こちらのバージョンは、

# make bsf

でできたpop2d,pop3dとimapdを/usr/local/libexecにコピーして問題なく復活しました。

カテゴリー
FreeBSD Software

FreeBSD (imap-uwのSSL化)

/usr/ports/mail/cclient

/usr/ports/mail/imap-uw

/usr/local/etc/pkgtools.conf に WITH_SSL_AND_PLAINTEXT=yes を追記。

# cd /usr/ports/mail/cclient
# portupgrade -f
# cd /usr/ports/mail/imap-uw
# portupgrade -f
# make cert (全部エンターで済ませる)

/usr/local/certs に imapd.pem ipop3d.pemが出来ていればOK。
あとは /etc/inetd.conf をいじる。

pop3s   stream  tcp     nowait  root    /usr/local/libexec/ipop3d       ipop3d
imaps   stream  tcp     nowait  root    /usr/local/libexec/lmapd        imapd

を追記して inetd を kill -HUP する。

参考URL: http://hiiro-sou.hp.infoseek.co.jp/unix/tips/imap.html

カテゴリー
FreeBSD Software Squirrelmail

FreeBSD (Squirrelmail)

/usr/ports/mail/squirrelmail

以前は/user/ports/japanese/に日本語版が置いてあったが今はここのみに置いてあるみたい。

日本語版本家では1.4.5で止まっているけど、portsのは1.4.8。とりあえずportsで入れてみる。

# cd /usr/ports/mail/squirrelmail
# portinstall

その後、/usr/local/www/squirrelmailに降りて、

# cd /usr/local/www/squirrelmail
# ./configure

で各種設定を行う。

日本語を使うなら、 メニュー10番目のLanguageの所を

Language preferences
1.  Default Language       : ja_JP
2.  Default Charset        : iso-2022-jp
3.  Enable lossy encoding  : false

でOK。あと、メニュー2番目のServer SettingsでIMAPサーバーを選択すれば使えるようになります。ウチはuw IMAPなのでこんな感じ。

IMAP Settings
--------------
4.  IMAP Server            : localhost
5.  IMAP Port              : 143
6.  Authentication type    : cram-md5
7.  Secure IMAP (TLS)      : false
8.  Server software        : uw
9.  Delimiter              : detect

あとは、適当に好みで。

apacheの設定は、SSLで使いたかったのでIncludesに置いたhttpd-ssl.confに下記を追記。

<code>Alias /webmail "/usr/local/www/squirrelmail"</code>
AllowOverride All
Options FollowSymLinks ExecCGI Includes
Allow from All

これで https://wwwほげほげ/webmail で使えるようになる。
ところが、 返信とかすると下記のようなウォーニングが。

Warning: preg_split() expects parameter 4 to be long, string given in /usr/local/www/squirrelmail/functions/imap_messages.php on line 808Warning: Invalid argument supplied for foreach() in/usr/local/www/squirrelmail/functions/mime.php on line 52

ぐぐってみたらパッチ発見。

http://www.hmailserver.com/forum/viewtopic….

http://sourceforge.net/tracker/index.php?func=detail&aid=1543573…..

# diff imap_messages.php.org imap_
messages.php
808c808
&lt; $flags = preg_split('/ /', $regs[1],-1,'PREG_SPLIT_NI_EMPTY');
---
&gt;                 $flags = preg_split('/ /', $regs[1],-1,PREG_SPLIT_NO_EMPTY);

これで解決。

カテゴリー
FreeBSD Software

FreeBSD (imap-uw)

/usr/ports/mail/imap-uw


# portinstall mail/imap-uw

で一発。imapとpop3を使いたいので、/etc/inetd.conf を


pop3 stream tcp nowait root /usr/local/libexec/ipop3d ipop3d
imap4 stream tcp nowait root /usr/local/libexec/imapd imapd

に変更。 kill HUP (inetd のpid) を忘れずに。

APOPでメールを取るので/etc/cram-md5.pwdを作成。こんな感じ。


username1    password1(平文)
username2    password2(平文)
username3    password3(平文)

パスワードを平文で入れなければいけないので当然 chmod 600 として他のユーザーから見えないようにしておく必要あり。 にしてもrootからは全部パスワードが見えるのであまりいい感じではない。自前サーバーならではということで目をつぶることにしている。