The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Sendmail: проверка адреса отправителя "
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Почта)
Изначальное сообщение [ Отслеживать ]

"Sendmail: проверка адреса отправителя "  +/
Сообщение от rusadmin (ok) on 09-Окт-10, 15:32 
Добрый день!
Есть ли возможность проверки адреса отправителя в на соответствие логину, указанному при авторизации? Больше всего интересует в пределах обслуживаемого домена mydomain.ru.
А при отправке сообщения в пределах обслуживаемого домена SendMail даже не утруждается потребовать логин\пароль... :( Только при релеинге

Привожу содержимое MC-файла, с которого генерился sendmail.cf

include(`../m4/cf.m4')
VERSIONID(`default setup for Slackware Linux')dnl
OSTYPE(`linux')dnl
define(`confPRIVACY_FLAGS', `authwarnings,novrfy,noexpn,restrictqrun')dnl
define(`confTO_IDENT', `0')dnl
define(`confAUTH_OPTIONS', `A')dnl
define(`confAUTH_MECHANISMS', `LOGIN PLAIN DIGEST-MD5 CRAM-MD5')dnl
TRUST_AUTH_MECH(`LOGIN PLAIN DIGEST-MD5 CRAM-MD5')dnl
FEATURE(`use_cw_file')dnl
FEATURE(`use_ct_file')dnl
FEATURE(`mailertable',`hash -o /etc/mail/mailertable.db')dnl
FEATURE(`virtusertable',`hash -o /etc/mail/virtusertable.db')dnl
FEATURE(`access_db', `hash -T<TMPF> /etc/mail/access')dnl
FEATURE(`blacklist_recipients')dnl
FEATURE(`local_procmail',`',`procmail -t -Y -a $h -d $u')dnl
FEATURE(`always_add_domain')dnl
FEATURE(`redirect')dnl
FEATURE(`require_rdns')
FEATURE(`badmx')
FEATURE(`dnsbl', `dul.ru', `"Yours IP " $&{client_addr} " are BlackListed by http://www.dul.ru"')dnl
FEATURE(`dnsbl', `dnsbl.njabl.org',`"SPAM - njabl.org"')dnl
FEATURE(`enhdnsbl', `bl.spamcop.net', `"Spam blocked see: http://spamcop.net/bl.shtml?"$&{client_addr}', `t')dnl
FEATURE(`dnsbl', `dsn.rfc-ignorant.org', `"Yours IP " $&{client_addr} " are BlackListed by http://www.rfc-ignorant.org"')dnl
INPUT_MAIL_FILTER(`spamassassin', `S=local:/var/run/spamass-milter.sock, F=T, T=C:15m;S:4m;R:4m;E:10m')
define(`confMILTER_MACROS_CONNECT',`b, j, _, {daemon_name}, {if_name}, {if_addr}')
define(`confMAX_MESSAGE_SIZE', `15728640')dnl
EXPOSED_USER(`root')dnl
LOCAL_DOMAIN(`localhost.localdomain')dnl
MAILER(local)dnl
MAILER(smtp)dnl

/etc/mail/local-host-names:
# names of hosts for which we receive email
mydomain.ru


за ранее спасибо за ответы

Высказать мнение | Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Sendmail: проверка адреса отправителя "  +/
Сообщение от rusadmin (ok) on 11-Окт-10, 14:02 
up
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

2. "Sendmail: проверка адреса отправителя "  +/
Сообщение от Medlar email(ok) on 12-Окт-10, 13:00 
> Есть ли возможность проверки адреса отправителя в на соответствие логину, указанному при
> авторизации? Больше всего интересует в пределах обслуживаемого домена mydomain.ru.

Попробуйте так - написано по образу и подобию рулсета Strust_auth

LOCAL_CONFIG
LOCAL_RULESETS
Slocal_check_mail

# ОТлупы пропускаем
R<>               $@ OK

# ПРоверяем, использовалась ли smtp-авторизация
R$*               $: < $&{auth_authen} > $1

# Тех, кто не использовал авторизацию, пропускаем.
R<>$*             $@ OK

# Из оставшихся юзеров выделяем юзеров домена mydomain.ru и попутно избавляемся от значения макроса < $&{auth_authen} >
R<$+><$+@mydomain.ru>      $:<$2>

# Остальных пропускаем
R<$+><$+>                $@ OK

# Подаем на вход 2 значения: имя юзера и имя, использованное для авторизации, и сравниваем их
R<$+> $| <$&{auth_authen}>     $@ identical
R$*                $#error $@ 5.7.1. $: "550 User " $1 " not allowed to act as " $&{auth_authen}


Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

3. "Sendmail: проверка адреса отправителя "  +/
Сообщение от rusadmin (ok) on 12-Окт-10, 14:57 
>[оверквотинг удален]
> R<$+><$+@mydomain.ru>      $:<$2>
> # Остальных пропускаем
> R<$+><$+>          
>     $@ OK
> # Подаем на вход 2 значения: имя юзера и имя, использованное для
> авторизации, и сравниваем их
> R<$+> $| <$&{auth_authen}>     $@ identical
> R$*          
>     $#error $@ 5.7.1. $: "550 User "
> $1 " not allowed to act as " $&{auth_authen}

спасибо, попробую
результат отпишу

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

4. "Sendmail: проверка адреса отправителя "  +/
Сообщение от rusadmin (ok) on 12-Окт-10, 15:42 
...
натупил, потом удалил)
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

5. "Sendmail: проверка адреса отправителя "  +/
Сообщение от Medlar email(ok) on 12-Окт-10, 15:47 
Сорри, исправьте
Slocal_check_mail на SLocal_check_mail

P.S. "Давненько не брал я в руки шашек!" (Чичиков с Ноздревым)

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

6. "Sendmail: проверка адреса отправителя "  +/
Сообщение от rusadmin (ok) on 12-Окт-10, 15:58 
> Сорри, исправьте
> Slocal_check_mail на SLocal_check_mail
> P.S. "Давненько не брал я в руки шашек!" (Чичиков с Ноздревым)

Поправил =)
Только стал почему то все письма рубить:
Oct 12 17:56:31 ns sm-mta[21549]: o9CBuU4M021549: ruleset=check_mail, arg1=<anton@mydom.ru>, relay=host-11.local [192.168.1.11], reject=550 5.0.0 <anton@mydom.ru>... User <anton> not allowed to act as anton

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

7. "Sendmail: проверка адреса отправителя "  +/
Сообщение от Medlar email(ok) on 12-Окт-10, 16:24 
Добавим вывод в лог:

LOCAL_CONFIG
Ksyslog syslog

LOCAL_RULESETS
Slocal_check_mail

# ОТлупы пропускаем
R<>               $@ OK

# ПРоверяем, использовалась ли smtp-авторизация
R$*               $: < $&{auth_authen} > $1
RS*               $: $(syslog mail:1: $1 $) $1

# Тех, кто не использовал авторизацию, пропускаем.
R<>$*             $@ OK

# Из оставшихся юзеров выделяем юзеров домена mydomain.ru и попутно избавляемся от значения макроса < $&{auth_authen} >
R<$+><$+@mydomain.ru>      $:<$2>
RS*               $: $(syslog mail:2: $1 $) $1

# Остальных пропускаем
R<$+><$+>                $@ OK

# Подаем на вход 2 значения: имя юзера и имя, использованное для авторизации, и сравниваем их
R<$+> $| <$&{auth_authen}>     $@ identical
RS*               $: $(syslog mail:3: $1 $) $1

# Исправление !!!
R<$+> $| <$+>                $#error $@ 5.7.1. $: "550 User " $1 " not allowed to act as " $&{auth_authen}

#  Добавляю контрольное правило
RS*               $: $(syslog mail:4: $1 $) $1

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

8. "Sendmail: проверка адреса отправителя "  +/
Сообщение от rusadmin (ok) on 12-Окт-10, 17:24 
Рабочий день закончился у нас, завтра отпишу результаты.
спасибо заранее
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

9. "Sendmail: проверка адреса отправителя "  +/
Сообщение от Medlar email(ok) on 12-Окт-10, 19:29 
У нас тоже :)
НО после наших предыдущих 4 праздничных дней можно и подольше поработать.
Итак, последняя редакция (т3р)
На этот раз протестировано на моей системе с той только разницей, что при совпадении выводится дополнительная запись в лог (без блокировок)

LOCAL_CONFIG
Ksyslog syslog

LOCAL_RULESETS
Slocal_check_mail

# ОТлупы пропускаем
R<>               $@ OK

# ПРоверяем, использовалась ли smtp-авторизация
R$*               $: < $&{auth_authen} > $1
RS*               $: $(syslog mail:1: $1 $) $1

# Тех, кто не использовал авторизацию, пропускаем.
R<>$*             $@ OK

# Из оставшихся юзеров выделяем юзеров домена mydomain.ru и попутно избавляемся от значения макроса < $&{auth_authen} >
R<$+><$+@mydomain.ru>      $:<$2>
RS*               $: $(syslog mail:2: $1 $) $1

# Остальных пропускаем
R<$+><$+>                $@ OK

# Исправление!!!
# Сейчас у нас в раб. области имя юзера.
# Сравниваем, совпадает ли оно с именем, использованным для авторизации
R<$&{auth_authen}>     $: $(syslog mail:IDENTICAL: <$1> $) <$1>
R<$&{auth_authen}>     $@ identical
RS*               $: $(syslog mail:3: $1 $) $1

# Исправление !!!
# Для отладки не используйте сразу правило блокировки:
R<$+>                $#error $@ 5.7.1. $: "550 User " $&f " not allowed to act as " $&{auth_authen}
# Сделайте просто вывод в лог:
R<$+>                 $: $(syslog mail:AСHTUNG: <$&f><$&{auth_authen}> $) <ACHTUNG>
R<ACHTUNG>            $@ OK

#  Добавляю контрольное правило - кто остался не охваченным моими правилами:
RS*               $: $(syslog mail:4: $1 $) $1

И вот те правила, которые были протестированы на моей системе, плюс вывод в лог:
R<>                $@ OK
R$+                $: < $&{auth_authen} > $1
R$*                $: $(syslog syslog:mail:ident:1 $1 $) $1
R<>$+                $: CONTINUE
R< $+ ><$+@anrb.ru>        $: <$2>
R<$+><$+>            $: CONTINUE
R$*                $: $(syslog syslog:mail:ident:2 $1 $) $1
R<$&{auth_authen}>        $: $(syslog syslog:mail:ident:3 IDENTICAL $) <IDENTICAL>
R<$+>                $: $(syslog syslog:mail:ident:4 <$1> $) <$1>
R$*                $: $(syslog syslog:mail:ident:5 $1 $)

1. Данные не совпадают:

Oct 12 20:43:17 mail sendmail[7225]: AUTH=server, relay=crazy.anrb.ru [1.8.0.6], authid=consiglio, mech=PLAIN, bits=0
Oct 12 20:43:18 mail sendmail[7225]: o9CEhHfg007225: syslog:mail:ident:1<consiglio><postmaster@anrb.ru>
Oct 12 20:43:18 mail sendmail[7225]: o9CEhHfg007225: syslog:mail:ident:2<postmaster>
Oct 12 20:43:18 mail sendmail[7225]: o9CEhHfg007225: syslog:mail:ident:4<postmaster>
Oct 12 20:43:18 mail sendmail[7225]: o9CEhHfg007225: syslog:mail:ident:5<postmaster>
Oct 12 20:43:18 mail sendmail[7225]: o9CEhHfg007225: from=<postmaster@anrb.ru>, size=349, class=0, nrcpts=1, msgid=<4CB4760A.3050400@anrb.ru>, proto=ESMTP, daemon=MTA, relay=crazy.anrb.ru [1.8.0.6]
Oct 12 20:43:18 mail sendmail[7227]: o9CEhHfg007225: to=<terrapin@anrb.ru>, ctladdr=<postmaster@anrb.ru> (1806/1968), delay=00:00:00, xdelay=00:00:00, mailer=local, pri=30674, dsn=2.0.0, stat=Sent

2. Данные совпадают:

Oct 12 20:43:33 mail sendmail[7233]: AUTH=server, relay=crazy.anrb.ru [1.8.0.6], authid=consiglio, mech=PLAIN, bits=0
Oct 12 20:43:33 mail sendmail[7233]: o9CEhX7b007233: syslog:mail:ident:1<consiglio><consiglio@anrb.ru>
Oct 12 20:43:33 mail sendmail[7233]: o9CEhX7b007233: syslog:mail:ident:2<consiglio>
Oct 12 20:43:33 mail sendmail[7233]: o9CEhX7b007233: syslog:mail:ident:3.IDENTICAL
Oct 12 20:43:33 mail sendmail[7233]: o9CEhX7b007233: syslog:mail:ident:4<IDENTICAL>
Oct 12 20:43:33 mail sendmail[7233]: o9CEhX7b007233: syslog:mail:ident:5<IDENTICAL>
Oct 12 20:43:33 mail sendmail[7233]: o9CEhX7b007233: from=<consiglio@anrb.ru>, size=339, class=0, nrcpts=1, msgid=<4CB47619.3040400@anrb.ru>, proto=ESMTP, daemon=MTA, relay=crazy.anrb.ru [1.8.0.6]
Oct 12 20:43:33 mail sendmail[7234]: o9CEhX7b007233: to=<terrapin@anrb.ru>, ctladdr=<consiglio@anrb.ru> (1806/1968), delay=00:00:00, xdelay=00:00:00, mailer=local, pri=30664, dsn=2.0.0, stat=Sent


P.S.1 Здесь опять-таки не учтены бездоменные и беcскобочные отправители. НО это легко подправить.
P.S.2. Спасибо за интересную задачку.
ПРо нее раньше часто спрашивали, но мне казалось, что так просто она не решается.
Помогли вспомнить, что такое sendmail.cf  - почти год не прикасалась.


Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

10. "Sendmail: проверка адреса отправителя "  +/
Сообщение от rusadmin (ok) on 13-Окт-10, 07:35 
Большое спасибо =)

Только вот одна проблема:
сильно туго с синтаксисом sendmail.cf...
Если вас не затруднит, не могли бы Вы написать набор правил уже с правилом блокировки как в последнем посте. Я запутался....

R<>               $@ OK
R$*               $: < $&{auth_authen} > $1
RS*               $: $(syslog mail:1: $1 $) $1
R<>$*             $@ OK
R<$+><$+@mydomain.ru>      $:<$2>
RS*               $: $(syslog mail:2: $1 $) $1
R<$+><$+>                $@ OK
R<$&{auth_authen}>     $: $(syslog mail:IDENTICAL: <$1> $) <$1>
R<$&{auth_authen}>     $@ identical
RS*               $: $(syslog mail:3: $1 $) $1

# Можно так? С отлупом и в лог?
R<$+>                 $: $(syslog mail:AСHTUNG: <$&f><$&{auth_authen}> $) <ACHTUNG>

R<$+>                $#error $@ 5.7.1. $: "550 User " $&f " not allowed to act as " $&{auth_authen}

RS*               $: $(syslog mail:4: $1 $) $1

Такой набор правил должен получиться в результате?

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

11. "Sendmail: проверка адреса отправителя "  +/
Сообщение от Medlar email(ok) on 13-Окт-10, 12:11 
ТОгда исправление:

> # Можно так? С отлупом и в лог?

R<$+>                $: $(syslog mail:AСHTUNG: <$&f><$&{auth_authen}> $) <ACHTUNG>
R<ACHTUNG>           $#error $@ 5.7.1. $: "550 User " $&f " not allowed to act as " $&{auth_authen}
RS*               $: $(syslog mail:4: $1 $) $1

Хотя какой смысл в этом случае делать доп вывод в лог, если отлуп так и так будет записан?


Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

12. "Sendmail: проверка адреса отправителя "  +/
Сообщение от rusadmin (ok) on 13-Окт-10, 17:04 
Ну чтото совсем мне не везет с этими рулесетами:(

Добавил правила

LOCAL_CONFIG
Ksyslog syslog
LOCAL_RULESETS
SLocal_check_mail

R<>     $@ OK

R$*     $: < $&{auth_authen} > $1
RS*     $: $(syslog mail:1: $1 $) $1

R<>$*   $@ OK

R<$+><$+@tfoms.ru>      $:<$2>
RS*     $: $(syslog mail:2: $1 $) $1

R<$+><$+>       $@ OK

R<$&{auth_authen}>      $: $(syslog mail:IDENTICAL: <$1> $) <$1>
R<$&{auth_authen}>      $@ identical
RS*     $: $(syslog mail:3: $1 $) $1

R<$+>   $: $(syslog mail:AСHTUNG: <$&f><$&{auth_authen}> $) <ACHTUNG>
R<ACHTUNG>      $#error $@ 5.7.1. $: "550 User " $&f " not allowed to act as " $&{auth_authen}
RS*     $: $(syslog mail:4: $1 $) $1


при запуске Sendmail ругается

Starting sendmail MTA daemon:  /usr/sbin/sendmail -L sm-mta -bd -q25m
554 5.0.0 /etc/mail/sendmail.cf: line 1785: replacement $1 out of bounds
554 5.0.0 /etc/mail/sendmail.cf: line 1785: replacement $1 out of bounds
554 5.0.0 /etc/mail/sendmail.cf: line 1790: replacement $1 out of bounds
554 5.0.0 /etc/mail/sendmail.cf: line 1790: replacement $1 out of bounds
554 5.0.0 /etc/mail/sendmail.cf: line 1794: replacement $1 out of bounds
554 5.0.0 /etc/mail/sendmail.cf: line 1794: replacement $1 out of bounds
554 5.0.0 /etc/mail/sendmail.cf: line 1796: replacement $1 out of bounds
554 5.0.0 /etc/mail/sendmail.cf: line 1796: replacement $1 out of bounds
554 5.0.0 /etc/mail/sendmail.cf: line 1800: replacement $1 out of bounds
554 5.0.0 /etc/mail/sendmail.cf: line 1800: replacement $1 out of bounds

Пожалуйста, подскажите, может я напутал что то? Табуляции ставил там, где "длинные" пробелы
Понимаю что достал уже...

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

13. "Sendmail: проверка адреса отправителя "  +/
Сообщение от Medlar email(ok) on 14-Окт-10, 13:20 
Сорри за задержку с ответом.

Эххх, молодость-молодость ...
А показать 1785 1790 строки и далее по тексту не судьба ?

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

14. "Sendmail: проверка адреса отправителя "  +/
Сообщение от rusadmin (ok) on 14-Окт-10, 15:50 
Если я все правильно понял, то вот эти строки из sendmail.cf


SLocal_check_mail

R<>     $@ OK

R$*     $: < $&{auth_authen} > $1
RS*     $: $(syslog mail:1: $1 $) $1

R<>$*   $@ OK

R<$+><$+@tfoms.ru>      $:<$2>
RS*     $: $(syslog mail:2: $1 $) $1

R<$+><$+>       $@ OK

R<$&{auth_authen}>      $: $(syslog mail:IDENTICAL: <$1> $) <$1>
R<$&{auth_authen}>      $@ identical
RS*     $: $(syslog mail:3: $1 $) $1

R<$+>   $: $(syslog mail:AСHTUNG: <$&f><$&{auth_authen}> $) <ACHTUNG>
R<ACHTUNG>      $#error $@ 5.7.1. $: "550 User " $&f " not allowed to act as " $&{auth_authen}
RS*     $: $(syslog mail:4: $1 $) $1
#^L

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

15. "Sendmail: проверка адреса отправителя "  +/
Сообщение от Medlar email(ok) on 14-Окт-10, 17:10 
неужели трудно написать

строка №1785 в sendmail.cf - такая-то
1790 - такая-то и так далее ?

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

16. "Sendmail: проверка адреса отправителя "  +/
Сообщение от rusadmin (ok) on 14-Окт-10, 17:25 
> неужели трудно написать
> строка №1785 в sendmail.cf - такая-то
> 1790 - такая-то и так далее ?

1780 SLocal_check_mail
1781
1782 R<>     $@ OK
1783
1784 R$*     $: < $&{auth_authen} > $1
1785 RS*     $: $(syslog mail:1: $1 $) $1
1786
1787 R<>$*   $@ OK
1788
1789 R<$+><$+@tfoms.ru>      $:<$2>
1790 RS*     $: $(syslog mail:2: $1 $) $1
1791
1792 R<$+><$+>       $@ OK
1793
1794 R<$&{auth_authen}>      $: $(syslog mail:IDENTICAL: <$1> $) <$1>
1795 R<$&{auth_authen}>      $@ identical
1796 RS*     $: $(syslog mail:3: $1 $) $1
1797
1798 R<$+>   $: $(syslog mail:AСHTUNG: <$&f><$&{auth_authen}> $) <ACHTUNG>
1799 R<ACHTUNG>      $#error $@ 5.7.1. $: "550 User " $&f " not allowed to act as " $&{auth_authen}
1800 RS*     $: $(syslog mail:4: $1 $) $1

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

17. "Sendmail: проверка адреса отправителя "  +/
Сообщение от Medlar email(ok) on 14-Окт-10, 19:29 
ничего не понимаю. У меня же все сработало!
Какая у вас версия sendmail?
Уберите-ка все строки с syslog, пересоберите конфиг и рестартуйте sendmail.
Что получится?
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

18. "Sendmail: проверка адреса отправителя "  +/
Сообщение от rusadmin (ok) on 19-Окт-10, 09:47 
> ничего не понимаю. У меня же все сработало!
> Какая у вас версия sendmail?
> Уберите-ка все строки с syslog, пересоберите конфиг и рестартуйте sendmail.
> Что получится?

Пробовал убирать, все также, только при запуске меньше строк в ошибки вываливает.
Сегодня вечером буду пробовать еще раз.

З.Ы. Сообщение отправлено только с целью обозначиться что я не потерялся;) Спасибо за терпение

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

19. "Sendmail: проверка адреса отправителя "  +/
Сообщение от Medlar email(ok) on 19-Окт-10, 13:19 
Все, нашла ошибку: в левой части правил вместо знака доллара в строках с syslog у меня буква S (copy-past ).

R<>               $@ OK

R$*               $: < $&{auth_authen} > $1
R$*               $: $(syslog mail:1: $1 $) $1
R<>$*             $@ OK
R<$+><$+@mydomain.ru>      $:<$2>
R$*               $: $(syslog mail:2: $1 $) $1
R<$+><$+>                $@ OK
R<$&{auth_authen}>     $: $(syslog mail:IDENTICAL: <$1> $) <$1>
R<$&{auth_authen}>     $@ identical
R$*               $: $(syslog mail:3: $1 $) $1

R<$+>                $: $(syslog mail:AСHTUNG: <$&f><$&{auth_authen}> $) <ACHTUNG>
R<ACHTUNG>           $#error $@ 5.7.1. $: "550 User " $&f " not allowed to act as " $&{auth_authen}
R$*               $: $(syslog mail:4: $1 $) $1

ПРобуйте.
И не рефлексируйте, плиз, по поводу терпения и прочего:
эта задачка мне ОЧЕНЬ ИНТЕРЕСНА!

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

20. "Sendmail: проверка адреса отправителя "  +/
Сообщение от rusadmin (ok) on 19-Окт-10, 18:08 
Заработало =)
Есть еще вопрос: можно ли требовать авторизацию у всех, кто отправляет почту внутри домена? Если отправлять на любой внешний почтовик  - авторизация требуется, а если на mydomain.ru - не требует :(

Женская интуиция подсказывает мне что нужно только поправить предложенные Вами правила....

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

21. "Sendmail: проверка адреса отправителя "  +/
Сообщение от Medlar email(ok) on 19-Окт-10, 18:19 
> Заработало =)

Уффф, спасибо за добрую весть!
Терпеть не могу необъяснимые непонятки!

> Есть еще вопрос: можно ли требовать авторизацию у всех, кто отправляет почту
> внутри домена? Если отправлять на любой внешний почтовик  - авторизация
> требуется, а если на mydomain.ru - не требует :(

http://linux.ufaras.ru/sendmail.html#23

Оно?

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

22. "Sendmail: проверка адреса отправителя "  +/
Сообщение от rusadmin (ok) on 19-Окт-10, 18:23 
>> Заработало =)
> Уффф, спасибо за добрую весть!
> Терпеть не могу необъяснимые непонятки!
>> Есть еще вопрос: можно ли требовать авторизацию у всех, кто отправляет почту
>> внутри домена? Если отправлять на любой внешний почтовик  - авторизация
>> требуется, а если на mydomain.ru - не требует :(
> http://linux.ufaras.ru/sendmail.html#23
> Оно?

Именно! Спасибо
Мне с Вами просто повезло! ;)

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

23. "Sendmail: проверка адреса отправителя "  +/
Сообщение от rusadmin (ok) on 20-Окт-10, 08:02 
>>> Заработало =)
>> Уффф, спасибо за добрую весть!
>> Терпеть не могу необъяснимые непонятки!
>>> Есть еще вопрос: можно ли требовать авторизацию у всех, кто отправляет почту
>>> внутри домена? Если отправлять на любой внешний почтовик  - авторизация
>>> требуется, а если на mydomain.ru - не требует :(
>> http://linux.ufaras.ru/sendmail.html#23
>> Оно?
> Именно! Спасибо
> Мне с Вами просто повезло! ;)

Еще вопрос: получается, если представиться другим адресом (другой существующий в природе домен) - сервер принимает сообщение.
Можно от этого "эффекта" избавится? Вы писали про нечто подобное:
>>P.S.1 Здесь опять-таки не учтены бездоменные и беcскобочные отправители. НО это легко подправить.

Бездоменных отправителей сервер и так "отбивает" с сообщением Domain name required for sender address username.


Мысли вслух:
На сколько я понимаю в local_check_mail попадают только те письма, что отправлены "в пределах одного сервера" (на локальный домен), а значит можно не отлавливать только с  mydomain.ru?


Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

24. "Sendmail: проверка адреса отправителя "  +/
Сообщение от Medlar email(ok) on 20-Окт-10, 12:12 
> Еще вопрос: получается, если представиться другим адресом (другой существующий в природе
> домен) - сервер принимает сообщение.

Да, потому что задача была поставлена так:
Есть ли возможность проверки адреса отправителя в на соответствие логину, указанному при авторизации? Больше всего интересует в пределах обслуживаемого домена mydomain.ru.

> Можно от этого "эффекта" избавится?

тогда давайте определим, что есть "в пределах данного домена"
Какой критерий будет главным?
Сеть, доменное имя или обязательно использование адресов отправителей только вышеозначенного локального домена при использовании smtp-auth.

Вы писали про нечто подобное:
>>>P.S.1 Здесь опять-таки не учтены бездоменные и беcскобочные отправители. НО это легко подправить.
> Бездоменных отправителей сервер и так "отбивает" с сообщением Domain name required for
> sender address username.

Да, но просто это можно сделать раньше.


> Мысли вслух:
> На сколько я понимаю в local_check_mail попадают только те письма, что отправлены
> "в пределах одного сервера" (на локальный домен), а значит можно не
> отлавливать только с  mydomain.ru?

В Local_check_mail попадают все письма.
Слово LOcal здесь означает лишь то, что это ваши локальные правила, а не глобальные правила разработчиков.


Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

25. "Sendmail: проверка адреса отправителя "  +/
Сообщение от rusadmin (ok) on 20-Окт-10, 15:59 
Да, похоже я перегибаю с этим. Спасибо =)
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

26. "Sendmail: проверка адреса отправителя "  +/
Сообщение от Medlar email(ok) on 20-Окт-10, 16:08 
Не поняла ?
Вот это строка действительно пропускает всех, кто не в вашем почтовом домене
R<$+><$+>       $@ OK
С этим надо что-то делать.
Я предлагаю запретить авторизацию в сочетании с чужими email адресами отправителей
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

27. "Sendmail: проверка адреса отправителя "  +/
Сообщение от rusadmin (ok) on 27-Окт-10, 11:45 
> Не поняла ?
> Вот это строка действительно пропускает всех, кто не в вашем почтовом домене
> R<$+><$+>       $@ OK
> С этим надо что-то делать.
> Я предлагаю запретить авторизацию в сочетании с чужими email адресами отправителей

Как это можно реализовать?

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

28. "Sendmail: проверка адреса отправителя "  +/
Сообщение от Medlar email(ok) on 01-Ноя-10, 16:46 
http://linux.ufaras.ru/sendmail2.html#12.2
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру