�ȉ���FreeBSD���drac���g���� pop before smtp ���������܂��B ��
- FreeBSD 3.
- DRAC 1.10
- qpopper 3.0.1
drac�̓���
�܂� http://mail.cc.umanitoba.ca/drac/����drac.tar.Z����肵�܂��Bdrac�̃C���X�g�[��
�����s���ăp�b�P�[�W��W�J���܂��B���ꂩ��Makefile���ȉ��̂悤�� �ҏW���Ă��������B
tar zxvf drac.tar.Z �ҏW������ȉ��̂悤�ɂ���make���ăC���X�g�[�����܂��B
INSTALL = install EBIN = /usr/local/sbin MAN = /usr/local/man/man DEFS = -DSOCK_RPC -DFLOCK_LOCK -DGETHOST -DDASH_C CC = cc RANLIB = ranlib CFLAGS = $(DEFS) -g LDLIBS = TSTLIBS = -L. -ldrac RPCGENFLAGS = -I -C MANLIB = 3 MANADM = 8����ɂ����ŏo���オ����libdrac.a�� /usr/lib�ɃR�s�[���܂��B
$ make; # make install # make install-man
# cp libdrac.a /usr/lib qpopper�ւ̃p�b�`����
�œW�J�������ƂŁAqpopper3.0.1/popper/pop_pass.c���ȉ��悤�ɕҏW���܂��B
$ tar zxvf qpopper3.0.1.tar.Z �̉��Ɉȉ��̓��e��lj�����
/* * Initialize the last-message-accessed number */ p->last_msg = 0;����� popper/Makefile.in��
{ char *err; if (dracauth("localhost", inet_addr(p->ipaddr), &err) != 0) /* pop_log(p,POP_PRIORITY,err); */ pop_log (p,POP_PRIORITY,"",0,err); }�̂悤�� -ldrac��lj����Ă��������B
LIBS = @NETWORK_LIBS@ @KERBEROS_LIBS@ @DBM_LIBS@ @LIBS@ -ldrac ���̌�qpopper3.0.1/�̃f�B���N�g����
�o���オ���� popper��/etc/inetd.conf�ɓo�^���܂��B
$ configure $ makesendmail.cf�̍쐬
���Ɉȉ��̂悤��CF-3.7wpl1 ���g����sendmail.cf�����܂��B �܂�def�t�@�C�������܂��B ��(ariake.def)���̃t�@�C������������ƂŁA
#sendmail.def for kitakyu-techno-ctr.co.jp CF_TYPE=R8V8 OS_TYPE=bsd4.4 MY_DOMAIN='kitakyu-techno-ctr.co.jp' OFFIICIAL_NAME='ariake.kitakyu-techno-ctr.co.jp' FROM_ADDRESS='$m' ACCEPT_ADDRS='ariake.kitakyu-techno-ctr.co.jp' MAIL_RELAY_RESTRICTION=yes LOCAL_HOST_IPADDR='192.168.1'�����s����ariake.cf�����܂��B����Ɉȉ���>>�̕�����lj����܂��B �擪�̕����Ɉȉ��̓��e��lj�����
$ make ariake.cf����Ɉȉ��̓��e��lj����Ă��������B
# level 8 config file format V8/Berkeley >># dynamic relay authorization control map >>Kdrac btree /etc/mail/dracd"client address check..."�̕����͂Q�J������̂Œ��ӂ��Ă��������B �����ő}�����镔����R$*�Ƃ�R$+�̌��tab�����Ȃ���Ȃ�܂���B
# client address check -- accept messages from hosts within allowed domain R$={RoamIP}$* $| $* $| $* $| $* $@ $>Check_rcpt_roam $4 $| $5 R$* $| $*$={RoamDom} $| $* $| $* $@ $>Check_rcpt_roam $4 $| $5 R$={LocalIP}$* $| $* $| $* $| $* $@ $>Check_rcpt_inside $4 $| $5 R$* $| $*$={LocalDom} $| $* $| $* $@ $>Check_rcpt_inside $4 $| $5 R$={ClientIP}$* $| $* $| $* $| $* $@ $>Check_rcpt_inside $4 $| $5 R$* $| $*$={ClientDom} $| $* $| $* $@ $>Check_rcpt_inside $4 $| $5 R$* $| $* $| $* $| $* $: $>Check_rcpt_local $3 $| $4 remove client info R$@ OK destination is local >># allow recent POP/IMAP mail clients to relay >>R$* $: $&{client_addr} >>R$+ $: $(drac $1 $: ? $) >>R? $@ $#error $@ 5.7.1 $: 553 Relay operation rejected >>R$+ $@ $#OK R$* $@ $>Check_rcpt_outside $1 �K�v�ȃf�B���N�g���ƃt�@�C���̍쐬
/etc/mail�Ƃ����f�B���N�g�������݂��Ȃ���쐬����/etc/mail/dracd.allow���ȉ��̂悤�ɍ��
�����ŋL�q�����z�X�g����͂��炩����pop�T�[�o�Ɛڑ����Ă��Ȃ��Ă� smtp�ɃA�N�Z�X�ł���B
# dracd.allow: clients trusted by rpc.dracd # # The format of this file is one of more lines of # # netmask netaddr # Both netmask and netaddr must be dotted quads. # 255.255.255.0 192.168.1.0 255.255.255.255 127.0.0.1�v���O�����̋N��
portmap�������Ă��Ȃ�����炩���ߋN�����Ă����K�v������܂��B ������,rpc.dracd���N�����Ă��������B�����sendmail.cf�������������̂� kill����sendmail -bd -q30m �̂悤�ɍċN�����Ă��������B����m�F
$ telnet ariake smtp