![]()
mailサーバー
1.qmailの入手
はじめに、qmailを選んだ理由は、sendmailに比べてセキュリティーや設定のしやすさ、MailBox形式ではなく、
MailDir形式であることで管理がしやすい点など、これからは、qmailのユーザーのほうが多くなるだろうという
予想で決めました。
次のファイルををダウンロードします。
ucspi-tcp-0.88.tar.gz (tcpserver) http://cr.yp.to/ucspi-tcp/install.html
checkpassword-0.90.tar.gz http://cr.yp.to/checkpwd/install.html
qmail-1.0.3.tar.gz http://www.jp.qmail.org/djb/qmail.html
qmail-date-localtime.patch.gz http://ftp.sg.freebsd.org/pub/FreeBSD/ports/local-distfiles/sada/
日本語のページです。 http://www.jp.qmail.org
2.解凍・コンパイル・インストール
ダウンロードしたファイルは、圧縮されていますので、コマンドラインから以下の手順で解凍して、インストールします。/usr/localにダウンロードしたとして記述します。
1)準備
rootで行ってください。
# mkdir /var/qmail インストールするqmailのディレクトリーを作成します。
(標準でここですので変更しないこと)
# chmod 755 /var/qmail パーミッション変更します。
# groupadd -g 1000 nofiles ここで設定されるnofilesのグループIDを覚えておきます。
# useradd -g nofiles -u 2001 -d /var/qmail/alias -s /bin/false alias ID(-g 1000 -u 2001等)も入れておいたほうがあとで楽かもしれません。
# useradd -g nofiles -u 2002 -d /var/qmail -s /bin/false qmaild ここで設定されるqmaildのユーザーIDを覚えておきます。
# useradd -g nofiles -u 2003 -d /var/qmail -s /bin/false qmaill
# useradd -g nofiles -u 2004 -d /var/qmail -s /bin/false qmailp
# groupadd -g 500 qmail
# useradd -g qmail -u 2005 -d /var/qmail -s /bin/false qmailq
# useradd -g qmail -u 2006 -d /var/qmail -s /bin/false qmailr
# useradd -g qmail -u 2007 -d /var/qmail -s /bin/false qmails
2)インストール
qmailのインストール
# cd /usr/local ディレクトリーに移動します。
# tar xvfz qmail-1.03.tar.gz 解凍します。
# gunzip -v qmail-date-localtime.patch.gz
解凍したqmail-date-localtime.patchをqmail解凍ディレクトリーにコピーします。
# cp qmail-date-localtime.patch /usr/local/qmail-1.03
# cd /usr/local/qmail-1.03 解凍ファイルのあるディレクトリーに移動します。
# patch -p1 < qmail-date-localtime.patch ローカルタイムパッチをあてます。
# su
# make setup check cコンパイラーでコンパイルし、ファイルをインストールします。
*注意 失敗する場合(Redhat Linux 9)は
qmail-1.03ディレクトリーのerror.hファイル内の次の部分を修正します。
extern int errno; → #include <errno.h>
tcpserverのインストール
# cd /usr/local ディレクトリーに移動します。
# tar xvfz ucspi-tcp-0.88.tar.gz tarで解凍します。
# cd /usr/local/ucspi-tcp-0.88 解凍ファイルのあるディレクトリーに移動します。
# make cコンパイラーでコンパイルします。(開発環境が必要です。)
# su スーパーユーザーになったほうがよいかもしれません。
# make setup check コンパイルしたファイルをインストールします。
# exit
*注意 失敗する場合上記参照
checkpasswordのインストール
# cd /usr/local ディレクトリーに移動します。
# tar xvfz checkpassword-0.90.tar.gz tarで解凍します。
# cd /usr/local/checkpassword-0.90 解凍ファイルのあるディレクトリーに移動します。
# make cコンパイラーでコンパイルします。(開発環境が必要です。)
# su スーパーユーザーになったほうがよいかもしれません。
# make setup check コンパイルしたファイルをインストールします。
*注意 失敗する場合上記参照
3.ファイルの設定
# ./config-fast s-ip.net 設定ファイルのセットをします。(s-ip.netは自ドメイン)
# cp /var/qmail/boot/home /var/qmail/rc 単純にhomeファイルをrcにしてコピーします。
その際、ちゃんと中身までコピーされたか確認してください。
# cd /var/qmail/alias エイリアスの設定です。ディレクトリーに移動します。
# touch .qmail-postmaster 空ファイルの作成、最低限の設定です。
# touch .qmail-mailer-daemon
# touch .qmail-root
# chmod 644 /var/qmail/alias/.qmail* パーミッションの設定です。
それぞれのエイリアスファイルに転送先(登録アカウントユーザー名)を書きます。
maildir形式の設定
エディターで/var/qmail/rcのqmail-startの行を以下のように書き換えます。
qmail-start ./Maildir/ splogger qmail &
新規アカウントを作ったとき、自動でmaildirが作成されるようにします。
# /var/qmail/bin/maildirmake /etc/skel/Maildir
# echo ./Maildir/ > /etc/skel/.qmail
通常は、変えなくても良いと思いますが、コントロールファイルの確認
/var/qmail/control/locals ローカル配信のアドレスです。
/var/qmail/control/rcphosts ローカルと同じアドレスです。
/var/qmail/control/me ローカルと同じアドレスです。
外部に配信する設定、smtp接続の許可
/var/qmail/control/tcprules.txt の編集をします。ファイルが無ければ作ってください。
以下は、ファイルの中身です。
192.168.1. :allow,RELAYCLIENT="" ローカルの192.168.1.の0から255まで許可する設定です。
:allow smtpの許可です。
RELAYCLIENT=""を書いておくと /var/qmail/control/rcpthostsを無視して転送できるホストを指定できます。
このテキストファイルからtcprules.datを作成します。
# cd /var/qmail/control
# tcprules tcprules.dat tcprules.tmp < tcprules.txt
4.起動ファイルの設定
ブートスクリプト(/etc/rc.d/rc.local)にエディターで以下を追加します。
# Start qmail
/bin/csh -cf /var/qmail/rc &
# Start pop3d
/usr/local/bin/tcpserver 0 110 /var/qmail/bin/qmail-popup s-ip.net /bin/checkpassword /var/qmail/bin/qmail-pop3d Maildir &
1行で書いてください。
# Start smtpd
/usr/local/bin/tcpserver -x /var/qmail/control/tcprules.dat -u 2002 -g 1000 0 smtp /var/qmail/bin/qmail-smtpd &
1行で書いてください。-u 2002は、qmaildのユーザーID
-g 1000は、nofilesのグループIDで、アカウント設定で変わります。
5.ゲストアカウントの登録
使用できるユーザー(仮にbanira)とグループ(qmailuser)をコマンドラインから登録します。
rootで行います。
# groupadd -g 2001 qmailuser グループを登録します。
# useradd -u 5001 -g 2001 -c coment -d /usr/local/qmail/vanira -s /bin/nologin vanira
-u 5001 ユーザーIDを入力します。
-g 2001 グループIDを入力します。
-c coment 補足説明が必要な場合入力します。
-d /usr/local/qmail ホームディレクトリーのパスを入力します。
-s /bin/nologin シェルを指定します。なにもしないシェルでいいです。
vanira ユーザー名を入力します。
# su スーパーユーザーになります。
# passwd vanira でユーザーvaniraのパスワードを入力します。
New password:********* できるだけ半角英数字で8文字以上入力します。
Retype new password:********* もう一度入力します。
passwd: all authentication tokens updated successfully で成功です。
ユーザーとグループの削除は、以下です。
# userdel -r vanira
# groupdel qmailuser
6.クライアントの設定
通常のPOP3認証でログオンします。
受信メール POP3・・・s-ip.net
受信メールサーバーのアカウントは、vanira (仮に)
パスワードは、********
セキュリティーで保護されたパスワードで認証ログインは、しません。
これだけでメールの受信ができます。
最後に、セキュリティー対策から、APOP認証にしたほうが良いですが、対応するメーラーが少ない
ということで今回は、使用していません。
smtp認証は、次回記載予定。
![]()
2002年3月20日
2004年4月18日更新