From: Franta Hanzlik on
On backup server (with sendmail 8.14.3) I want accept mails only for valid
recipients in a given domain, and reject all others. List of valid recipients
I can have e.g. in text file as
user1
user2
....
userN
alias1
....
aliasM

Eventually, when server acts as backup for multiple domains, this list
items can be in form userX(a)domain1 .. aliasY(a)domainNN

Has this request any simple solution? I do not want take all mails for
these domains ( *@domain ), as main (highest MX priority) mailserver
refuse these with nonexistent users.

Thanks in advance
Fr. Hanzlik
From: D. Stussy on
"Franta Hanzlik" <franta(a)hanzlici.cz> wrote in message
news:hhp00e$r7p$1(a)ns.felk.cvut.cz...
> On backup server (with sendmail 8.14.3) I want accept mails only for
valid
> recipients in a given domain, and reject all others. List of valid
recipients
> I can have e.g. in text file as
> ....

LDAP.


From: Andrzej Adam Filip on
Franta Hanzlik <franta(a)hanzlici.cz> wrote:
> On backup server (with sendmail 8.14.3) I want accept mails only for valid
> recipients in a given domain, and reject all others. List of valid recipients
> I can have e.g. in text file as
> user1
> user2
> ...
> userN
> alias1
> ...
> aliasM
>
> Eventually, when server acts as backup for multiple domains, this list
> items can be in form userX(a)domain1 .. aliasY(a)domainNN
>
> Has this request any simple solution? I do not want take all mails for
> these domains ( *@domain ), as main (highest MX priority) mailserver
> refuse these with nonexistent users.
>
> Thanks in advance
> Fr. Hanzlik

1) You can list valid addresses in the domain in virtusertable and
reject via virtusertable remaining addresses in the domain.
Search group archive for _VIRTUSER_STOP_ONE_LEVEL_RECURSION_
[ e.g.vian google-groups ]
2) access table can be used in a similar way
3) You can use LDAP based routing to get benefits of LDAP replication
and ability to support easily multiple secondary MXes (or multiple
email gateways):
http://www.sendmail.org/m4/ldap_routing.html

--
[pl>en Andrew] Andrzej Adam Filip : anfi(a)onet.eu : Andrzej.Filip(a)gmail.com
The avocation of assessing the failures of better men can be turned
into a comfortable livelihood, providing you back it up with a Ph.D.
-- Nelson Algren, "Writers at Work"
From: Franta Hanzlik on
Andrzej Adam Filip wrote:
> Franta Hanzlik<franta(a)hanzlici.cz> wrote:
>> On backup server (with sendmail 8.14.3) I want accept mails only for valid
>> recipients in a given domain, and reject all others. List of valid recipients
>> I can have e.g. in text file as
>> user1
>> user2
>> ...
>> userN
>> alias1
>> ...
>> aliasM
>>
>> Eventually, when server acts as backup for multiple domains, this list
>> items can be in form userX(a)domain1 .. aliasY(a)domainNN
>>
>> Has this request any simple solution? I do not want take all mails for
>> these domains ( *@domain ), as main (highest MX priority) mailserver
>> refuse these with nonexistent users.
>>
>> Thanks in advance
>> Fr. Hanzlik
>
> 1) You can list valid addresses in the domain in virtusertable and
> reject via virtusertable remaining addresses in the domain.
> Search group archive for _VIRTUSER_STOP_ONE_LEVEL_RECURSION_
> [ e.g.vian google-groups ]
> 2) access table can be used in a similar way
> 3) You can use LDAP based routing to get benefits of LDAP replication
> and ability to support easily multiple secondary MXes (or multiple
> email gateways):
> http://www.sendmail.org/m4/ldap_routing.html
>

Hello Andrzej,

thank for Your reccomendations. Finally I solve this using virtusertable
- I'm not maintainer of these primary (highest priority) mailservers,
their administrators not uses LDAP, total number of users, for which I'm
doing backup MX, is less than 300 with very sporadic mailaddress changes.

And regarding use of access table - I somewhere read, that using this
method is limited, as then some other functions are not working (RBL's,
milters, maybe yet anothers). Not sure when it aplies for some older
sendmail versions or at all.

