No subject
Matthew Kaufman
matthew at scruz.net
Tue Jul 15 18:38:31 UTC 1997
Original message <Pine.BSI.3.96.970715210717.373B-100000 at duncan.nac.net>
From: Alex Rubenstein <alex at nac.net>
Date: Jul 15, 21:07
Subject:
>
>
>
> has anyone hacked QMail or Sendmail so that it could act as a mail server
> without actually having accounts on it?
Yes.
>
> The idea that I have is that when a user gets mail (ala SMTP connection
> coming in), or the user checks mail (ala POP connection coming in), the
> mail server (Qmail, Sendmail, whatever) could make an ODBC/SQL call to a
> NT Server running MS-SQL (doesn't really matter, as it is a pure ODBC
> call). Has anyone done anything like this? Just curious. Thanks in
> advance. Pointers would be good also.
We have a modified:
sendmail
mail.local
popd
all of which verify accounts against our internal database (same one
which handles Radius queries and which the web/ftp server uses to do
authentication and transfer limit quotas... in our case, a custom-written
database package that keeps local copies of all of the data, and can read
it in a single disk seek, so there's no problems if the network to the
database server is ill)
there's only about a dozen lines of code in each (usually the fastest
solution is to have a routine which accesses the database, and then fills
in a fake passwd struct as would be returned by getpwent)
nice thing is that you can build in things like "allow mail to arrive,
but return special failure code when user connects to pop server" to
deal with "customer exists but hasn't paid for >45 days", and even more
clever... "forward this mail to this other address for 30 days, and then
bounce thereafter"
only hint to be had is that even though it feels like modifying mail.local
should be enough, sendmail ALSO checks to see if the user exists on the
system before asking mail.local to do the delivery, so you need to hack both
of them.
we've investigated making the same hacks to both MMDF and qmail, and these
appear to be equally trivial.
-matthew kaufman
matthew at scruz.net
More information about the NANOG
mailing list