Milter – Sendmail, Postfix сияқты почта серверлері үшін спам мен вирустарды сүзуге арналған кеңейтім. Қауіпсіздікті арттырып, хаттарды тиімді тексеріңіз.
Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
Milter (пошта сүзгісінің қосымша атауы) – Sendmail және Postfix сияқты кеңінен қолданылатын ашық кодты пошта тасымалдау агенттеріне (MTA) арналған кеңейтім. Ол әкімшілерге пошта өңдеу кезінде спам немесе вирустарды сүзгілеу үшін пошта сүзгілерін қосуға мүмкіндік береді. Мамандардың терминологиясында, "milter" – қызметті іске асыратын протокол мен API-ді білдіреді, ал "милтер" – milter протоколын пайдаланып қызмет ұсынатын сүзгі бағдарламасын білдіреді.
Milter (portmanteau for mail filter) is an extension to the widely used open source mail transfer agents (MTA) Sendmail and Postfix. It allows administrators to add mail filters for filtering spam or viruses in the mail processing chain. In the language of the art, "milter" refers to the protocol and API implementing the service, while "a milter" has come to refer to a filter application that uses milter to provide service.
Тарих
Милтер пайда болғанға дейін электрондық пошта сүзгісі әдетте бағдарлама ретінде іске асырылатын, оған MTA хабарламаны толық келгеннен кейін, хабарламаның қаптамасы туралы ақпараттың көп бөлігі алынып тасталған күйде жіберетін. Бұл бағдарлама кейін хабардың тақырыбы мен мазмұнын талдап, хабарды қабылдау (яғни MTA-ға "сәтті" мәртебесін қайтару) немесе қабылдамау (яғни MTA-ға "сәтсіз" мәртебесін қайтару) туралы шешім қабылдауы мүмкін. MTA сәтті жеткізілгенді немесе тиісті жағдайда жіберушіге қате туралы хабарламаны қайтарады, ал сүзгі хабарламаның жеткізілуіне әсер ету үшін жауапты болады (көзделген кіріс жәшігіне, өзгертілген мазмұнымен немесе белгілі бір папкаға жеткізілуіне байланысты). Милтерге қолдау көрсететін MTA керісінше, қосылған сүзгілерге хабарламаның жеткізілуінің әрбір кезеңі туралы хабарлайды – бастапқы клиент қосылысынан бастап, таратудың аяқталуына дейін. SMTP сессиясының әрбір кезеңінде сүзгіге келіп түскен хабарлама туралы деректер беріледі, содан кейін қажет болған жағдайда хабарламаны қабылдауды ертерек тоқтату мүмкіндігі туады. Өте үлкен хабарламалар үшін, егер бас тарту туралы шешім мүмкіндігінше ертерек қабылдана алса, бұл үлкен әсер ете алады. Сонымен қатар, бұрынғы модельден айырмашылығы, милтерге қолдау көрсететін MTA бірнеше сүзгілерге параллель қосыла алады, олар вирусқа қарсы, спамға қарсы, хабарламаның аутентификациясы, трафик реттеу сияқты нақты мақсаттарға қызмет етеді. Сонымен қатар, мұндай сүзгілер хабарламаға арнайы әрекеттер жасай алады: қаптамадағы алушыларды қосу немесе алып тастау; жеткізуге дейін мазмұнын өзгерту; хабарламадағы тақырыптық өрістерді қосу, өзгерту немесе алып тастау және т.б. Sendmail консорциумы sendmail дистрибуциясында milter API-ын қамтамасыз ететін арнайы жиекке негізделген кітапхананы қамтиды.
Prior to the advent of milter, an email filter was generally implemented as a program to which an MTA would hand the message once it has completely arrived, with most of the message's envelope information removed. That program could then analyze the header and body of the message and make a decision to accept the message (i. e. return a "success" status to the MTA) or reject it (i. e. return a "failed" status to the MTA). The MTA would then log a successful delivery or return a failure message to the sender as appropriate, and the filter would be responsible for affecting the delivery of the message (to the intended inbox(es) as is, or modified to remove unwanted content, or to specific folder(s), etc.). An MTA that is milter capable instead notifies filters to which it is connected about each phase of the delivery of a message, from initial client connection through completion of transmission. At each phase of the SMTP session, the filter is given data about the arriving message and then has an opportunity to terminate acceptance of the message early when appropriate. For very large messages, this can have an enormous impact when a decision to reject can be made as early as possible. Moreover, unlike the former model, a milter capable MTA can connect to multiple filters in parallel that serve specific purposes such as anti virus, anti spam, message authentication, flow regulation, etc. Finally, such filters can take special action on the message: add or remove recipients in the envelope; alter the body prior to delivery; add, change or remove header fields in the message, etc. The Sendmail Consortium includes a special thread based library in the sendmail distribution that provides the milter API.
Пошта жіберу
Милтер алғаш рет ресми түрде 2001 жылдың 8 қыркүйегінде жарық көрген Sendmail 8.12.0 нұсқасына енгізілді. Milter, Sendmail 8.11.x нұсқаларында FFR (Болашаққа арналған шығарылым/Бета коды) ретінде қолжетімді болған. Milter алғашқы ресми жарияланғанынан бері маңызды жаңартуларға ұшырады.
Milter was first officially introduced to Sendmail 8.12.0 released on September 8, 2001. Milter was available in sendmail 8.11. x versions as an FFR (For Future Release/Beta code). Milter has undergone substantial improvements since its first official release.
Постфикс
Мильтер қолдауы Postfix 2.3.0 нұсқасына 2006 жылдың 12 шілдесінде қосылды. Көптеген, бірақ барлық мильтерлер емес, Postfix жүйесімен бірден қолданылуы мүмкін.
Milter support was added to Postfix 2.3.0 released July 12, 2006. Many, but not all, milters can be used with Postfix "out of the box".
Интерфейсі
Sendmail консорциумы ерекше қажеттіліктерге арналған мильтерлерді жасауға болатын құжатталған қолданбалы бағдарламалау интерфейсін (API) ұсынады. Sendmail консорциумы ұсынған кітапхана pthread негізінде жұмыс істейді. Дегенмен, sendmail және мильтер процестері арасындағы байланыс протоколының құжаттамасы берілмеген. Бұл ішкі протокол жаңа sendmail нұсқаларында өзгертілуі мүмкін.
The Sendmail Consortium provides a documented Application Programming Interface that can be used to create milters for special needs. The library provided by The Sendmail Consortium is pthread based. However, documentation of the protocol used for communication between sendmail and milter processes is not provided. This internal protocol is subject to changes in new sendmail versions.