TECH NOTE – SENDMAILをLDAP仕様でビルドする


sendmailのをldap参照機能を組み込んでソースからbuildする手順の概容です。

1. ソースのTARボールを解凍する

sendmailのソースコードのtarボールを入手し(www.sendmail.orgを参照)/usr/local/src/にコピーしたのち、解凍する。

#cd /usr/local/src
#tar -zxf sendmail-8.12.9.tar.gz
 2. サイト設定ファイルを作成する

sendmail のコンパイル時の指定は、site.config.m4というファイルにm4マクロで記述し、sendmailのソースコードを展開して作成されたディレ クトリ配下のDevtools/Siteにこのファイルを配置して行います。以下は、OpenLDAP(Vers.2.0以降)の利用を前提とした site.config.m4ファイルの一例です。太字の部分がLDAPの利用に直接関与する記述です。SASLによるSMTP AUTHなど、ほかにも実装したい機能があれば、その記述をこのファイルに加えます。OpenLDAPは、sendmailをビルドする前にインストール されていなければなりません。以下の例は、OpenLDAPライブラリの各ファイルが/usr/libディレクトリにあることを前提としています。

APPENDDEF(`confMAPDEF’,`-DLDAPMAP’)
APPENDDEF(`confENVDEF’,`-DLDAP_VERSION_MAX=3′)

APPENDDEF(`confINCDIRS’, `-I/usr/include’)
APPENDDEF(`confLIBSDIRS’, `-L/usr/lib’)
APPENDDEF(`confLIBS’, `-lpthread -lldap -llber -lldap_r‘)
 2. ビルド
# cd /usr/local/src/sendmail-8.12.9/sendmail
#sh Build
 3. ユーザsmmspの作成
# useradd smmsp
 4. インストール
# sh Build install
 5. sendmail.cf, submit.cfの生成

sendmail の機能設定をm4マクロで記述したsendmail.mc, submit.mcファイルを作成し、ディレクトリ cf/cf配下に置き、以下の手順でビルドすることにより、sendmail.cf, submit.cfファイルが/etc/mail以下にコピーされます。

  • 実際にメールルーティングやエリアスの制御を行うためには、sendmail.mcにLDAPの利用に関する記述をおこなう必要があります。記述方法は 「LDAP利用のためのsendmail.mcの設定」を参照してください。
  • ディレクトリ /etc/mailは事前に作成しておきます。
# cd /usr/local/src/sendmail-8.12.9/cf/cf
# sh Build install-cf
 
 
ドキュメントアクション