To configure POP-before-SMTP for qmail+vpopmail you
should make the following steps:
Add to your rc.local (or other startup script) the following lines:
/hsphere/shared/bin/tcpserver -H -R 0 pop-3 \
/hsphere/local/var/qmail/bin/qmail-popup your.domainname \
/hsphere/local/var/vpopmail/bin/vchkpw \
/hsphere/local/var/qmail/bin/qmail-pop3d Maildir &
and
/hsphere/shared/bin/tcpserver -H -x
/hsphere/local/var/vpopmail/etc/tcp.smtp.cdb \ -u [id_qmaild_user]
-g
[id_nofiles_group] 0 smtp
/hsphere/local/var/qmail/bin/qmail-smtpd 2>&1| \
/hsphere/local/var/qmail/bin/splogger smtpd 3 &
[-H] options is needed so that tcpserver would not try
to lookup remote host name in DNS (as it might cause the timeout
or delays when sending mail from some IPs). This option may be substituted
for [-t 1]. This will result in an attempt to lookup the
host name, yet it will timeout in one second, thus minimizing the
delay and timeout posibility.
Next, make sure that smtpd is not in inetd.conf.
Also, to add a valid host (IP) that can relay mail
through this mail server, go through the following steps:
Add this IP into tcp.smtp file in the following format:
1.2.3.6:allow,RELAYCLIENT=""
The above line allow clients from 1.2.3.6.
The below line allow client from 127.* subnetwork
127.:allow,RELAYCLIENT=""
Type and run: tcprules ${path}tcp.smtp.cdb ${path}tcp.smtp.tmp
< ${path}tcp.smtp
You should add the following line to the crontab :
30 * * * * /hsphere/local/var/vpopmail/bin/clearopensmtp
to clear IP database every hour (or another time period).
Restart these services.
|