IndiMail is a messaging platform utilizing the following packages qmail, serialmail, qmailanalog, dotforward, fastforward, mess822, daemontools, ucspi-tcp, Courier IMAP/POP3, Bogofilter - A Bayesian Spam Filter, Fetchmail, other useful utilities (pack, unpack, altermime, ripmime, flash). IndiMail provides Management of Virtual domains with large number of users. Some of the components like qmail have been significantly modified to provide a seamless user experience, manageability, superior performance and high scalability. IndiMail works on both 32 / 64 bit Unix platforms.
IndiMail provides routers for SMTP, IMAP and POP3. This enables a domain to be extended across multiple servers and hence gives IndiMail the ability to distribute the users across multiple hosts using standard non-proprietary protocols and RFCs. You can have your users distributed on multiple servers, each server located anywhere on the net. Using a utility called 'hostcntrl', you can also add foreign users. This allows IndiMail to have a heterogeneous email server environment without the need for multiple domains (with some users on MS Exchange and some on Lotus Notes some on IndiMail). You can have multiple hosts hosting a domain placed geographically anywhere and tied up by IndiMail. Your Brazil users can have a server in Brazil and India users on server located in India and yet have the Indian user access all his/her mails when in Brazil. The IndiMail architecture also allows you to migrate seamlessly from a proprietary messaging products. The IndiMail architecture does not force a networked filesystem or NAS storage to be used for serving large number of users (typically in an ISP/MSP environment)
Though IndiMail uses the power of qmail, it has multiple queues (called a queue collection). The multiple queues can be located on multiple disks. Each of these queue have their own dedicated qmail-send/qmail-todo process. A drop-in replacement for qmail-queue - qmail-multi distributes incoming mails evenly across the defined multiple queues. The multiple queue architecture allows IndiMail to eliminate what is known as the silly qmail syndrome. Hence IndiMail can process a very high incoming rate of mails and faster than provided by stock qmail/netqmail. The system ids, configuration files used by IndiMail are all configurable through a set of environment variables. IndiMail avoids using hardcoded directories and hardcoded uid/gid for the queue, control files and process privileges. Most of these variables are set at run-time. Hence, you can quickly setup multiple instances of IndiMail just by setting different environment variables. Setting CONTROLDIR=control1 will cause IndiMail to look at configuration files in /var/indimail/control1. Setting CONTROLDIR=/etc/indimail will cause IndiMail to look at configuration files in /etc/indimail. Setting QUEUEDIR=/ramdisk/queue1 causes IndiMail to use /ramdisk/queue1 as the queue. IndiMail has around 200 such variables which can be used to fine tune the way you want IndiMail to behave. This gives the ability of a single installation of IndiMail have a different behavior for each queue, sender, recipient, source host, destination host.
Though the configuration items are plenty, the novice can have a fully functional Mail Server up in minutes by just using few of the important configuration variables. Newbies can also administer IndiMail using a Secure Menu Shell called FLASH (using ncurses library). Flash allows menu and sub menus to be extended and is fully customizable.
It is time to become free from closed source Proprietary Email Solutions.