Open WebMail Logo


INTRODUCTION

Open WebMail is a webmail system based on the Neomail version 1.14 from Ernie Miller. Open WebMail is designed to manage very large mail folder files in a memory efficient way. It also provides a range of features to help users migrate smoothly from Microsoft Outlook to Open WebMail.

LINKS

This site  Readme | Changes | Files | Faq | Copyright | Help | Screenshots | Icons | Download
  
Online Demo   http://openwebmail.amcpl.net/

MIRRORS

Open WebMail Project Mirrors

FEATURES for Users

Auto Login

Each user can determinte if he want to enable the auto login feature in Open WebMail. When enabled, the user don't have type his username and password in every login to Open WebMail. Open WebMail will do this automatically for him. However, for security reason, the auto login feature will be actived only if user doesn't log out in previous session and the previous session is still not timeouted. Further more, the sysadm can limit the range of IPs that are allowed to use the auto login feature.

Multiple Languages/Multiple Charsets

Open WebMail is currently available for more than 30 languages, and it is quite easy to add new language to Open WebMail if yours is still not supported. For languages with more than one charsets, Open WebMail will choose one as the default charset for the language. If a message is written with charset other than the default, it will be converted to the default charset automatically.

Strong MIME Message Capability

Open WebMail has very well support for MIME messages. While most webmail packages present MIME messages poorly compared to traditional POP clients, Open Webmail presents MIME messages in an attractive format comparable to that presented by Microsoft Outlook. Either inline or uuencoded attachments are supported.

In addition to the presention, Open WebMail also allow user to compose complex HTML messages with inline attachments or external attachments. A friendly WYSIWYG editor HTMLArea 3.0 has been built into Open WebMail, the user can write HTML messages conformtably and easily without any knowledge of HTML tags. This HTML editor can be used on IE5.5+ for Windows or Mozilla1.3+ for all platforms :)

Full Content Search

Full content search with regular expression support is provided. When a user enters a keyword in the search box, the scope of the mail folder is limited to the keyword related messages. This means the user can use the sort or static functions on the search result. The scope limit is released when the user selects another folder or refreshes the current folder.

Draft Folder Support

This feature enables the user to write a message in a number of stages, even over several days. The user can save an unfinished message into the draft folder and continue editing at any time.

Confirm Reading Support

The user can request a 'confirm-reading receipt' for each message sent. When the message is read by the recipient, a receipt will be sent back to this user.

Spelling Check Support

The spelling check in Open WebMail is very user-friendly and powerful: It makes suggestions for mis-spelled words, and the user can correct the errors very easily by selecting one of the suggestions from a drop-down menu.

vCard compliant Addressbook

The addressbook is greatly improved by Alex Teslik since 10/30/2004. The new system implements a completely vCard compliant system that is extendable and modular. vCards can be exchanged with any contact software out in the mainstream. This brings OpenWebMail up to date with current address technology and allows sharing of addressbook information among users.

POP3 Support

Multiple POP3 accounts can be defined, allowing a single user to fetch mails from a number of mail servers. All messages fetched will be stored in the INBOX folder. Should the fetch operation exceed 10 seconds (due to a slow link or large message for example), the operation will be put into background to avoid an http timeout.

Mail Filter Support

Multiple filter rules can be set to move or copy incoming mails to different folders automatically or even delete them directly. The user can categorize mails from a specific person or spammer, and identify mails containing viruses very easily by defining rules of sender, receiver, SMTP relay, subject, body or filename of attachments.

In addition to the static filter rules, openwebmail has build-in five smart filters: repeatness filter, bad format from filter, faked smtp filter, faked from filter and faked exe contenttype filter. Repeatness filter, bad format from filter and faked SMTP filter are useful in filtering messages from spammer, faked from filter and faked exe contenttype filter are useful in filtering messages generated from virus.

Since mail filtering is activated only in Open WebMail, messages will stay in the INBOX until the user reads their mail with Open WebMail. 'finger' or other mail status check utilities may report new mail incorrectly, since they are not aware of filters: A command tool 'openwebmail-tool.pl' is provided for use as finger replacement, which performs mail filtering before reporting mail status.

AntiSpam Support through SpamAssassin

Open WebMail can use the SpamAssassin as the external spamcheck module to scan messages fetched from pop3 servers or all incoming messages. The SpamAssassin will determine a spamlevel for each scanned message based on its content. The user can define a spamlevel threshold for all his messages in Open WebMail, any message with spamlevel more than this threshold will be moved from INBOX to the SPAM folder automatically.