And with regard to "_VIRTUSER_STOP_ONE_LEVEL_RECURSION_" sendmail.mc
feature - I tried some googling, but I not found no accurate description
for this. And in my case things seems working well in both, whether I have
define(`_VIRTUSER_STOP_ONE_LEVEL_RECURSION_')
in my sendmail.mc, or no.
Can You please clarify (or send some reference to) use this option?

Thanks, Franta
From: Andrzej Adam Filip on
Franta Hanzlik <franta(a)hanzlici.cz> wrote:
> Andrzej Adam Filip wrote:
>> Franta Hanzlik<franta(a)hanzlici.cz> wrote:
>>> On backup server (with sendmail 8.14.3) I want accept mails only for valid
>>> recipients in a given domain, and reject all others. List of valid recipients
>>> I can have e.g. in text file as
>>> user1
>>> user2
>>> ...
>>> userN
>>> alias1
>>> ...
>>> aliasM
>>>
>>> Eventually, when server acts as backup for multiple domains, this list
>>> items can be in form userX(a)domain1 .. aliasY(a)domainNN
>>>
>>> Has this request any simple solution? I do not want take all mails for
>>> these domains ( *@domain ), as main (highest MX priority) mailserver
>>> refuse these with nonexistent users.
>>>
>>> Thanks in advance
>>> Fr. Hanzlik
>>
>> 1) You can list valid addresses in the domain in virtusertable and
>> reject via virtusertable remaining addresses in the domain.
>> Search group archive for _VIRTUSER_STOP_ONE_LEVEL_RECURSION_
>> [ e.g.vian google-groups ]
>> 2) access table can be used in a similar way
>> 3) You can use LDAP based routing to get benefits of LDAP replication
>> and ability to support easily multiple secondary MXes (or multiple
>> email gateways):
>> http://www.sendmail.org/m4/ldap_routing.html
>
> thank for Your reccomendations. Finally I solve this using virtusertable
> - I'm not maintainer of these primary (highest priority) mailservers,
> their administrators not uses LDAP, total number of users, for which I'm
> doing backup MX, is less than 300 with very sporadic mailaddress changes.
>
> And regarding use of access table - I somewhere read, that using this
> method is limited, as then some other functions are not working (RBL's,
> milters, maybe yet anothers). Not sure when it aplies for some older
> sendmail versions or at all.
>
> And with regard to "_VIRTUSER_STOP_ONE_LEVEL_RECURSION_" sendmail.mc
> feature - I tried some googling, but I not found no accurate description
> for this. And in my case things seems working well in both, whether I have
> define(`_VIRTUSER_STOP_ONE_LEVEL_RECURSION_')
> in my sendmail.mc, or no.
> Can You please clarify (or send some reference to) use this option?

a) I have used _VIRTUSER_STOP_ONE_LEVEL_RECURSION_ mainly as good keyword
for searching the newsgroups archives
[e.g. via http://groups.google.com/advanced_search ] - "your problem"
has been discussed "a few times+".

b) _VIRTUSER_STOP_ONE_LEVEL_RECURSION_ is "documented" in cf/m4/proto.m4
file in sendmail distribution

ifdef(`_VIRTUSER_STOP_ONE_LEVEL_RECURSION_',`dnl
dnl this is not a documented option
dnl it stops looping in virtusertable mapping if input and output
dnl are identical, i.e., if address A is mapped to A.
dnl it does not deal with multi-level recursion

c) _VIRTUSER_STOP_ONE_LEVEL_RECURSION_ provides more preferred of two
ways to make virtusertable pass listed addresses without rewrites but
reject "all other/remaining" addresses in the domain.
Otherwise tricks like rewriting "user(a)example.net -> user(a)mail.example.net"
are required.

--
[pl>en Andrew] Andrzej Adam Filip : anfi(a)onet.eu : Andrzej.Filip(a)gmail.com
Open-Sendmail: http://open-sendmail.sourceforge.net/
Die, v.: To stop sinning suddenly.
-- Elbert Hubbard