Доки читал, но про синтаксис правил написания sendmail.mc ничего толкового не нашел... подскажите, пожалуста, хоть где искать.
Интересует вот такая конструкция:
...
LOCAL_RULESETS
Kstorage macro
HTo: $>CheckTo
HCC: $>CheckTo
HBCC: $>CheckTo
SCheckTo
R$* $: $(storage {Spam} $@ OK $) $1
R$*.energy.gov.ua$* $: $(storage {Spam} $@ OK $) $1
Scheck_eoh
R$* $: < $&{Spam} >
R$* $: $(storage {Spam} $) $1
R< $+ > $@ OK
R$* $#discard $: discard
...
я так понимаю нужно добавить:
HFrom: $>CheckFrom
и
SCheckFrom
<а здесь правило> но как его написать ?
Спасибо.
>Доки читал, но про синтаксис правил написания sendmail.mc ничего толкового не нашел...
>подскажите, пожалуста, хоть где искать.
>Интересует вот такая конструкция:
>...
>LOCAL_RULESETS
>Kstorage macro
>HTo: $>CheckTo
>HCC: $>CheckTo
>HBCC: $>CheckTo
>SCheckTo
>R$* $: $(storage {Spam} $@ OK $) $1
>
>R$*.energy.gov.ua$* $: $(storage {Spam} $@ OK $) $1
>
>Scheck_eoh
>R$* $: < $&{Spam} >
>R$* $: $(storage {Spam} $) $1
>R< $+ > $@ OK
>R$* $#discard $: discard
>...
>я так понимаю нужно добавить:
>HFrom: $>CheckFrom
>и
>SCheckFrom
><а здесь правило> но как его написать ?
>Спасибо.
если ты таким способом надеешся фильтровать спам, то это не сильно
поможет. Примерно так:
SCheckFrom
R $+ $@ OK
R $* $#error $: Illegal From Header
>если ты таким способом надеешся фильтровать спам, то это не сильно
>поможет. Примерно так:
>
>
>SCheckFrom
>R $+
> $@ OK
>R $*
> $#error $: Illegal From HeaderЭто не от спама, есть некоторые особенности...
Хорошо, а где есть описание этих таинственных мантр ?
Что это означает ?
>>если ты таким способом надеешся фильтровать спам, то это не сильно
>>поможет. Примерно так:
>>
>>
>>SCheckFrom
>>R $+
>> $@ OK
>>R $*
>> $#error $: Illegal From Header
>
>Это не от спама, есть некоторые особенности...
>Хорошо, а где есть описание этих таинственных мантр ?
>Что это означает ?расширенный поиск через groups.google.com по группе *sendmail* даст
много интересного.
>>если ты таким способом надеешся фильтровать спам, то это не сильно
>>поможет. Примерно так:
>>
>>
>>SCheckFrom
>>R $+
>> $@ OK
>>R $*
>> $#error $: Illegal From Header
>
>Это не от спама, есть некоторые особенности...
>Хорошо, а где есть описание этих таинственных мантр ?
>Что это означает ?да вообще-то литературы по sendmail завались, поищи на sendmail.org по
ссылкам. Например http://www.trimm.nl/sendmail/
R $+ - ищет есть ли хоть один символ в заголовке From и успешно
возвращается
если ничего не найдено, то вызывается правило, которое ищет ноль или
более tokens (в нашем случае 0, т.к. один уже проверили), оно будет
всегда совпадать. В результате чего вызывается агент доставки error.
спасибо. будем разбираться...
>>Доки читал, но про синтаксис правил написания sendmail.mc ничего толкового не нашел...
>>подскажите, пожалуста, хоть где искать.
>>Интересует вот такая конструкция:
>>...
>>LOCAL_RULESETS
>>Kstorage macro
>>HTo: $>CheckTo
>>HCC: $>CheckTo
>>HBCC: $>CheckTo
>>SCheckTo
>>R$* $: $(storage {Spam} $@ OK $) $1
>>
>>R$*.energy.gov.ua$* $: $(storage {Spam} $@ OK $) $1
>>
>>Scheck_eoh
>>R$* $: < $&{Spam} >
>>R$* $: $(storage {Spam} $) $1
>>R< $+ > $@ OK
>>R$* $#discard $: discard
>>...
>>я так понимаю нужно добавить:
>>HFrom: $>CheckFrom
>>и
>>SCheckFrom
>><а здесь правило> но как его написать ?
>>Спасибо.
>
>
>если ты таким способом надеешся фильтровать спам, то это не сильно
>поможет. Примерно так:
>
>
>SCheckFrom
>R $+
> $@ OK
>R $*
> $#error $: Illegal From HeaderНе сочтите за труд, подскажите в каком месте sendmail.cf ставить это
>Не сочтите за труд, подскажите в каком месте sendmail.cf ставить этоЭта конструкция ставиться в конце файла в разделе LOCAL_RULESETS.
Но только в sendmail.mc. А sendmail.cf редактировать не рекомендуется.
>>Не сочтите за труд, подскажите в каком месте sendmail.cf ставить это
>
>Эта конструкция ставиться в конце файла в разделе LOCAL_RULESETS.
>Но только в sendmail.mc. А sendmail.cf редактировать не рекомендуется.
Я ясно, что не рекомендуется, ну а все же где это можно поставить, писма с пустым From задолбали.
>Я ясно, что не рекомендуется, ну а все же где это
>можно поставить, писма с пустым From задолбали.часть моего sendmail.mc:
...
LOCAL_RULESETS
Kstorage macro
HTo: $>CheckTo
HCC: $>CheckTo
HBCC: $>CheckTo
HFrom: $>CheckFrom
SCheckFrom
R$+ $@ OK
R$* $#error $: Illegal From Header
SCheckTo
R$* $: $(storage {Spam} $@ OK $) $1
R$*.energy.gov.ua$* $: $(storage {Spam} $@ OK $) $1
Scheck_eoh
R$* $: < $&{Spam} >
R$* $: $(storage {Spam} $) $1
R< $+ > $@ OK
R$* $#discard $: discard
>>Не сочтите за труд, подскажите в каком месте sendmail.cf ставить это
>
>Эта конструкция ставиться в конце файла в разделе LOCAL_RULESETS.
>Но только в sendmail.mc. А sendmail.cf редактировать не рекомендуется.Понятно!
Ну а если в *.mc....
dnl if you aren't using Sendmail 8.12, you might need to remove
dnl the following feature. FEATURE(`preserve_local_plus_detail') FEATURE(`mailertable', 'hash -o /etc/mail/mailertable') FEATURE(`nocanonify') FEATURE(`always_add_domain') MAILER(`local') MAILER(`smtp') MAILER(`fax')dnl MAILER_DEFINITIONS Mcyrus, P=[IPC], F=lsDFMnqA@/:|SmXz, E=\r\n, S=EnvFromL, R=EnvToL/HdrToL, T=DNS/RFC822/X-Unix,
A=FILE /var/imap/socket/lmtp
LOCAL_RULE_0
Rbb + $+ < @ $=w . > $#cyrus $: + $1
SCheckFrom
R $+ $@ OK
R $* $#error $: Illegal From HeaderТак !!!
>Понятно!
>Ну а если в *.mc
>
>....
>dnl if you aren't using Sendmail 8.12, you might need to remove
>
>dnl the following feature.
> FEATURE(`preserve_local_plus_detail')
>
>
>
> FEATURE(`mailertable', 'hash -o /etc/mail/mailertable')
>
>
>
> FEATURE(`nocanonify')
>
>
>
>
>
> FEATURE(`always_add_domain')
>
>
>
>
> MAILER(`local')
>
>
>
>
>
> MAILER(`smtp')
>
>
>
>
>
> MAILER(`fax')dnl
>
>
>
>
>
> MAILER_DEFINITIONS
>
>
>
>
> Mcyrus,
> P=[IPC], F=lsDFMnqA@/:|SmXz, E=\r\n,
>
>
>
>
>
>
>
> S=EnvFromL, R=EnvToL/HdrToL, T=DNS/RFC822/X-Unix,
>
> A=FILE /var/imap/socket/lmtp
>LOCAL_RULE_0
>Rbb + $+ < @ $=w . > $#cyrus $: + $1
>
>
>SCheckFrom
>R $+
> $@ OK
>R $*
> $#error $: Illegal From Header
>
>Так !!!Мне кажется, так работать не будет. Правило есть, но нет на него ссылки.
Хотя может я и ошибаюсь, я только недавно это сам узнал.
>>Понятно!
>>Ну а если в *.mc
>>
>>....
>>dnl if you aren't using Sendmail 8.12, you might need to remove
>>
>>dnl the following feature.
>> FEATURE(`preserve_local_plus_detail')
>>
>>
>>
>> FEATURE(`mailertable', 'hash -o /etc/mail/mailertable')
>>
>>
>>
>> FEATURE(`nocanonify')
>>
>>
>>
>>
>>
>> FEATURE(`always_add_domain')
>>
>>
>>
>>
>> MAILER(`local')
>>
>>
>>
>>
>>
>> MAILER(`smtp')
>>
>>
>>
>>
>>
>> MAILER(`fax')dnl
>>
>>
>>
>>
>>
>> MAILER_DEFINITIONS
>>
>>
>>
>>
>> Mcyrus,
>> P=[IPC], F=lsDFMnqA@/:|SmXz, E=\r\n,
>>
>>
>>
>>
>>
>>
>>
>> S=EnvFromL, R=EnvToL/HdrToL, T=DNS/RFC822/X-Unix,
>>
>> A=FILE /var/imap/socket/lmtp
>>LOCAL_RULE_0
>>Rbb + $+ < @ $=w . > $#cyrus $: + $1
>>
>>
>>SCheckFrom
>>R $+
>> $@ OK
>>R $*
>> $#error $: Illegal From Header
>>
>>Так !!!
>
>Мне кажется, так работать не будет. Правило есть, но нет на него
>ссылки.
>Хотя может я и ошибаюсь, я только недавно это сам узнал.
Не понял, так как мне его вставлять?
>>>Понятно!
>>>Ну а если в *.mc
>>>
>>>....
>>>dnl if you aren't using Sendmail 8.12, you might need to remove
>>>
>>>dnl the following feature.
>>> FEATURE(`preserve_local_plus_detail')
>>>
>>>
>>>
>>> FEATURE(`mailertable', 'hash -o /etc/mail/mailertable')
>>>
>>>
>>>
>>> FEATURE(`nocanonify')
>>>
>>>
>>>
>>>
>>>
>>> FEATURE(`always_add_domain')
>>>
>>>
>>>
>>>
>>> MAILER(`local')
>>>
>>>
>>>
>>>
>>>
>>> MAILER(`smtp')
>>>
>>>
>>>
>>>
>>>
>>> MAILER(`fax')dnl
>>>
>>>
>>>
>>>
>>>
>>> MAILER_DEFINITIONS
>>>
>>>
>>>
>>>
>>> Mcyrus,
>>> P=[IPC], F=lsDFMnqA@/:|SmXz, E=\r\n,
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> S=EnvFromL, R=EnvToL/HdrToL, T=DNS/RFC822/X-Unix,
>>>
>>> A=FILE /var/imap/socket/lmtp
>>>LOCAL_RULE_0
>>>Rbb + $+ < @ $=w . > $#cyrus $: + $1
>>>
>>>
>>>SCheckFrom
>>>R $+
>>> $@ OK
>>>R $*
>>> $#error $: Illegal From Header
>>>
>>>Так !!!
>>
>>Мне кажется, так работать не будет. Правило есть, но нет на него
>>ссылки.
>>Хотя может я и ошибаюсь, я только недавно это сам узнал.
>
>
>Не понял, так как мне его вставлять?Так как я показывал ранее (конец моего sendmail.mc). Добавь эти строки в конец своего конфига.
>>>>Понятно!
>>>>Ну а если в *.mc
>>>>
>>>>....
>>>>dnl if you aren't using Sendmail 8.12, you might need to remove
>>>>
>>>>dnl the following feature.
>>>> FEATURE(`preserve_local_plus_detail')
>>>>
>>>>
>>>>
>>>> FEATURE(`mailertable', 'hash -o /etc/mail/mailertable')
>>>>
>>>>
>>>>
>>>> FEATURE(`nocanonify')
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> FEATURE(`always_add_domain')
>>>>
>>>>
>>>>
>>>>
>>>> MAILER(`local')
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> MAILER(`smtp')
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> MAILER(`fax')dnl
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> MAILER_DEFINITIONS
>>>>
>>>>
>>>>
>>>>
>>>> Mcyrus,
>>>> P=[IPC], F=lsDFMnqA@/:|SmXz, E=\r\n,
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> S=EnvFromL, R=EnvToL/HdrToL, T=DNS/RFC822/X-Unix,
>>>>
>>>> A=FILE /var/imap/socket/lmtp
>>>>LOCAL_RULE_0
>>>>Rbb + $+ < @ $=w . > $#cyrus $: + $1
>>>>
>>>>
>>>>SCheckFrom
>>>>R $+
>>>> $@ OK
>>>>R $*
>>>> $#error $: Illegal From Header
>>>>
>>>>Так !!!
>>>
>>>Мне кажется, так работать не будет. Правило есть, но нет на него
>>>ссылки.
>>>Хотя может я и ошибаюсь, я только недавно это сам узнал.
>>
>>
>>Не понял, так как мне его вставлять?
>
>Так как я показывал ранее (конец моего sendmail.mc). Добавь эти строки в
>конец своего конфига.Добавил!
после рестарта
# ./rc.sendmail restart
554 5.0.0 /etc/mail/sendmail.cf: line 1213: unknown configuration line "
"
554 5.0.0 /etc/mail/sendmail.cf: line 1220: invalid rewrite line "R+ @ OK" (tab expected)
554 5.0.0 /etc/mail/sendmail.cf: line 1221: invalid rewrite line "R* #error : Illegal From Header" (tab expected)
554 5.0.0 /etc/mail/sendmail.cf: line 1223: invalid rewrite line "R* : (storage {Spam} @ OK ) 1" (tab expected)
554 5.0.0 /etc/mail/sendmail.cf: line 1224: invalid rewrite line "R*.energy.gov.ua* : (storage {Spam} @ OK ) 1" (tab expected)
554 5.0.0 /etc/mail/sendmail.cf: line 1226: invalid rewrite line "R* : < &1 >" (tab expected)
554 5.0.0 /etc/mail/sendmail.cf: line 1227: invalid rewrite line "R* : (storage {Spam} ) 1" (tab expected)
554 5.0.0 /etc/mail/sendmail.cf: line 1228: invalid rewrite line "R< + > @ OK" (tab expected)
554 5.0.0 /etc/mail/sendmail.cf: line 1229: invalid rewrite line "R* #discard : discard" (tab expected)
Starting sendmail MSP queue runner: /usr/sbin/sendmail -L sm-msp-queue -Ac -q25m
/etc/mail/submit.cf: line 0: cannot open: No such file or directory
>после рестарта
># ./rc.sendmail restart
>554 5.0.0 /etc/mail/sendmail.cf: line 1213: unknown configuration line "
>"
>554 5.0.0 /etc/mail/sendmail.cf: line 1220: invalid rewrite line "R+
> @ OK" (tab expected)
>554 5.0.0 /etc/mail/sendmail.cf: line 1221: invalid rewrite line "R*
> #error : Illegal From Header" (tab expected)
>554 5.0.0 /etc/mail/sendmail.cf: line 1223: invalid rewrite line "R*
> : (storage {Spam} @ OK ) 1" (tab expected)
>554 5.0.0 /etc/mail/sendmail.cf: line 1224: invalid rewrite line "R*.energy.gov.ua*
> : (storage {Spam} @ OK ) 1" (tab expected)
>554 5.0.0 /etc/mail/sendmail.cf: line 1226: invalid rewrite line "R* : < &1 >" (tab expected)
>554 5.0.0 /etc/mail/sendmail.cf: line 1227: invalid rewrite line "R*
> : (storage {Spam} ) 1" (tab expected)
>554 5.0.0 /etc/mail/sendmail.cf: line 1228: invalid rewrite line "R< + > @ OK" (tab expected)
>554 5.0.0 /etc/mail/sendmail.cf: line 1229: invalid rewrite line "R*
> #discard : discard" (tab expected)
>Starting sendmail MSP queue runner: /usr/sbin/sendmail -L sm-msp-queue -Ac -q25m
>/etc/mail/submit.cf: line 0: cannot open: No such file or directoryздесь разделение должно происходить посредством таба, а не пробела.
>>после рестарта
>># ./rc.sendmail restart
>>554 5.0.0 /etc/mail/sendmail.cf: line 1213: unknown configuration line "
>>"
>>554 5.0.0 /etc/mail/sendmail.cf: line 1220: invalid rewrite line "R+
>> @ OK" (tab expected)
>>554 5.0.0 /etc/mail/sendmail.cf: line 1221: invalid rewrite line "R*
>> #error : Illegal From Header" (tab expected)
>>554 5.0.0 /etc/mail/sendmail.cf: line 1223: invalid rewrite line "R*
>> : (storage {Spam} @ OK ) 1" (tab expected)
>>554 5.0.0 /etc/mail/sendmail.cf: line 1224: invalid rewrite line "R*.energy.gov.ua*
>> : (storage {Spam} @ OK ) 1" (tab expected)
>>554 5.0.0 /etc/mail/sendmail.cf: line 1226: invalid rewrite line "R* : < &1 >" (tab expected)
>>554 5.0.0 /etc/mail/sendmail.cf: line 1227: invalid rewrite line "R*
>> : (storage {Spam} ) 1" (tab expected)
>>554 5.0.0 /etc/mail/sendmail.cf: line 1228: invalid rewrite line "R< + > @ OK" (tab expected)
>>554 5.0.0 /etc/mail/sendmail.cf: line 1229: invalid rewrite line "R*
>> #discard : discard" (tab expected)
>>Starting sendmail MSP queue runner: /usr/sbin/sendmail -L sm-msp-queue -Ac -q25m
>>/etc/mail/submit.cf: line 0: cannot open: No such file or directory
>
>здесь разделение должно происходить посредством таба, а не пробела.
Поставил, вроде работает, время покажет, спасибо!