[Sendmail]
システムインストール直後のSendmailはローカルからの送信しか許可していないため、設定が必要です。以下の例ではDracを用いたPOP Before SMTPの設定方法。(popperにはqpopperを使用)
まずdracdをインストールします。
dracdはhttp://mail.cc.umanitoba.ca/drac/から取得できます。
wget ftp://ftp.cc.umanitoba.ca/src/drac.tar.Z
mkdir drac
cd drac
tar xvzf drac.tar.Z
# Makefile の以下の項目を編集
EBIN = /usr/local/sbin
MAN = /usr/share/man/man
DEFS = -DSOCK_RPC -DFCNTL_LOCK -DGETHOST -DDASH_C
CC = gcc
CFLAGS = $(DEFS) -g
LDLIBS = -ldb
TSTLIBS = -L. -ldrac
RPCGENFLAGS = -C -I
MANLIB = 3
MANADM = 8
#makeしてインストールします
make install
make install-man
以下のエラーがでてmakeに失敗する場合、db4-develパッケージを入れればよい。
DRACが正しく動いているかテストします。まずインストールされたrpc.dracdをバックグラウンドで実行。
src内にあるtestingコマンドを実行。192.168.1.222のIPを登録してみます。
IPが正しく登録されているかチェック。先ほど登録したIPが表示されるかと思います。
format=print
type=btree
bt_minkey=2
db_pagesize=512
HEADER=END
192.168.1.222
972890074
起動スクリプトをコピーします。
起動スクリプトのstart部分を以下のように編集
ランレベル3で起動するようにシンボリックリンクを作成chkconfig - init.dスクリプトの追加のようにしてもよい
cd /etc/rc.d/rc3.d
ln -s ../init.d/dracd S78dracd
service dracd start もしくは /etc/rc.d/init.d/dracd start でdracdを起動
ライブラリファイルを/usr/local/libにコピー
次にQpopperをインストールします。
http://www.eudora.comからダウンロードできます。
tar xvzf qpopper4.0.5.tar.gz
cd qpopper4.0.5
./configure --enable-specialauth --with-drac=/usr/local/lib --mandir=/usr/share/man
make
make install
x.inetdファイルを作成
vi pop
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/local/sbin/popper
server_args = -s
}
xintedを再起動
sendmail.cfを再構築します。まずはmcファイルの編集。
vi /etc/mail/sendmail.mc
該当箇所を以下のように修正。
dnl FEATURE(`accept_unresolvable_domains')dnl
DRACを使用するため以下をmcの最後に追加(MAILER定義より後)
# dynamic relay authorization control map
Kdrac btree /etc/mail/dracd
LOCAL_RULESETS
SLocal_check_rcpt
# allow recent POP/IMAP mail clients to relay
R$* $: $&{client_addr}
R$+ $: $(drac $1 $: ? $)
R? $@ ?
R$+ $@ $#OK
注: R$* と $: $&{client_addr}の間はタブになります。
sendmail.cfをバックアップ
sendmail.cfを再構築
/etc/mail/local-host-namesにメールで受け取るドメインを記入
最後にメールサーバを再起動して完了。
[参照記事]
dracd.dbのエントリーを調べるには
stat=Deferred: local mailer (/usr/bin/procmail) exited with EX_TEMPFAIL
submit.cf - ローカル配送の転送
DSN: Data format error
dracd.dbのエントリーを調べるには
ClamAV - Oversized Zip FOUND
SMTP AUTH
Domain name required for sender address
alias database /etc/aliases.db out of date
config error: mail loops back to me (MX problem?)
dnsblによるスパム対策
/etc/mail/local-host-names
Cannot resolve PTR record for
procmailにて未承諾広告を削除
Domain of sender address....
/etc/mail/access.db - リレーの制御
savemail panic
sendmailのアップグレード
キューの再送をする
ClamAVによるウィルススキャン
virtusertable - 複数ドメインのメールを受信
MaxMessageSize - メールの送受信サイズを制限するには
メールの転送設定 - aliases
Unable to process From lines (envelope), change recognition modes
キューの並列処理をさせるには
キューの時間を変更するには
sendmailのバージョンを調べるには
mailq - メールのキューを見るには
メールをプログラムへ渡すには
mailertableによる配送経路の指定
telnetによるメール送信
Drac + QpopperによるPOP Before SMTP
Sendmailでのウィルススキャン