This documentation is being created as we speak...sort of!
Installing Rumble on a Windows operating system is quite simple. Download the latest installer for Windows and run it. On a regular Windows installation, Rumble will probably install itself inside the folder C:\Program Files\Rumble. If you choose to have Rumble run as a Windows service, you can proceed directly to the RumbleLua web interface and configure your mail server. Otherwise, you can manually configure the mail server by editing the configuration files found inside the [install path]\config folder.
The optimal way of installing Rumble on UNIX platforms (Linux, FreeBSD etc) is to download and compile the source code. The source code packages found on the sourceforge web site will also compile and install the modules bundled with the Windows version of Rumble.
In order to compile Rumble from scratch, you will need to install the development files and runtime libraries for the following programs:
If any of these libraries or programs are missing, the installer script will of course let you know.
Once you've gotten the libraries installed, simply run the included installer file, compile.sh (using bash), and the program will be compiled for you.
When the compiling has finished, the entire mail server suite will be available in the build directory, and can be moved whereever you like. If you wish to move the executable to fx. /usr/bin, but have the rest of the configuration files, modules and mail storage located elsewhere, you can let rumble know by using the --config-dir parameter, fx:
Rumble comes with a set of pre-compiled modules in C and Lua that takes care of 99% of all users' needs for mail server extensions. Most modules can be configured through the web-based interface, or through their respective configuration files in the /config/ folder.
Greylisting is the act of intentionally delaying the receipt of emails by pretending that the mail server is unable to handle a specific SMTP request at the given time. The intention of this is to prevent emails from poorly-written spam-bots while allowing real emails to get through.
For more information on greylisting, visit fx. http://www.greylisting.org
The whitelisting module does the opposite of the greylisting and blacklisting modules; It allows certain pre-defined hosts to deliver emails immediately, without going through a quarantine phase. As some well-known email account suppliers, fx. yahoo, have mail servers that don't conform to the SMTP standards, it is necessary to allow these servers to deliver emails nonetheless....which is what the whitelisting module takes care of :)
The blacklisting module handles checks for either sender addresses or server hosts that should never be allowed to send emails to your server. This is done through a pre-defined set of non-allowed email addresses and hosts, as well as a real-time query with the DNS blacklisting providers around the world. If someone is spamming other servers, there's a 99.9% chance the blacklisting module will know about it.
For information on SpamAssassin, see http://spamassassin.apache.org
The foreman module dynamicly scales each server component to match the current load. If any server (SMTP, POP3, IMAP etc) receives a big influx of emails or requests to check email accounts, the foreman module will expand the worker pool of said service. When the load goes down again, the module will shrink the pool back to its original size.
The TLS module provides support for the STARTTLS command on the POP3, IMAP4 and SMTP servers. This is used for secure communication between client and server.