sendmail woes

Matthew Carpenter matt
Mon May 17 11:43:54 PDT 2004


One language too much, yes...  I use the mc/m4 files located in
/usr/share/sendmail to do most of my sendmail.cf configuration.  It takes
a little learning, but you take a mc file and an m4 file and use the m4
utility to generate the .cf file....  unfortunately, I don't know the mc
code behind the sendmail.cf patches listed below.
If I'm not mistaken they are basically just to hack out the servername
from the to: field for the recipient.


On Mon, 3 Feb 2003 08:32:07 +0100
Roger Oberholtzer <roger at opq.se> wrote:

> Back at the office and time to get back to the pending sendmail
> question,
> 
> I have done all except the sendmail.cf rules. I was looking
> at those, and decided it was going to be one language too much. As in,
> my brain began to hurt. I will see what you have suggested below and see
> if it helps. Thanks for the pointers. I will let you know what happens.
> One question: the mail destined for the internal server is not addressed
> to in by the arriving messages. I want sendmail to send mail without a
> .forward(or even an entry in virtusertable to that machine),
> 
> On Mon, 27 Jan 2003 17:23:48 -0500
> Matthew Carpenter <matt at eisgr.com> wrote:
> 
> > (Hacked out of a message from my Sendmail guru)
> > 
> > relay-domains
> > mydomain.com
> > 
> > local-host-names
> > mydomain.com
> > 
> > virtusertable
> > @mydomain.com    %1 at internalserver.mydomain.com
> > abuse at mydomain.com       sally at internalserver.mydomain.com
> > customer.service at mydomain.com    jake at internalserver.mydomain.com
> > customer_service at mydomain.com    jake at internalserver.mydomain.com
> > 
> > 
> > Sendmail Hack
> > Modify the cd /usr/local/sendmail/smmta-8.10.0/cf/mailer/smtp.m4 file
> > to add the sendmail rule
> > 
> > #       Added to fix INTERNALSERVER virtuser problem
> > # user at internalserver.domain.mine ==> user at domain.mine
> > R$* < @ internalserver. $* > $* $: $1 < @ $2 > $3
> > #       End INTERNALSERVER hack
> > 
> > immediately after the 
> > 
> > #
> > #  envelope recipient rewriting --
> > #  also header recipient if not masquerading recipients
> > #
> > SEnvToSMTP=21
> > 
> > header lines, and before the
> > 
> > R$+                     $: $>PseudoToReal $1           
> > sender/recipient common
> > R$+                     $: $>MasqSMTP $1                qualify
> > unqual'ed names
> > R$* < @ *LOCAL* > $*    $: $1 < @ $j . > $2
> > 
> > rules in that section. Load, Save, and Deploy config.
> > 
> > The hack strips the LNOT28 out of the address when it forwards the
> > virtuser stuff to a back-end host. Without it you get addresses like
> > me at internalserver.mydomain.com upon delivery.
> > 
> > 
> > 
> > Hope this helps
> > 
> > 
> > On Fri, 24 Jan 2003 08:46:56 +0100
> > Roger Oberholtzer <roger at opq.se> wrote:
> > 
> > > 
> > > I have just moved a mail server to use sendmail (Caldera 3.1.1).
> > > 
> > > The machine 'should' forward all mail for a specific domain to an
> > > internal machine. OK. So I set up the mailertable to make this
> > > happen. That works.
> > > 
> > > BTW, none of the users should have have an account on this sendmail
> > > box.
> > > 
> > > Now, I have a few users in this domain who would prefer that their
> > > mail does not go to this internal machine, but is instead forwarded
> > > elsewhere.
> > > 
> > > This is where it breaks down for me. I tried the following:
> > > 
> > > 1. Use virtusertable for each specific user. It seems that if you
> > > use mailertable for a domain, sendmail does not look at
> > > virtusertable for any exceptions to the domain's rule. At least it
> > > acts that way. All mail for that domain goes where mailertable says,
> > > despite an entry in virtusertable.
> > > 
> > > 2. Only use virtusertable, adding a 'catch all' rule like:
> > > 
> > > 	@external	%1 at internal
> > > 
> > > to the end to pass all users without a preference to the internal
> > > machine.
> > > 
> > > This also seems to not work.
> > > 
> > > 3. Make a user account and then use /etc/aliases to move each one
> > > independently
> > > 
> > > 4. Make a $HOME/.forward file for each user who wants to deviate
> > > from the mailertable domain definition.
> > > 
> > > For points 3 and 4, sendmail will consider the setup. However, it
> > > will not forward any mail to the machine in mailertable. For those
> > > users, it considers them local and will attempt no more.  If that
> > > same user forwards mail to somewhere other than the place listed in
> > > mailertable, the mail happily gets forwarded.
> > > 
> > > Yikes. Need it be so complicated? All I wan is to be able to forward
> > > virtual users. The domain being forwarded is not the same as the
> > > name of any machines involved.
> > > 
> > > My local-host-names file lists localhost and the domain being
> > > forwarded.
> > > 
> > > As I do not want the users to have an account on the external
> > > machine, how'should' I have gone about this?
> 
> -- 
> +????????????????????????????+???????????????????????????????+
> ? Roger Oberholtzer          ?   E-mail: roger at opq.se        ?
> ? OPQ Systems AB             ?      WWW: http://www.opq.se/  ?
> ? Erik Dahlbergsgatan 41-43  ?    Phone: Int + 46 8   314223 ?
> ? 115 34 Stockholm           ?   Mobile: Int + 46 733 621657 ?
> ? Sweden                     ?      Fax: Int + 46 8   302602 ?
> +????????????????????????????+???????????????????????????????+
> _______________________________________________
> Linux-users mailing list
> Linux-users at linux-sxs.org
> Unsubscribe/Suspend/Etc ->
> http://www.linux-sxs.org/mailman/listinfo/linux-users


More information about the Linux-users mailing list