MIMEDefang

MIMEDefang
Deweloperzy Dianne Skoll, Dave O'Neill, Faraz Vahabzadeh, Giovanni Bechis, Bill Cole, Kevin A. McGrail
Wersja stabilna
3.1 / 23 sierpnia 2022 ( 23.08.2022 )
Magazyn
Napisane w C , Perl
Typ Filtrowanie poczty
Licencja Powszechna Licencja Publiczna GNU
Strona internetowa mimedefang .org

MIMEDefang to licencjonowany przez GPL framework do filtrowania wiadomości e-mail . Używa API " Milter " sendmaila , trochę kodu w C i trochę kodu w Perlu, aby umożliwić użytkownikowi pisanie wysokowydajnych filtrów poczty w Perlu .

MIMEDefang można wykorzystać do:

Historia

Royal College of Physicians and Surgeons of Canada zlecił w 2000 roku pomoc w powstrzymaniu zalewu wirusów pocztowych do sieci uczelni . Oprogramowanie zostało napisane w celu filtrowania załączników i pierwotnie nosiło nazwę MIMESweeper, następnie MIMEDefanger, a obecnie MIMEDefang. Skoll ogłosiła publicznie swoje oprogramowanie 28 sierpnia 2000 r. 21 grudnia 2001 r. Wersja zawierająca obsługę SpamAssassin został wydany, czyniąc MIMEDefang filtrem zarówno dla spamu, jak i wirusów. Firma Skolla, Roaring Penguin Software, opracowała i sprzedała komercyjny produkt antyspamowy o nazwie CanIt, który jest oparty na otwartej wersji MIMEDefang.

Roaring Penguin Software zostało przejęte przez AppRiver w marcu 2018 roku.

W dniu 5 marca 2020 r. AppRiver zgodził się powierzyć Fundacji McGrail przewodnictwo nad projektem MIMEDefang typu open source na okres trzech lat, z automatycznym przedłużeniem na kolejny rok, chyba że AppRiver lub Fundacja McGrail zdecydują się nie przedłużać umowy .

28 maja 2021 roku Dianne Skoll ogłosiła rozwidlenie projektu, znanego jako Mailmunge.

Architektura

Biblioteka Milter dołączona do Sendmaila wykorzystuje wątki POSIX , aby umożliwić wiele jednoczesnych filtrów. Filtr Perla MIMEDefang wykorzystuje wstępnie rozwidlony model procesu, podobny do tradycyjnego modelu wieloprocesowego serwera WWW Apache . MIMEDefang składa się zatem z trzech komponentów:

  • Wielowątkowy program C , który komunikuje się z Sendmailem i procesami filtrowania
  • Multiplekser (napisany w C) , który zarządza pulą procesów skanowania Perla (zwanych „slaves”)
  • Program Perla o nazwie mimedefang.pl, który zapewnia podstawową infrastrukturę filtrowania.

Użytkownicy MIMEDefang kodują swoje polityki filtrowania w Perlu, korzystając z infrastruktury dostarczonej przez mimedefang.pl. Nie muszą się martwić synchronizacją wątków, ponieważ każdy filtr Perla jest osobnym procesem jednowątkowym.

Infrastruktura dostarczana przez mimedefang.pl jest w miarę zbliżona do API Miltera, ale nie do końca. Obejmuje wygodne procedury analizowania i odbudowywania komunikatów MIME, dzięki czemu autorzy filtrów mogą skoncentrować się na zasadach wysokiego poziomu, zamiast martwić się szczegółami interfejsu API niskiego poziomu. Ta wygoda wiąże się z niewielką utratą elastyczności i pewną utratą wydajności.

Linki zewnętrzne