SMTP proxy


SMTP proxies are specialized mail transfer agents that, similar to other types of proxy servers, pass SMTP sessions through to other MTAs without using the store-and-forward approach of a typical MTA. When an SMTP proxy receives a connection, it initiates another SMTP session to a destination MTA. Any errors or status information from the destination MTA will be passed back to the sending MTA through the proxy.

Uses

SMTP proxies are commonly used to process and filter inbound and outbound email traffic.

Inbound SMTP proxying

SMTP proxies often serve as the initial, network-facing layer in an email system, processing SMTP connections from clients before forwarding data to a second layer of mail servers. SMTP Proxies often implement the first and/or only layer of defence in an inbound anti-spam filtering system, where they can analyze messages using a spam content filter or antivirus program, block or rate limit connections using DNS blacklists and reputation system, and load balance SMTP connections to prevent overloading of mail servers.

Advantages of SMTP proxying

Because SMTP proxies do not store messages like a mail transfer agent does, they can reject SMTP connections or message content in real-time, doing away with the need for out-of-band non delivery reports, which are the cause of backscatter email, a serious problem in the Internet email system.
Certain SMTP proxies implement TCP connection management, which can help to reduce damage to downstream mail servers resulting from spikes in TCP traffic from malicious SMTP clients. TCP connection management in the context of SMTP typically involves bandwidth throttling and/or introducing delays in SMTP command responses. When slowed down, certain malicious sources of SMTP traffic such as spam bots tend to give up rather than continuing to deliver a full email message.
Network tarpitting can be challenging to implement within an email server, since each SMTP connection is processed more slowly than normal, often holding up precious system resources such as memory and CPU. Because SMTP proxies can be implemented using lighter-weight programming techniques such as asynchronous IO, thousands of connections can be juggled using the same resources as a much smaller number of connections in the context of a full-blown store and forward email server.

Outbound SMTP Proxying

SMTP Proxies are sometimes inserted between sending mail servers on a local network, and their receiving counterparts on the Internet. SMTP Proxies are often used in this context in order to filter outgoing spam; however, other applications such as Domain Keys Identified Mail signing also exist

Types of SMTP Proxies

SMTP proxies come in a few fundamental flavors: