qpsmtpdユーザーを作成
qpsmtpd用にユーザーを作成します。
# adduser smtpd
インストール
smtpdユーザにログインして、qpsmtpdで使うモジュールをインストールします。
$ cpanm Net::DNS $ cpanm MIME::Base64 $ cpanm Mail::Header
githubからcloneしてきます。
$ git clone git://github.com/smtpd/qpsmtpd.git
masterブランチは開発中のバージョンなので、
安定版のバージョンをチェックアウトします。
$ git checkout -b local_branch v0.84
qpsmptdをインストールしたディレクトリのパーミッションを以下のように設定します。
$ chmod o+t ~/smptd/qpsmtpd/
config.sampleディレクトリがあるので、リネームします。
$ mv config.sample config
設定
以下のファイルにてキューの設定を行う。
$ vi config/plugins
「queue/maildir〜」のところがコメントアウトされているので、外して以下のような設定にする。
queue/maildir /home/smtpd/tmp
起動
以下のようにひとまず起動してみます。
$ ./qpsmtpd-forkserver -u $USER
ポート2525で、サーバが立ち上がるはずです。
オプション「-d」をつければ、デーモンとして起動できます。
動作チェック
telnetで繋いでみます。
青いところが打ち込むところです。
$ telnet localhost 2525
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 debian2 ESMTP qpsmtpd 0.84/v0.84 ready; send us your mail, but not your spam.
HELO localhost
250 debian2 Hi Unknown [127.0.0.1]; I am so happy to meet you.
MAIL FROM: memememomo@gmail.com
250, sender OK - how exciting to get mail from you!
RCPT TO: nantoka@example.com
250, recipient ok
DATA
354 go ahead
From: memememomo@gmail.com
To: nantoka@example.com
Subject: test
Hello World.
.
250 Queued!
QUIT
221 debian2 closing connection. Have a wonderful day.
Connection closed by foreign host.
無事に実行出来れば、できているはず。