- Exim
Infobox_Software | name = Exim
caption =
developer = Philip Hazel
latest_release_version = [http://exim.org/version.html 4.69]
latest_release_date =December 20 2007
platform =Cross-platform
operating_system =Unix-like
genre =Mail transfer agent
license =GNU General Public License
website = http://www.exim.org/Exim is a
mail transfer agent (MTA) used onUnix-like operating systems. It is freely available under theGNU GPL and it aims to be a general and flexible mailer with extensive facilities for checking incominge-mail .The first version of Exim was written in
1995 byPhilip Hazel for use in theUniversity of Cambridge Computing Service ’s e-mail systems. The name initially stood for "EX"perimental "I"nternet "M"ailer. [Philip Hazel [http://www.uit.co.uk/exim-book/preface.pdf The Exim SMTP Mail Server (Preface)] ] It was originally based on an older MTA,Smail -3, but it has since diverged from Smail-3 in its design and philosophy. [ [http://people.pwf.cam.ac.uk/ph10/MPD100 Philip Hazel's original thoughts on implementing a future MTA based on Smail] ] [ [http://www.weird.com/~woods/projects/smail.html Smail-3 homepage] ]Exim, like
Smail , still follows theSendmail design model, where a single binary controls all the facilities of the MTA. This monolithic design is generally considered to be inherently less secure, largely due to the lack of separation between the individual components of the systemFact|date=December 2007. Nevertheless, Exim’s security record has been fairly clean, with only a handful of serious security problems diagnosed over the years. There have been no serious issues since the redesigned version 4 was released. This is probably due to having been written from scratch and with security in mind (the security issues with Sendmail have long been well known).Exim is highly configurable, and therefore has features that are lacking in other MTAs. It has always had substantial facilities for mail policy controls, providing facilities for the administrator to control who may send or relay mail through the system. In version 4.x this has matured to an
Access Control List based system allowing very detailed and flexible controls. The integration of a framework for content scanning, which allowed for easier integration ofanti-virus andanti-spam measures, happened in the 4.x releases. This made Exim very suitable for enforcing diverse mail policies.The configuration is done through one or more configuration files, which must include the main section with generic settings and variables, as well as the following optional sections:
* the access control list (ACL) section which defines behaviour during theSMTP sessions,
* the routers section which includes a number of processing elements which operate on addresses (the delivery logic),
* the transports section which includes processing elements which transmit actual messages to destinations,
* the retry section where policy on retrying messages that fail to get delivered at the first attempt is defined,
* the rewrite section, defining if and how the mail system will rewrite addresses on incoming e-mails
* the authenticators section with settings forSMTP AUTH .Exim has been deployed in busy environments, often handling thousands of emails per hour efficiently. Exim is designed to deliver email immediately, without queueing. However, its queue processing performance is comparatively poor when queues are large (which happens rarely on typical low-traffic sites, but can happen regularly on high-traffic sites). Unlike
qmail , Postfix, andZMailer , Exim does not have a central queue manager (i.e. an equivalent of "qmail-send", "qmgr", or "scheduler"). There is thus no centralized load balancing, either of queue processing (leading to disproportionate amounts of time being spent on processing the same queue entries repeatedly) or of system-wide remote transport concurrency (leading to a "thundering herd" problem when multiple messages addressed to a single domain are submitted at once). In Philip Hazel's own words [ [news://news.gmane.org/Pine.SOC.4.61.0412010932030.9481%40draco.cus.cam.ac.uk posting by Philip Hazel] ] ::"The bottom line is that Exim does not perform particularly well in environments where the queue regularly gets very large. It was never designed for this; deliveries from the queue were always intended to be 'exceptions' rather than the norm."
In 1997, Philip Hazel replaced Exim's
POSIX regular expression library written byHenry Spencer with a new library he developed calledPCRE (Perl Compatible Regular Expressions).Perl regular expressions are much more powerful than POSIX and other common regular expressions, and PCRE has become popular in applications other than Exim.Exim is
free software distributed under the terms of theGNU General Public Licence . It has been ported to most Unix-like systems, as well as toMicrosoft Windows using theCygwin emulation layer. Exim 4 is currently the default MTA onDebian GNU/Linux systems.A large number of Exim installations exist, especially within
Internet service provider s [Golanski, Y (2000) [http://www.neverness.org/docs/lsm.pdf The Exim Mail Transfer Agent in a Large Scale Deployment] ] and universities in the UK. Exim is also widely used with theGNU Mailman mailing list manager, andcPanel .Exim uses a peculiar version numbering scheme where the first decimal digit is updated only whenever the documentation is fully up to date. For this reason, a 0.01 version change can signify important changes, not necessarily fully documented [http://lists.exim.org/lurker/message/20030814.082503.499c8332.en.html [Exim Exim 4.21 released ] ] . In
2005 , changes to Exim's version numbering were on the table of discussion [http://www.uit.co.uk/exim-conference/full-papers/nigel-metheringham/ Exim Development - From The Cathedral Towards The Bizarre ] ] .References
External links
* [http://www.exim.org/ Exim Internet Mailer]
* [http://www.pcre.org/ PCRE - Perl Compatible Regular Expressions]
Wikimedia Foundation. 2010.