Open WebMail also supports the Spam/NotSpam Learning through the sa-learn program in SpamAssassin. In case the spamlevel determined by SpamAssassin is not very appropriate, the user can train the system by telling it to learn the messages as Spam or NotSpam.

AntiVirus Support through ClamAV

Open WebMail can use the ClamAV as the external viruscheck module to scan messages fetched from pop3 servers or all incoming messages. If a message or its attachments is found to have virus, Open WebMail will move the message from INBOX to the VIRUS folder automatically.

Calendar with Reminder/Notification Support

The user can keep track of their appointments, meetings, birthdays, whatever, with the build-in calendar in Open WebMail. This calendar provides several views, including year view, month view, week view and day view, so the user can browse their scheduled events very easily. There is also reminder support for scheduled events, user can specify the days that the reminder should look ahead and the first 5 upcoming events will be displayed in the top of mail folder view. If the user want the event reminder to be available outside the webmail system, he can also specify a notification email address, eg: the one used by mobile phone, for each scheduled event, so he can get notification of these events on his mobile phone.

Webdisk Support

The webdisk module provides a web interface for user to use his home directory as a virtual disk on the web. It is also designed as a storage of the mail attachments, the user can freely copy attachments between mail messages and the webdisk.

The / of the virtual disk is mapped to the user's home directory, any item displayed in the virtual disk is actually located under the user home directory.

Webdisk supports basic file operations, eg: mkdir, rmdir, copy, move, rm, file upload and download. Download of multiple files or directories is supported, webdisk compresses the files into a zip stream on the fly in the transmission. It also handle many types of archives, including zip, arj, rar, tar.gz, tar.bz, tar.bz2, tgz, tbz, gz, z.... The user can compress, decompress or list the contents of archives without copying them into his computer.

HTTP Compression

Open WebMail supports compression of HTML content over HTTP. With compression turned on, the average page size has been reduced for over 80%. This feature effectively reduces the use of nework bandwidth between the client computer and the webmail server and is very useful for users with slow connection to the webmail server, eg: dialup users, PDA users.

FEATURES for System

Fast Folder Access

Folder access performance is greatly improved through the use of dbm (a simple database provided by perl). When a mail folder is selected in the folder view, Open WebMail will parse the mail folder file and cache the parsed result to a dbm. This dbm is reused whenever the user wants to access the folder. The dbm cache eliminates the scan of an entire folder for every access, a significant benefit when dealing with a large folders. The dbm is automatically synchronized with any changes to the folder itself; the dbm update is incremental if the folder modification is done by the Open WebMail application itself. The dbm will however be recreated when a folder is found to have been changed by an external program.

Efficient Message Movement

The size of a message will be slightly increased after it is read at the first time because of status change. A large movement of messages may be introduced due to the size change. Also, the user may want to move a group of messages between two folders. The routines for message update and movement have been totally rewritten so that minimal movement occurs, with correspondingly minimal memory utilization.

Smaller Memory Footprint

Much effort has been put into optimizing Open WebMail's memory utilization. The memory footprint of Open WebMail is much smaller than its predecessors when dealing with messages with large attachments (e.g. a 20MB document), as a result of which the application now runs smoothly on a medium sized machine, (e.g. a Celeron 300 with 128MB RAM).

Graceful File Lock

Since a mail folder may be used by multiple programs simultaneously, it is necessary to lock the file before accessing the folder. Open WebMail uses a blocking lock with a timeout limit of 60 seconds. It gives the lock a better chance of success than a nonblocking lock, which returns an error if the lock can not be acquired immediately. Open WebMail also supports locking by dotlock file to ensure that the file locking operates correctly on platforms operating with an incomplete implementation of NFS lockd.

Persistent Running through SpeedyCGI

SpeedyCGI is a way to run perl scripts persistently, which can make openwebmail run much more quickly. It uses machnism similar to mod_perl or FastCGI. Open WebMail has been modified to work with SpeedyCGI. All you have to do is to install the SpeedyCGI package and change the interpreter for openwebmail scripts. Kevin L. Ellis has written a tutorial and benchmark for Open WebMail + SpeedyCGI.

Remote SMTP Relaying

With the help of Net::SMTP module, openwebmail can talk SMTP to SMTP daemons on either localhost or remote machine. This gives openwebmail the better compatibility with various SMTP daemons. The system administrator also has more flexibility when designing the mail service system.

Various Authentication Modules

