Exim ヒント集

目次

インストールとアンインストール

tarボールからのインストール

ソースからのインストールはこちら(install.php)をご覧ください。

パッケージの構築とインストール

debian/redhat用のパッケージ等も有志によって用意されています。

僕は debian は使ったことがないので、apt-get とかはよく知りません。とりあえずここでは Red Hat 系の RPM パッケージの構築について。

SPECファイルの取得

http://www.timj.co.uk/linux/exim.php には、exim の RPM を作るのに必要なファイルが一通りおかれています。特にこだわりがなければ、この timj.co.jp のサイトを参考にするのもよいでしょう。

起動と終了

exim は sendmail クローンとして動作できるよう作られています。特に、exim を sendmail というファイル名にしたりシンボリックリンクを張ったりしても使えるくらい、ほぼ完璧な互換性があります。したがって、sendmail のコマンドラインオプションがそのまま使えます。

smtpデーモンの起動

root# /usr/bin/exim -bd

smtpデーモンの終了

root# killall -TERM exim

または

root# ps -aux | grep exim
mail      4347  0.0  0.1   448  388 ?        S     2002   2:17 /usr/bin/exim -b
root# kill -TERM 4347 (←eximのプロセスID)

メールクライアントとしてのexim

sendmail でメールが送信できるように、exim でもメールの送信ができます。つまり、CGIなどのスクリプトも、書き換えることなく exim のリネームだけで対応できるのです。

wassy% /usr/bin/exim -t
From: test-user <test@example.jp>
Subject: Test.

This is a test.
.
wassy%

ランタイム設定ファイル

リレーの制御

exim サーバーを経由して外部へメールを送信してもよいホストを指定します(自ホスト向けの配送、いわゆるローカル配送はもともと可能です)。インストール直後は 127.0.0.1 (自ホスト) のみしか指定されていないので、インストールしたマシン以外から電子メールを送信することができません。

これを設定するには、設定ファイル中の host_accept_relay を編集します。

host_accept_relay = 127.0.0.1:192.168.0.1:10.0.0.1

サブネットマスクを利用することで、ネットワーク単位で指定もできます:

host_accept_relay = 127.0.0.1:192.168.0.0/24