Last Update: "2007/04/01 12:38:09 makoto"

smtpfeed

smtpfeed は sendmail の配送を高速化する道具の一つです。以前の情報
また、少し情報が古いですが http://www.ki.nu/software/NetBSD2/smtpfeed.html も参照して下さい。

smtpfeed.mc

pkgsrc/mail/smtpfeed/work/smtpfeed-1.18/INSTALL{.j,}: には、次のような設定を追加して下さいとあります。
FEATURE(nocanonify)dnl
MAILER_DEFINITIONS
Msmtpf, P=/usr/pkg/libexec/smtpfeed, F=mDFMuXz, S=11/31, R=21, E=\n, L=990,
        T=DNS/RFC822/SMTP, A=smtpfeed
MAILER(smtp)dnl
define(`SMART_HOST', `smtpf:LMTP')dnl
そこで作成した smtpfeed.mc は次のようなものです。
include(`../m4/cf.m4')
VERSIONID(`@(#)netbsd-proto.mc	$Revision: 1.1.1.1 $')
OSTYPE(bsd4.4)dnl
DOMAIN(generic)dnl
FEATURE(genericstable,DATABASE_MAP_TYPE` -o 'MAIL_SETTINGS_DIR`genericstable')
FEATURE(mailertable,  DATABASE_MAP_TYPE` -o 'MAIL_SETTINGS_DIR`mailertable')
FEATURE(virtusertable,DATABASE_MAP_TYPE` -o 'MAIL_SETTINGS_DIR`virtusertable')
FEATURE(domaintable,  DATABASE_MAP_TYPE` -o 'MAIL_SETTINGS_DIR`domaintable')
FEATURE(access_db,    DATABASE_MAP_TYPE` -T -o 'MAIL_SETTINGS_DIR`access')
FEATURE(`redirect')
FEATURE(`no_default_msa')
FEATURE(nocanonify)dnl
MAILER(local)dnl

# Enable IPv6.  IPv6 is marked as optional so the configuration file
# can be used on IPV4-only kernel as well.
DAEMON_OPTIONS(`Family=inet, address=0.0.0.0, Name=MTA, Modifiers=O')dnl
DAEMON_OPTIONS(`Family=inet6, address=::, Name=MTA6, Modifiers=O')dnl

MAILER_DEFINITIONS
Msmtpf, P=/usr/pkg/libexec/smtpfeed, F=mDFMuXz, S=11/31, R=21, E=\n, L=990,
        T=DNS/RFC822/SMTP, A=smtpfeed
MAILER(smtp)dnl
define(`SMART_HOST', `smtpf:LMTP')dnl

./Build

ttyp1:makoto@palermo 12:22:10/070401(...cf/cf)> ./Build smtpfeed.cf Using M4=/usr/pkg/bin/gm4 rm -f smtpfeed.cf /usr/pkg/bin/gm4 ../m4/cf.m4 smtpfeed.mc > smtpfeed.cf || ( rm -f smtpfeed.cf && exit 1 ) *** WARNING: missing -T in argument of FEATURE(`access_db', hash -T -o /etc/mail/access) echo "### smtpfeed.mc ###" >>smtpfeed.cf sed -e 's/^/# /' smtpfeed.mc >>smtpfeed.cf chmod 444 smtpfeed.cf ttyp1:makoto@palermo 12:22:16/070401(...cf/cf)> ls -l smtp* -r--r--r-- 1 makoto wheel 59923 Apr 1 12:22 smtpfeed.cf -rw-r--r-- 1 makoto wheel 1029 Apr 1 12:22 smtpfeed.mc ttyp1:makoto@palermo 12:22:20/070401(...cf/cf)> ls /etc/mail aliases aliases.db ttyp1:makoto@palermo 12:22:38/070401(...cf/cf)> sudo cp smtpfeed.?? /etc/mail Password: ttyp1:makoto@palermo 12:22:50/070401(...cf/cf)> cd /etc/mail ttyp1:makoto@palermo 12:22:53/070401(/etc/mail)> sudo ln -s smtpfeed.cf sendmail.cf

test

ttyp1:makoto@palermo 12:23:04/070401(/etc/mail)> sudo /usr/pkg/libexec/sendmail/sendmail -bt -d0.1 -v Version 8.13.8 Compiled with: DNSMAP LOG MAP_REGEX MATCHGECOS MILTER MIME7TO8 MIME8TO7 NAMED_BIND NETINET NETINET6 NETISO NETUNIX NEWDB NIS PIPELINING SCANF SOCKETMAP TCPWRAPPERS USERDB XDEBUG /etc/mail/sendmail.cf: line 96: fileclass: cannot open '/etc/mail/local-host-names': No such file or directory ============ SYSTEM IDENTITY (after readcf) ============ (short domain name) $w = palermo (canonical domain name) $j = palermo.ki.nu (subdomain name) $m = ki.nu (node name) $k = palermo ======================================================== ADDRESS TEST MODE (ruleset 3 NOT automatically invoked) Enter <ruleset> <address> > ^D

起動準備

ttyp1:makoto@palermo 12:30:43/070401(/etc/mail)> sudo cp /usr/pkg/share/examples/rc.d/sm smbd* smmsp* ttyp1:makoto@palermo 12:30:43/070401(/etc/mail)> sudo cp -p /usr/pkg/share/examples/rc.d/sendmail /etc/rc.d Password: ttyp1:makoto@palermo 12:31:26/070401(/etc/mail)> sudo cp -p /usr/pkg/share/examples/rc.d/smmsp /etc/rc.d ttyp1:makoto@palermo 12:31:32/070401(/etc/mail)> vi /etc/rc.conf ttyp1:makoto@palermo 12:31:45/070401(/etc/mail)> vi /etc/rc.conf ttyp1:makoto@palermo 12:32:08/070401(/etc/mail)> suod vi /etc/rc.conf suod: Command not found. ttyp1:makoto@palermo 12:32:10/070401(/etc/mail)> sudo vi /etc/rc.conf ttyp1:makoto@palermo 12:32:23/070401(/etc/mail)> tail -2 /etc/rc.conf sendmail=YES smmsp=YES ttyp1:makoto@palermo 12:32:30/070401(/etc/mail)>
続きは http://www.ki.nu/software/pkgsrc/sendmail.html にて: