COMPUTER

RHEL 5 への qmailインストール (PORT25)

最近、qmailって殆ど使われていないかと思ってましたが、まだ、結構使われて居るんですね。
私はMTAというとpostfixですが、ここにきてqmailのセットアップを行う羽目になってしまったので、ここに備忘録を残しておきます。
・qmailのver.は1.03
・qmailを25番ポートで動作させるだけでなく、submissionポート 587番ポートでSMTP-AUTHを行う。
・POPもqmailにて動作させる。
・ユーザー管理はvpopmailにて実施
というのが大まかな要件です。
プラットフォームは Redhat Enterprise Linux 5.5 (x86)になります。
手順がかなり長いので、まずはポート25番での通常のqmailセットアップから。
既にOSのセットアップ及び、初期設定は済んでいるものとします。
ドメインはhogehoge.comとし、メールはmaildir形式で保存します。


まずは事前準備から。
1.qmailと混同する可能性があるので、既存のsendmail をアンインストールします。

# yum remove sendmail

2.インストールディレクトリの作成
インストール先のディレクトリをあらかじめ作成しておきます。

# mkdir /var/qmail

3.qmailを動作させる関連グループ、ユーザーの追加を行います。
gid,uidは各環境に合わせて読み替えて下さい。プラットフォームによってはシェルも変更する必要があります。

# groupadd -g 200 nofiles
# groupadd -g 201 qmail
# useradd -u 200 -g nofiles -d /var/qmail/alias -s /sbin/nologin alias
# useradd -u 201 -g nofiles -d /var/qmail -s /sbin/nologin qmaild
# useradd -u 202 -g nofiles -d /var/qmail -s /sbin/nologin qmaill
# useradd -u 203 -g nofiles -d /var/qmail -s /sbin/nologin qmailp
# useradd -u 204 -g qmail -d /var/qmail -s /sbin/nologin qmailq
# useradd -u 205 -g qmail -d /var/qmail -s /sbin/nologin qmailr
# useradd -u 206 -g qmail -d /var/qmail -s /sbin/nologin qmails

3.qmailアーカイブの用意(ダウンロード)
qmailのアーカイブをダウンロードします。
ダウンロード先は /usr/local/src/qmail とします。

# wget http://cr.yp.to/software/qmail-1.03.tar.gz

4.qmail-smtpd-authアーカイブの用意(ダウンロード)
これは後ほど行います。
5.統合patchの用意
qmail-1.03-jms1-7.10.patch(統合パッチ)
ダウンロード先は /usr/local/src/qmail/patch とします。

# wget http://qmail.jms1.net/patches/qmail-1.03-jms1-7.10.patch

6.統合パッチを適用。
qmailは通常、いくつかのパッチを適用する必要がありますが、このパッチは一つ適用すると、殆どのパッチを適用したのと同じ状態になります。
パッチ自体にも修正が入っているので個々に適用するより手軽です。

# cd /usr/local/src/qmail
# tar zxvf qmail-1.03.tar.gz
# cd qmail-1.03
# patch -s -p1 <../patch/qmail-1.03-jms1-7.10.patch

7.qmailのコンパイル、インストール

# make
# make setup
# make check

この時点で /var/qmail以下にインストールが完了します。念のため、ディレクトリに移動してファイルがあるかを確認します。
8.config-fastの実行
qmailの場合、基本的な設定ファイルをソース内に用意されたスクリプトから作成します。
以下のとおりスクリプトの実行を行い、設定ファイルを作成します。

# cd /usr/local/src/qmail/qmail-1.03
# ./config-fast mail.hogehoge.com (FQDNでホスト名を入力)

9.起動スクリプトの配置
ソースに用意された起動スクリプトを配置します。

# cp /var/qmail/boot/home /var/qmail/rc

10.テストとしてMaildirに配送するように設定変更を行います。

# vi /var/qmail/rc
exec env - PATH="/var/qmail/bin:$PATH" \
qmail-start ./Maildir/ splogger qmail ← mailboxをMaildir/に変更

11.qmailを起動して配送テストを行います。

# /var/qmail/rc &

netstatやpsコマンドでqmailが起動していることを確認します。
12.テスト配送の実施
テストを行い、メールが配送されることを確認します。ここでの配送先は実際に設定されているローカルアカウントを指定します。

# /var/qmail/bin/qmail-inject
To: hoge
Subject: testmail
testmail.

ctrl+Dで終了。
ホームディレクトリを確認してメールが配送されていれば、テストは完了です。
13.sendmailバイナリのあった場所にシンボリックリンクを設定します。

# ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail

これでqmailのインストールは完了です。
外部へメールを配送するためには別途、tcpserverのインストールを行う必要があります。tcpserverはSMTP-AUTHの記事に導入方法を記載しています。
ちなみにこのままの状態だと、RBLなんかの不正中継テストに失敗します。
これは、不正中継テスト自体が古いsendmailのバグをテストするものであり、RFCでは@前に@や%が付いていることを不正とはしていないため、それに準拠しています。
不正中継テストをパスするために、smtpd-relay-reject機能を有効にする場合、以下の手順が必要となります。(必要に応じて設定して下さい。)
/etc/tcp.smtp に以下の環境変数を設定

:allow,RELAYREJ="1" ← RELAYREJ="1"を追加

設定後、tcprulesコマンドで、cdb化する。
次回以降で、SMTP-AUTHとvpopmailの設定を書いていきます。

関連記事

  1. COMPUTER

    mdadmによるソフトウェアRAID

    我が家ではwebサーバをソフトウェアRAIDで運用しています。S/W …

  2. COMPUTER

    sendmailとspamassassin

    自分の中では終わったMTA sendmailしかし、何故か、今回、…

  3. COMPUTER

    WLAE-AG300N とTime Capsule

    始めは、簡単に繋がると思っていた。製品のボックスにもそう書いて…

  4. COMPUTER

    VMware Server を Debian Etchで

    先日、VMware ServerをDebian Etch (4.0)で…

  5. COMPUTER

    この記事は移転しました。

    この記事は移転しました。新しいURLはプロキシサーバー経由でフ…

  6. COMPUTER

    RHEL 5 への qmailインストール (vpopmail)

    前回までに以下の手順を記載しました。・通常のqmail(port2…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

  1. MOBILE

    iphone wifi不具合
  2. CINEMA

    The Texas Chainsaw Massacre: The Beginni…
  3. DAILY

    ヒゲトリマー
  4. BOOKS

    新宿遊牧民
  5. WEAR

    Arc’teryx ネックゲイター
PAGE TOP