[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: More questions on smail configuration for SMTP/PPP



jebert@earthlink.net (Jeffrey Ebert)  wrote on 10.02.96 in <[🔎] 311CFCC2.69E4A280@earthlink.net>:

> messages with bad return path information, you should work on creating a
> configuration that works for most, if not all, ISP configurations. And I
> would still like to be able to send mail to postmaster@ISP.com!

I *think* I have it working now, but I'd like to see it handle some real  
mail - it's somewhat involved.

Anyway, what I have done is approximately this:

Situation:

We have a small network with (as far as mail is concerned) a Novell server  
running the Mercury mailer, Novell clients using PMail, and a Linux  
machine doing all external mail, which involves both direct UUCP  
connections to some people's home machines, as well as dial-up IP to an  
Internet provider where we have a single user account with dynamic IP  
address (T-Online). All our local IP addresses and domain names, including  
the machines connected via UUCP, are private and not useable in the  
outside world, and T-Online wouldn't route them anyway. They have a POP3  
and SMTP server and mangle the From: header of any mail we send them, but  
that's not quite enough, of course. (They also firewall all foreign SMTP  
ports.)

Solution:

Whenever there's a mail destined outside our private network, smail uses a  
smarthost entry with a pipe router.
This pipes the mail, in bsmtp format, first through sed, where I mangle  
header and envelope (using 1,/^$/ s/.../.../ statements - I rely on smail  
never sending me more than one mail and accept bad mangling in exotic  
cases like resent mail; this could of course be made much more  
intelligent), then it gets piped into rsmtp (another incarnation of  
smail).
rsmtp gets the -Q flag to make sure it queues the mail; otherwise we'd  
have to wait for rmail to try a complete delivery first.
The smarthost also contains a path entry a!mailhost; as far as I can tell,  
this a is never used by anything, but the mailhost gets put into the  
envelope.
This is usefull when the mail gets re-fed into smail; I use the "test"  
example from the man pages to route them to SMTP delivery.

Next, the machine waits for when the phone calls get cheap in the night;  
it then calls T-Online (via a diald that's mostly blocked, but that's  
another story), and starts a runq to deliver the mails.
It also calls popclient to receive any mails waiting there. These then get  
sorted with procmail in an attempt to find out who gets which mail,  
looking at comments in the To: field, with everything unidentifiable goes  
to our secretary to hand-sort. This is approximately
"formail -ds <received-mail procmail".

Hopefully, I've not overlooked anything critical; anyway, I currently make  
a backup copy of every incoming mail :-)

If it still works after a week or so, we might make this into a sort of  
mini-HOWTO.


MfG Kai


Reply to: