The OpenNET Project / Index page

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

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

"Sendmail - изучения макроязыка "  +/
Сообщение от HanTengry email(ok) on 03-Июл-10, 08:17 
Научите как можно изучить язык на котором написан файл Sendmail.

Ребят, моя проблема в том, что я нашел например полное описание файла конфигурации
(http://www.citforum.ru/operating_systems/sendmail/sendmail_0...), но мне совершено не понятен тот профессиональный язык с непонятными мне терминами на котором написан этот документ. Например: метасимвол, лексема и др. Мне не хватает базовых знаний по видимо по программированию (хотя хорошо знаю что такое циклы, процедуры, макросы). Может быть с толку сбивает отсутствие понятий константы, переменные, хотя вижу, что тут что-то чему-то присваивается. Подскажите что можно почитать по этим фундаментальным знаниям касательно этого языка?  

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

Оглавление

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


1. "Sendmail - изучения макроязыка "  +/
Сообщение от HanTengry email(ok) on 03-Июл-10, 12:42 
Нашел такую книгу: Sendmail от O'Reilly.
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

2. "Sendmail - изучения макроязыка "  +1 +/
Сообщение от SDenis (??) on 03-Июл-10, 14:32 
>[оверквотинг удален]
>
>Ребят, моя проблема в том, что я нашел например полное описание файла
>конфигурации
>(http://www.citforum.ru/operating_systems/sendmail/sendmail_0...), но мне совершено не понятен тот профессиональный язык с непонятными мне
>терминами на котором написан этот документ. Например: метасимвол, лексема и др.
>Мне не хватает базовых знаний по видимо по программированию (хотя хорошо
>знаю что такое циклы, процедуры, макросы). Может быть с толку сбивает
>отсутствие понятий константы, переменные, хотя вижу, что тут что-то чему-то присваивается.
>Подскажите что можно почитать по этим фундаментальным знаниям касательно этого языка?
>

Зачем оно тебе ?

Сендмейл активно переписывается, формат конф. файла стал читаем человеком.
В текущую версию 8.* вносятся изменения только касательно исправления ошибок - новый функционал не добавляется и не планируется его добавлять.  

http://www.meta1.org/

Необходимый функционал (фильтры и т.п.) добавляется посредством вспомогательных демонов,
что избавляет от необходимости "шаманства" с конф. файлом сендмэйла.

http://www.milter.org

Если необходима очень продвинутая система обработки почты - http://www.exim.org

Встроенный Perl и прочие плюшки.


Сендмэйл пусть просто доставляет почту. И делает это очень надежно.

PS:

Язык программирования, на котором написан sendmail.cf является функционально полным - по Тьюрингу.

http://okmij.org/ftp/Computation/sendmail-as-turing-machine.txt

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

3. "Sendmail - изучения макроязыка "  +/
Сообщение от Vitaly_loki (ok) on 03-Июл-10, 21:41 
>[оверквотинг удален]
>
>
>Сендмэйл пусть просто доставляет почту. И делает это очень надежно.
>
>PS:
>
>Язык программирования, на котором написан sendmail.cf является функционально полным - по Тьюрингу.
>
>
>http://okmij.org/ftp/Computation/sendmail-as-turing-machine.txt

Таки да, MeTA1 разрабатывает Клаус, он же и мейнтейнер sendmail, т.е. даже он признал, что sendmail не совсем айс, раз взялся за написание модульного MTA с нуля

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

4. "Sendmail - изучения макроязыка "  +/
Сообщение от HanTengry (ok) on 12-Июл-10, 20:35 
>Сендмейл активно переписывается, формат конф. файла стал читаем человеком.
>В текущую версию 8.* вносятся изменения только касательно исправления ошибок - новый
>функционал не добавляется и не планируется его добавлять.
>
>http://www.meta1.org/
>
>Необходимый функционал (фильтры и т.п.) добавляется посредством вспомогательных демонов,
>что избавляет от необходимости "шаманства" с конф. файлом сендмэйла.

Постараюсь говорить кратко и связно.
Ну вот где этот функционал найти. Например у меня проблема в сети: мне приходит спам от своего собственного домена(реклама VIAGRA), на этом форуме нашел такое решение - "Как именно средствами Sendmail запретить прием внешних писем от своего домена"(http://www.opennet.me/openforum/vsluhforumID1/51260.html). Уточню задачу - хочется давать спаму отлуп от моего собственного домена пришедшему на внешний интерфейс на стадии КОННЕКТА. Проблема в том что тот кусок который там описан для вставки в конфик для меня темный лес. SDenis - можете вы что-то предложить проще? Пожалуйста буду рад, честно.  
Вот зачем оно мне.
>Если необходима очень продвинутая система обработки почты - http://www.exim.org
>Встроенный Perl и прочие плюшки.

Из-за такой проблемки переходить на exim не считаю рациональным, т. к. почтовый сервер уже проработал 9 лет и работает стабильно. Были до этого другие проблемы, например приходил спам от поддельного юзера, к нам на несуществующего, наш сервер вежливо отвечал на поддельный адрес, что юзера у нас такого нет..ну отключили прием писем для несуществующих и "вежливость" и все довольны.

>Сендмэйл пусть просто доставляет почту. И делает это очень надежно.

Согласен.
>
>PS:
>
>Язык программирования, на котором написан sendmail.cf является функционально полным - по Тьюрингу.

Спасибо!

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

5. "Sendmail - изучения макроязыка "  +/
Сообщение от SDenis (??) on 26-Июл-10, 23:42 
>[оверквотинг удален]
>
>>Сендмэйл пусть просто доставляет почту. И делает это очень надежно.
>
>Согласен.
>>
>>PS:
>>
>>Язык программирования, на котором написан sendmail.cf является функционально полным - по Тьюрингу.
>
>Спасибо!

Сорри фор делей - давно не заглядывал в эту тему:

кусок из моего milter-regex.conf  - как пример

# Reject invalid HELO


bad_hello = helo /^[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*$/
reject "Invalid HELO"
$bad_hello

fake_hello_localhost = helo /localhost/ei
reject "Forget HELO"
$fake_hello_localhost and not connect // /127.0.0.1/

fake_hello_myself = helo /myhostmame\.mydomain\.com/ei
reject "Forget HELO: you are not myself, tell me your name or go away!"
$fake_hello_myself and (not connect // /127.0.0.1/) and (not connect // /^192.168.1.1/)   and (not connect // /999.999.999.999/)
# 999.999.999.999 - external IP of the server
# 192.168.1.1 - internal IP of the server

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

6. "Sendmail - изучения макроязыка "  +/
Сообщение от SDenis (??) on 26-Июл-10, 23:55 
А, ну да, сорри - про домен:

fake_hello_mydomain = helo /mydomain\.com/ei
reject "Forget HELO: you are not myself, tell me your name or go away!"
$fake_hello_myself and (not connect // /127.0.0.1/) and (not connect // /^192.168.1.1/) and (not connect // /999.999.999.999/) and (not connect // 888.888.888/)
# 999.999.999.999 - external IP of the server
# 192.168.1.1 - internal IP of the server
# 888.888.888 - any friendly network


И как бонус:

# Rejacet dangerous attachments
attachments     = header ,^Content-Type$, ,multipart/mixed, and \
body ,^Content-Type: application/,
executables     = $attachments and body ,name=".*.(com|pif|exe|scr|asp|avi|flv|bat|cmd|cpl|inf|ins|js|jse|lnk|mp3|reg|shs|swf|vbe|vbs|wav|wsc|wsf|wsh)"$,ie
          
reject "Sorry, your message was rejected as it contains dangerous or unwanted attachments"
$executables


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

7. "Sendmail - изучения макроязыка "  +/
Сообщение от SDenis (??) on 26-Июл-10, 23:57 
В примере про домен заменить:
$fake_hello_myself на $fake_hello_mydomain
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

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

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




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

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