フリーソフトを用いたメールサーバの構築
SERVER
EMWAC IMS
EMWAC IMS は EMWAC が提供していた Internet Mail Service です。
Windows NT で動くメールサーバで、もっとも魅力的な点はフリーソフトであるということです。現時点では
http://www.emwac.ed.ac.uk/pub/IMS/IMSI386.zip からダウンロードが可能なようです。この EMWAC IMS、もともと Beta 版として公開されているもので、Version 0.8x を最後に開発を終了したそうです。
EMWAC は標準ではスパムメール対策が講じられていないそうです。スパム対策には別途、SCSMFILTER や PLUGIN5 といったパッチを当てる必要があります。
またこれはどちらの問題かわかりませんが、IIS ( Internet Information Service ) に含まれている SMTP をインストールすると SMTP が奪われてしまい EMWAC IMS ではメールの送受信が出来なくなることがあります。
インストール
EMWAC IMS にはインストーラが付属していません。ですのですべて手動での設定となってしまいますが、手順通りに行えば特に難しいことはありません。
ファイルの展開
IMSI386.ZIP を展開すると以下のようなファイルが現れます。
- COPYRITE.EXT
- IMS.CPL
- IMSCMN.DLL
- POP3S.EXE
- READ.ME
- SMTPDS.EXE
- SMTPRS.EXE
IMS.CPL は、コントロールパネルから EMWAC IMS を操作するためのプログラムです。
SMTPDS.EXE はメールを配信するためのプログラム、SMTPRS.EXE はメールを受信するためのプログラムで、SMTP の機能を担います。また POP3S.EXE はメール受信 (POP3) を行うプログラムです。
ファイルのコピー
EMWAC IMS はインストーラが用意されていないので、展開後のファイルを適切な場所へコピーすることが必要です。
IMS.CPL と IMSCMN.DLL の二つを Windows NT のシステムフォルダへコピーしてください。
システムフォルダとは、Windows NT をインストールしたときのフォルダのなかの system32 フォルダ、通常は C:\WinNT\syste32 となります。
POP3S.EXE や SMTPDS.EXE、SMTPRS.EXE などの残りのファイルはお好みのフォルダへコピーしてください。特に制限はないと思いますが、今回は C:\EMWAC\IMS へコピーすることにします。
インストール
インストールには 【コマンドプロンプト】 を使用しますので、まずはこれを起動してください。
まずは POP3S.DLL 等をインストールしたフォルダへ移動してください。
C:\> cd \EMWAC\IMS
C:\EMWAC\IMS>
続いて、SMTP と POP3 の機能を担うプログラムを、 -install オプションとともに実行します。
C:\EMWAC\IMS> pop3s -install
C:\EMWAC\IMS> smtpds -install
C:\EMWAC\IMS> smtprs -install
C:\EMWAC\IMS>
続いて、Windows NT を再起動した後でも自動的にメールサーバを利用できるようにします。
【スタート】 → 【設定】 → 【コントロールパネル】 を開いて、”サービス” を起動します。
- IMS POP3 Server
- IMS SMTP Delivery Agent
- IMS SMTP Receiver
すべての 【スタートアップ】 を開いて、スタートアップの種類を ”自動” にすると、Windows NT 起動時に自動的にこれらのサービスが開始されるようになります。
サーバの設定
【コントロールパネル】 内の EMWAC IMS を起動すると、メールサーバの設定を行うことが出来ます。
Directories
■ Mailbox Directory
メールを保存しておくフォルダを指定します。
%HOME% を使用すると、その部分がユーザのホームディレクトリに置き換わります。
また、%USERNAME% とすれば、その部分だけユーザ名に変わります。
■ Automatically Create Mailbox
ここにチェックを入れておけば、上記で設定したメールボックスが必要になった時点で自動的に IMS が作成してくれます。
■ Mail Spool Directory
スプール用のフォルダを指定します。
この領域にはメールを送信する際の一時的な保管に使用されたり、何らかの理由で送信に失敗したメールなどが蓄えられます。
また、ログをとる設定にしておけばここにログデータが格納されます。
■ Postmaster
ここにはポストマスター(メール管理者)の名前を入力します。
Misc
■ SMTP Gateway Host
メールを送信する際にゲートウェイを通過させないといけない場合など、ほかのメールサーバへ中継する場合に中継する HOST 名を設定します。
■ Copy local failure reports to postmaster
ここにチェックを入れておくと、メールの送受信において何かエラーが発生した際に、メールの管理者(postmaster)へメッセージが送られます。
■ Accept Mail For
このメールサーバが受け入れるメールアドレスをここに指定します。
たとえば、postmaster@mail.ez-net.jp というようなメールを受け取る場合、ここには mail.ez-net.jp と指定します。
Lists
メーリングリストの設定を行います。
New List Name にメーリングリストの名前を設定して [ADD] を押すと、つづいてメーリングリストの詳細設定の画面になります。
Aliases
User name に新しいメールアカウント名を設定し、Map to にすでに存在しているメールアカウント名を設定します。
たとえば、webmaster@mail.ez-net.jp というメールアドレスを新たに作って administrator@mail.ez-net.jp へ転送しようと思ったら、[User name] webmaster, [Map to] Administrator というようになります。
Logging
ここでチェックした項目のログを記録します。
記録されたログは、Mail Spool Directory として設定したフォルダへ保存されます。
ユーザの設定
EMWAC IMS 用のアカウント設定
メールを利用できるアカウントを作成します。
グループ周りの設定は、ドメインコントローラの存在によって大きく変わってきますので気をつけましょう。今回は、メールサーバがドメインコントローラではなく、また他のドメインにも参加していない場合を想定しています。
今回のメールサーバはドメインコントローラではないので、ローカルユーザをつかって作成を行ってみることにします。
「マイコンピュータ」 上で右クリックをして、【管理】 を選択します。
”コンピュータの管理” ウィンドウが現れますので、そのなかから、【ローカルユーザとグループ” を選択します。
まずは管理しやすいように、メールを利用できるグループを作成しましょう。
”グループ” を表示して、システムメニューの 【操作】 から 【新しいグループ】 を選択します。すると作成するグループの情報を入力するダイアログボックスが現れるので、そこで、グループ名とコメント等を入力して 【 OK 】 を押して完了です。
今回は、”IMS Users” というグループを新規に作成しました。
続いて メールの送受信を行うユーザを登録してみます。
今度は ”ユーザ” を表示して、システムメニューの 【操作】 から 【新しいユーザ】 を選択します。ユーザ登録用のダイアログボックスが表示されたら、ユーザ名等の必要事項を記入して 【 OK 】 をクリックします。
今回は、”test” という名前のユーザを作成しました。
ユーザの作成が完了したら、そのユーザを ”IMS Users” グループへ参加させておきます。
もう一度 ”IMS Users” グループをダブルクリックして、グループ情報を表示します。そして、【所属するメンバ】 に、先ほど作成した ”test” ユーザを追加します。
これで ”test” ユーザを ”IMS Users” へ参加させることができました。あとは ”IMS Users” に対して、バッチジョブとしてログオンする権限を付加する必要があります。
「コントロールパネル」 の 「管理ツール」 から、【ローカルセキュリティポリシ】 を起動します。
そして、「ローカルセキュリティ設定」 ウィンドウから、【ローカルポリシー】 の 【ユーザ権利の割り当て】 を選択します。
そして 【バッチジョブとしてログオン】 をダブルクリックして、”IMS Users” を追加します。
Windows 2000 用の追加設定
Windows NT のころはここまでの設定でメールの送受信ができるようになりますが、Windows 2000 ではこれだけではすまないようです。
この状態でメールの送受信を行おうとすると、POP3 による受信時に 「パスワードが拒否されました」 というエラーメッセージとともに接続が拒否されてしまいます。またエラーは出ませんが、送信することもできません。
Windows NT でもそうだったようなのですが、EMWAC IMS のメールボックス設定で %HOME% を使用するとメールの受信時に POP3 がエラーをだすようです。C:\MAILBOX\%USERNAME% のように、%HOME% を使用しないですむように設定を変更する必要があります。
さらに Windows 2000 にて動かす場合には、レジストリを2箇所ほど書き換える必要があるようです。
まずはレジストリエディタを起動しましょう。
【スタート】 メニューのなかの、【ファイル名を指定して実行】 を選択します。現れたダイアログボックスの中に ”regedt32” と入力して 【 OK 】 を押します。
まず、インターネットドメインの情報を追記します。
複数個表示されたウィンドウから、HKEY_LOCAL_MACHINE という名前のウィンドウを選択します。その中のキーを、【SYSTEM】 → 【CurrentControlSet】 → 【Services】 → 【Tcpip】 → 【Parameters】 の中にある、【Domain】 の項目に、自分のインターネットドメインの情報を記述しておきましょう。
ここでは ”exp.ez-net.jp” を設定してみました。
そしてもうひとつ、検索する DNS の情報も追加します。
上記と同様、【SYSTEM】 → 【CurrentControlSet】 → 【Services】 → 【Tcpip】 → 【Parameters】 の中にある、【Nameserver】 の項目に名前解決に使用する DNS サーバの IP アドレスを記述します。
ここの値が設定されていない場合、メールの送信に失敗してしまうそうです。設定は 192.168.0.1,192.168.0.2 のように記述します。複数個の DNS がある場合にはカンマで区切って入力すればいいようです。
通常はこれでうまくいくはずなのですが、僕はなぜかうまくいきませんでした。
いろいろと調べてみたところ、どうやら HKEY_LOCAL_MACHINE という名前のウィンドウを選択します。その中のキーを、【SYSTEM】 → 【CurrentControlSet】 → 【Services】 → 【Tcpip】 → 【Parameters】 の中にある、【UseDomainNameDevolution】 の項目に 0 を設定すると正常にメール送信が行われるようになるようです。
詳しいことはわからないのですが、もし外部へメールを転送できないような場合があったら、UseDomainNameDevolution の項目を 0 に設定してみるといいかと思います。