SASL認証ライブラリのインストールと Sendmailアップグレード
TuroboLinux6 Workstationについているsendmailのバージョンは 8.9.3 です。本家サイトからソースをコンパイルしてインストールする方が良いのですが、ここでは、TurboLinuxから配布されているrpmパッケージを使う方法を紹介します。
尚、SMTP AUTH に対応したバージョンは 8.10 からですが、8.10 はCFに完全対応していません。セキュリティ上の問題もあるため3.11以降を利用するようにします。
追記
TurboLinuxで 2001.10 現在でuntestedで公開されているバージョンは 8.11.4 なのでこちらを利用しています。(sendmail本家サイトは 2001/10 現在 8.12 になっています。)
必要なパッケージの入手
urboLinuxのFTPサイトから以下のパッケージを入手し、以下の順番でインストールします。
- SASL認証ライブラリ
- 入手先
ftp://ftp.dti.ad.jp/pub/Linux/TurboLinux/stable/untested/6/i386/
┣ cyrus-sasl-1.5.24-14.i386.rpm
┗ cyrus-sasl-devel-1.5.24-14.i386.rpm
saslはSMTP認証に必要なユーザー、パスワードを生成するのに必要です。
" AUTH SMTP " に対応しているsendmail.src.rpmをrebuildインストールする前にこのライブラリがインストールされている必要があります。
- M4 プリプロセッサ
- sendmail.cf を生成するためのプリプロセッサです。Sendmail-8.9.3 の mc とは異なります。
- 入手先
ftp://ftp.dti.ad.jp/pub/Linux/TurboLinux/TurboLinux/
ia32/Workstation/6.0/ja/updates/RPMS/
┗ m4-1.4-14.i386.rpm
- Digest-MD5
- MD5暗号化に必要な perlモジュールです。
- 入手先
ftp://ftp.dti.ad.jp/pub/lang/CPAN/authors/id/G/GA/GAAS/
┗ Digest-MD5-2.16.tar.gz
- Sendmail-8.11
- TurboLinux 6 Wでは、Sendmail-8.9.3 以外にパッケージが用意されていません。TurboLinux 7 用の srpm (ソースパッケージ)をコンパイルして使用することにしました。
- 入手先
ftp://ftp.dti.ad.jp/pub/Linux/TurboLinux/stable/tested/7/SRPMS/
┗ sendmail-8.11.6-2.src.rpm
- このバージョンはSTARTTLSが有効になっています。rpmを使用せず、ソースパッケージ src.rpm からコンパイルして使用しました。
インストール
上記、パッケージ、ソースは依存関係にありますので、必ず上記の順番でインストールする必要があります。
SASL認証ライブラリ
rpmコマンドでパッケージをインストールします。
# rpm -Uvh cyrus-sasl-1.5.24-14.i386.rpm
# rpm -Uvh cyrus-sasl-devel-1.5.24-14.i386.rpm
M4 プリプロセッサ
rpmコマンドでパッケージをインストールします。
# rpm -Uvh m4-1.4-14.i386.rpm
Digest-MD5
perlモジュールのインストール方法は共通します。
解凍後、ディレクトリへ移動します。
# tar -zxvf Digest-MD5-2.16.tar.gz
# cd /tmp/Digest-MD5-2.16
makeでモジュールを生成し、make testでエラーが出ないか確認します。問題がなければインストールします。
# perl Makefile.PL
# make
# make test
# make install
/usr/lib/perl5/site_perl/ 以下にインストールされます。
Sendmail のアップグレード 8.9.3 → 8.11
Sendmail のインストールを行う前に、cyrus-sasl をインストールしておく必要があるので注意して下さい。
SASLライブラリをインストール後、念のため以下のコマンドを実行し、rpm データベースを再構築します。
# rpm --rebuilddb
ソースパッケージをコンパイルし、環境に合わせた rpm パッケージを生成します。
# rpm --rebuild /tmp/sendmail-8.11.6-2.src.rpm
この作業で以下のファイルが生成されます。
/usr/src/turbo/RPMS/i386/
┣ sendmail-8.11.6-2.i386.rpm
┣ sendmail-cf-8.11.6-2.i386.rpm
┗ sendmail-doc-8.11.6-2.i386.rpm
# rpm --rebuild /tmp/sendmail-8.11.6-2.src.rpm
生成されたファイルをそれぞれインストールします。
# rpm -Uvh /usr/src/turbo/RPMS/i386/sendmail-8.11.6-2.i386.rpm
# rpm -Uvh /usr/src/turbo/RPMS/i386/sendmail-cf-8.11.6-2.i386.rpm
# rpm -Uvh /usr/src/turbo/RPMS/i386/sendmail-doc-8.11.6-2.i386.rpm
"AUTH SMTP" に対応したsendmailがインストールされました。
SASLライブラリの確認
実際にsendmailがSASLライブラリを認識しているかテストします。
# sendmail -d0.1 -bv root | grep SASL
NAMED_BIND NETINET NETINET6 NETUNIX NEWDB NIS PIPELINING SASL
このように表示されれば、SASL に対応しています。