Various authentication modules are directly available for openwebmail, including auth_unix.pl, auth_ldap.pl, auth_mysql.pl, auth_pgsql.pl and auth_pop3.pl, auth_vm-pop3d.pl. With these modules, openwebmail can be integrated with other systems easily.

PAM support

Openwebmail can also use other sources for authentication through the PAM (pluggable authentication module). Ex: NIS+, NIS, LDAP, Radius.... Solaris 2.6, Linux and FreeBSD 3.1 are known to support PAM. For more information about PAM, please see http://www.kernel.org/pub/linux/libs/pam/

Virtual Hosting

You can have as many virtual domains as you want on same server with only one copy of openwebmail installed. Open Webmail supports per domain config file. Each domain can have its own set of configuration options, including domainname, authentication module, quota limit, mailspooldir ...

You can even setup mail accounts for users without creating real unix accounts for them. Please refer to Kevin Ellis's web page: "How to setup virtual users on Open WebMail using Postfix & vm-pop3d"

User Alias

Open Webmail can use the sendmail virtusertable for user alias mapping. The loginname typed by user may be pure name or name@somedomain. And this loginname can be mapped to another pure name or name@otherdomain in the virtusertable. This gives you the great flexibility in account management. For example, you may have john for different domains by actually mapping them to different real user ids.

  john@domain1.com	john1
  john@domain2.com	john2
  john@domain3.com	john3

Pure Virtual User Support

Pure virtual user means a mail user who can use pop3 or openwebmail to access his mails on the mail server but actually has no unix account on the server. Openwebmail pure virtual user support is currently available for system running vm-pop3d + PostFix. The authentication module auth_vdomain.pl is designed for this purpose. Openwebmail also provides the web interface which can be used to manage(add/delete/edit) these virtual users under various virtual domains. Kevin L. Ellis has written a tutorial for openwebmail + vm-pop3d + postfix for this.

Per User Capability Configuration

While options in system config file(openwebmail.conf) are applied to all users, you may find it useful to set the options on per user basis sometimes. For example, you may want to limit the client ip access for some users or limit the domain which the user can sent to. This could be easily done with the per user config file support in Open Webmail.

There are too many other small enhancements to mention. You may choose to find them by yourself...
 

AUTHENTICATION MODULES

Open Webmail has the following modules to support different types of authentication:

Name Description Maintainer
auth_ldap.pl authenticate user with LDAP Ivan Cerrato
auth_ldap_vpopmail.pl authenticate user with LDAP for vpopmail Andrea Siviero
auth_mysql.pl authenticate user with MySQL (through DBD::MySQL interface) Alan Sung
auth_mysql_postnuke.pl authenticate user with MySQL in PostNuke (through DBD::MySQL interface) Didier MICHAUT
auth_mysql_vmail.pl authenticate user with MySQL under vmail (through DBD::MySQL interface) Zoltan Kovacs
auth_nis.pl authenticate user with yppoppassd on NIS/YP server Vladimir M Costa
auth_pam.pl authenticate user with PAM openwebmail, Taco Scargo
auth_pgsql.pl authenticate user with PostgreSQL (through DBD::Pg interface)) Oliver Smith
auth_pgsql.pl authenticate user with PostgreSQL (through native interface) Veselin Slavov
auth_pop3.pl authenticate user through pop3 server openwebmail
auth_unix.pl authenticate user with unix passwd openwebmail, Trevor Paquett
auth_vdomain.pl authenticate user of virtual domain on system running vm-pop3d & postfix openwebmail


LANGUAGES

Open Webmail is available for the following languages:

Language Abbreviation Charset Lang/Templates Translation Help Translation
Arabic - Windows ar.CP1256 windows-1256 01/24/2005 Isam Ishaq  
Arabic - ISO 8859-6 ar.ISO8859-6 iso-8859-6 01/24/2005 Isam Ishaq  
Bulgarian bg windows-1251 02/15/2005 Veselin Slavov  
Catalan ca iso-8859-1 02/23/2005 Jordi Sanfeliu,
05/21/2002 Jordi Vidal
 
Czech cs iso-8859-2 03/03/2005 Milan Kerslager,
02/25/2003 Pavel Schauer,
01/06/2003 Jan Bilik,
11/15/2001 Michal Drapak
 
Chinese - Simplified zh_CN.GB2312 gb2312 09/04/2004 Wang Jun Wang Jun
Chinese - Simplified - Unicode zh_CN.utf8 utf-8 from zh_CN.GB2312  
Chinese - Traditional zh_TW.Big5 big5 up to date openwebmail Alex Huang
Chinese - Traditional - Unicode zh_TW.utf8 utf-8 from zh_TW.Big5  
Croatian hr iso-8859-2 01/28/2005 Igor Zivkovic  
Danish da iso-8859-1 03/11/2005 Gunner Poulsen,
03/05/2003 Frank
 
