SMTP-proxy
SMTP-proxyer är specialiserade e-postöverföringsagenter (MTA) som, i likhet med andra typer av proxyservrar , skickar SMTP- sessioner till andra MTA:er utan att använda lagra-och-sändningsmetoden för en typisk MTA. När en SMTP-proxy tar emot en anslutning initierar den en annan SMTP-session till en destinations-MTA. Eventuella fel eller statusinformation från destinations-MTA kommer att skickas tillbaka till sändande MTA via proxyn.
Används
SMTP-proxyer används vanligtvis för att behandla och filtrera inkommande och utgående e-posttrafik.
Inkommande SMTP-proxy
SMTP-proxyservrar fungerar ofta som det initiala, nätverksvända lagret i ett e-postsystem och bearbetar SMTP-anslutningar från klienter innan data vidarebefordras till ett andra lager av e- postservrar . SMTP-proxyer implementerar ofta det första och/eller enda försvarsskiktet i ett inkommande anti-spam-filtreringssystem , där de kan analysera meddelanden med hjälp av ett spaminnehållsfilter eller antivirusprogram , blockera eller hastighetsbegränsa anslutningar med DNS-svarta listor och ryktesystem , och ladda -balansera SMTP-anslutningar för att förhindra överbelastning av e-postservrar.
Fördelar med SMTP-proxy
Eftersom SMTP-proxy inte lagrar meddelanden som en e-postöverföringsagent (MTA) gör, kan de avvisa SMTP-anslutningar eller meddelandeinnehåll i realtid , vilket eliminerar behovet av rapporter om icke-leverans utanför bandet (NDR) , vilket är orsaken till backscatter-e-post , ett allvarligt problem i Internet-e-postsystemet .
Vissa SMTP-proxyer implementerar TCP-anslutningshantering (även känd som flödeskontroll ), vilket kan bidra till att minska skador på nedströms e-postservrar till följd av toppar i TCP -trafik från skadliga SMTP-klienter. TCP-anslutningshantering i SMTP-sammanhang involverar vanligtvis bandbreddsbegränsning och/eller införande av fördröjningar i SMTP-kommandosvar (detta kallas även tarpitting ). När hastigheten saktas upp tenderar vissa skadliga källor till SMTP-trafik, såsom spambots , att ge upp snarare än att fortsätta leverera ett fullständigt e-postmeddelande .
Nätverkstarpitting kan vara utmanande att implementera inom en e-postserver , eftersom varje SMTP-anslutning bearbetas långsammare än normalt, vilket ofta håller upp värdefulla systemresurser som minne och CPU. Eftersom SMTP-proxies kan implementeras med hjälp av lättare programmeringstekniker som asynkron I/O (till exempel nginx , Node.js , Netty och libevent ), kan tusentals anslutningar jongleras med samma resurser som ett mycket mindre antal anslutningar i sammanhanget för en komplett lagra -och-sänd e-postserver .
Utgående SMTP-proxy
SMTP-proxyer infogas ibland mellan sändande e-postservrar på ett lokalt nätverk och deras mottagande motsvarigheter på Internet. SMTP-proxies används ofta i detta sammanhang för att filtrera ut utgående skräppost ; Det finns dock andra applikationer som DomainKeys Identified Mail (DKIM)-signering
Typer av SMTP-proxyer
SMTP-proxyer finns i några grundläggande smaker:
- Synkron - varje SMTP-klientanslutning gör att proxyn upprättar en enda anslutning med en nedströms e-postserver. Se smtp-gated- projektet med öppen källkod för ett exempel på en synkron SMTP-proxy.
- Multiplexing - proxyn upprättar nedströmsanslutningar till e-postservern endast efter behov, och genom att intelligent jonglera en pool av SMTP-anslutningar; Denna jonglering skyddar nedströms e-postservern från överdriven anslutningssamfällighet.
- Transparent - proxyn sätts in i nätverket mellan klienter och servrar, maskerar sig själv på ett sådant sätt att klienten och servern tror att de pratar direkt med varandra, även om det finns en proxy i mitten. Den kommersiella "MailChannels Outbound"-produkten från MailChannels implementerar en transparent proxy. Policybaserad routing kan användas för att dirigera SMTP-trafik genom en transparent SMTP-proxy.