Доброго времени суток!
Господа, может кто подскажет, стоит sendmail к нему прикручена авторизация через SASL (все это прекрасно). Но мне необходимо ограничить диапазон ип клиентов, которые могут отправлять через SMTP почту. Т.е. чтобы кроме проверки на логин/пароль была еще и проверка на хост.
Может я что-то не улавливаю - но через access это не решить так как в нем устанавливается RELAY, а его мне тоже не нужно.Есть идеи как это можно осуществить?
кхм... пришлось разбираться самому
итак: может кому пригодится, правим sendmail.cf
1. добавляем строку F{LocalIP} /etc/mail/LocalIP
2. ищем SRcpt_ok, там правим правило
R$* $| $={TrustAuthMech} $# RELAY
на
R$* $| $={TrustAuthMech} $:$>check_rcpt_bbn $13. после набора правил Rcpt_ok создаем еще 2 набора
Scheck_rcpt_bbn
R$+ $: $(dequote "" $&{client_addr} $) $| $1
R0 $| $* $# RELAY
R$={LocalIP}$* $| $* $# RELAY
R$* $| $* $: $>3 $2
R$+ $:$>removelocal $1
R$*<@$*>$* $#error $@ 5.7.1 $: 550 Sorry! Relay only bbn-networkSremovelocal
R$*<@$=w.>$* $: $>removelocal $>3 $1 $3
R$*<@$*>$* $@ $1<@$2>$3
R$- $: $>3 $(dequote $1 $)
R$*<@$*>$* $: $>removelocal $1<@$2>$3сохраняем sendmail.cf
файл /etc/mail/LocalIP в формате:
134.245
127.0.0.1за основу взято
http://www.informatik.uni-kiel.de/~ca/email/check.html#check...