Deutsch de iso-8859-1 02/13/2005 Martin Bronk,
09/13/2003 Markus Zander,
02/08/2003 Christian Schoepplein,
06/14/2001 Andreas Roedl
 
Dutch nl iso-8859-1 01/28/2005 Jeroen Visser and Robert den Ouden,
10/12/2001 Christian Boer,
06/28/2001 Michiel van Slobbe
Jeroen Visser and Robert den Ouden
English en iso-8859-1 up to date openwebmail William Brillinger,
Brent Epp
Finnish fi iso-8859-1 12/30/2004 Pasi Sjoholm,
11/20/2002 Kari Paivarinta,
02/19/2002 Jouni Kivilahti,
02/19/2002 Helja Laitinen
 
French fr iso-8859-1 02/24/2005 Dominique Fournier,
09/26/2004 Nabil SEFRIOUI,
01/22/2003 Stephane HERMET,
03/21/2002 Cyril Sabatier
Frederic GLISE
Hellenic/Greek el iso-8859-7 02/16/2005 Dimitris sehh Michelinakis  
Hebrew - Windows he.CP1255 windows-1255 09/27/2003 Yehuda Drori, Shay Sevet  
Hebrew - ISO 8859-8 he.ISO8859-8 iso-8859-8 03/26/2003 Yehuda Drori  
Hungarian hu iso-8859-2 04/29/2005 Posz Marton,
02/21/2003 Peter Gervai,
01/29/2003 Nagy Endre
 
Indonesian id iso-8859-1 04/29/2005 Captain James,
04/02/2002 Hu-Wei Liang
Captain James
Italian it iso-8859-1 11/25/2004 Benedet Marvi  
Japanese - ShiftJIS ja_JP.Shift_JIS shift_jis from ja_JP.utf8  
Japanese - eucJP ja_JP.eucJP euc-jp from ja_JP.utf8  
Japanese - Unicode ja_JP.utf8 utf-8 12/23/2004 Hidetoshi,
04/25/2003 Captain James and Interactive Artists, LLC
 
Korean ko euc-kr 03/11/2005 Sungjun Park,
06/24/2003 Thomas Chung,
12/31/2001 Moonsang Kwon
 
Lithuanian lt windows-1257 01/16/2003 Alvydas Sinkunas  
Norwegian no iso-8859-1 12/19/2003 Are Tysland  
Polish pl iso-8859-2 02/13/2005 Pawel Foremski,
08/18/2004 Mikolaj Menke,
03/13/2003 Pawel Jablonski,
06/03/2002 Grzegorz Nosek,
04/26/2002 Michal Talecki
 
Portuguese pt iso-8859-1 06/18/2003 Jose Ferradeira  
Portuguese Brazil pt_BR iso-8859-1 05/12/2005 Julio Cesar Cunha,
02/25/2003 Vladimir M Costa,
08/28/2002 Rui - iG,
09/20/2001 Edison Figueira Junior
Edison Figueira Junior
Romanian ro iso-8859-2 02/23/2005 Gabriel Hojda,
07/04/2003 Zeno Popovici,
06/03/2002 Vladimir Hrusca
 
Romanian -Unicode ro.utf8 utf-8 02/23/2005 Gabriel Hojda  
Russian ru koi8-r 08/22/2004 Oleg Dzyza,
03/07/2002 Denis Mysenko
 
Serbian sr iso-8859-2 07/27/2004 Aleksandar Pejic  
Slovak sk iso-8859-2 06/18/2004 Peter Sedivy,
09/13/2003 Lubos Klokner
 
Slovenian sl windows-1250 02/15/2005 Uros Sajko  
Spanish es iso-8859-1 02/23/2005 Javier Smaldone Javier Smaldone
Swedish sv iso-8859-1 07/22/2001 Goran Jartin  
Thai th tis-620 06/24/2005 Atsawin Chaowanakritsanakul  
Turkish tr iso-8859-9 01/29/2003 Erdinc Guler  
Ukrainian uk koi8-u 05/25/2003 Volodymyr M. Lisivka  
Urdu ur utf-8 03/29/2003 Muhammad Umair Abbasi  

Some Language Charset Resources are available at

IANA: Official Names for Character Sets
W3C: Charsets supported by some popular HTML applications
W3C: Languages, countries and the charsets typically used