qmail †インストール後の基本ディレクトリやパラメータは以下。 今回構築するqmailのバージョンは net-qmail-1.0.6のインストール、設定については以下の方を参考にテスト。 DL_URL(qmail):http://www.icewalkers.com/download/qmail/1473/dls/ 必要なパッチのDL †qmail-103.patch qmail-date-localtime.patch qmail-smtpd-relay-reject netqmail-1.05-tls-smtpauth-20070417.patch 後から必要となった場合には再コンパイルする必要があるので、上記のパッチは念のため先に当てておくことをお勧め。
インストール †インストール用ディレクトリ作成 & ユーザ、グループ作成 †# mkdir /var/qmail # groupadd -g 1001 nofiles # groupadd -g 1002 qmail # useradd -u 2000 -g nofiles -s /sbin/nologin -d /var/qmail/alias alias # useradd -u 2001 -g nofiles -s /sbin/nologin -d /var/qmail qmaild # useradd -u 2002 -g nofiles -s /sbin/nologin -d /var/qmail qmaill # useradd -u 2003 -g nofiles -s /sbin/nologin -d /var/qmail qmailp # useradd -u 2004 -g qmail -s /sbin/nologin -d /var/qmail qmailq # useradd -u 2005 -g qmail -s /sbin/nologin -d /var/qmail qmailr # useradd -u 2006 -g qmail -s /sbin/nologin -d /var/qmail qmails UID、GIDは出来れば指定しておくと後々便利かもしれない。 パッチ当て †# cd /usr/local/src # wget http://qmail.org/netqmail-1.06.tar.gz # wget 各パッチ # tar zxvf netqmail-1.06.tar.gz # cd netqmail-1.06 # patch < ../netqmail-1.05-smtpd-auth-0.31.patch # patch < ../qmail-date-localtime.patch # patch < ../qmail-103.patch # patch < ../qmail-smtpd-relay-reject # make man # make setup check # ./config-fast `hostname` # cd /var/qmail/alias # echo "&postmaster@hogehoge.com" > .qmail-postmaster # echo "&postmaster@hogehoge.com" > .qmail-mailer-daemon # echo "&postmaster@hogehoge.com" > .qmail-root # chmod 644 .qmail* 起動スクリプトが用意されているのでこれを使用する。 # cp -p /usr/local/src/netqmail-1.06/home /var/qmail/rc # sed -i "s#Mailbox#Maildir/#" /var/qmail/rc 詳細 # more home #!/bin/sh # Using splogger to send the log through syslog. # Using qmail-local to deliver messages to ~/Mailbox by default. exec env - PATH="/var/qmail/bin:$PATH" \ qmail-start ./Mailbox splogger qmail # =>qmail-start ./Mailbox splogger qmail # この行を qmail-start ./Maildir/ splogger qmail に変更する。 tcpserverのインストール †tcpserverとは、 基本的にメールを送信する制御プログラムだと思えば良い。 ucspi-tcp-0.88(tcpserver) †# cd /usr/local/src # wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz # tar xfzv ucspi-tcp-0.88.tar.gz # cd ucspi-tcp-0.88 # patch < ../netqmail-1.06/other-patches/ucspi-tcp-0.88.errno.patch # make setup check 普通に展開してインストールするとエラーが出る。パッチがnetqmail-1.06同胞されているので、このパッチを使用する。 実際にメールを送信する †tcp.smtp.cdbの作成 †qmailでメールを送信するにはtcp.smtp.cdbが必要になる。 /etc/tcp.smtp.cdbを作成する。 /etc/tcp.smtp.cdbを作成するには、/etc/tcp.smtpファイルを作成し、許可する相手を記述する。 # cat /etc/tcp.smtp 192.168.0.:allow,RELAYCLIENT="" 172.16.:allow,RELAYCLIENT="" 127.:allow,RELAYCLIENT="" :allow tcp.smtp.cdbを作成する。 # /usr/local/bin/tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp 起動スクリプト †次にtcpserver経由でsmtpを起動させるために以下のスクリプトを使用する。 # /etc/init.d/sendmail stop # chkconfig sendmail off 実際に起動させてみる。 # /etc/init.d/qmail start # ps -ef |grep qmail # mail -s "testmail" xxxxxxx@hogehoge.com 問題なくメールが送信されていれば完了。 トラブルシュート †fatal: unable to bind: address already used †既に同様のサービスが立ち上がっているとsmtpがぶつかって起動するがサービス提供されない。 その他 †http://d.hatena.ne.jp/cat-o-ninetail/ |