Open WebMail is a webmail system based on
the Neomail version 1.14 from Ernie Miller.
Open WebMail is targeted on dealing with very big mail folder files in a
memory efficient way. It also provides many features to help users to
switch from Microsoft Outlook smoothly.
FEATURES
---------
Open WebMail has the following enhanced features:
For Users:
* Auto Login
* Multiple Languages/Multiple Charsets
* Strong MIME Message Capability
* Full Content Search
* Draft Folder Support
* Confirm Reading Support
* Spelling Check Support
* vCard compliant Addressbook
* POP3 Support
* Mail Filter Support
* AntiSpam Support through SpamAssassin (http://www.spamassassin.org)
* AntiVirus Support through ClamAV (http://www.clamav.net)
* Calendar with Reminder/Notification Support
* Webdisk Support
* HTTP Compression
For System:
* Fast Folder Access
* Efficient Message Movement
* Smaller Memory Footprint
* Graceful File Lock
* Various Authentication Modules
* PAM support
* Remote SMTP Relaying
* Virtual Hosting
* User Alias
* Pure Virtual User Support
* Per User Capability Configuration
* Persistent Running through SpeedyCGI
REQUIREMENT
-----------
Apache web server with cgi enabled
Perl 5.005 or above
CGI.pm-3.05.tar.gz (required)
MIME-Base64-3.01.tar.gz (required)
libnet-1.19.tar.gz (required)
Digest-1.08.tar.gz (required)
Digest-MD5-2.33.tar.gz (required)
Text-Iconv-1.2.tar.gz (required)
libiconv-1.9.1.tar.gz (required if system doesn't support iconv)
CGI-SpeedyCGI-2.22.tar.gz (optional but highly recommended, for persistent running)
Compress-Zlib-1.33.tar.gz (optional, for HTTP compression)
ispell-3.1.20.tar.gz (optional, for spellcheck)
Quota-1.4.10.tar.gz (optional, for unixfs quota support)
Authen-PAM-0.14.tar.gz (optional, for auth_pam support)
openssl-0.9.7d.tar.gz (optional, for pop3 over SSL support,
required only if system doesn't support libssl)
Net_SSLeay.pm-1.25.tar.gz (optional, for pop3 over SSL support)
IO-Socket-SSL-0.96.tar.gz (optional, for pop3 over SSL support)
clamav-0.70.tar.gz (optional, for viruscheck,
available at http://www.clamav.net)
Mail-SpamAssassin-3.02.tar.gz (optional, for spamcheck,
available at http://www.spamassassin.org)
antiword-0.35.tar.gz (optional, for msword preview)
ImageMagick-5.5.3.tar.gz (optional, for thumbnail support in webdisk)
tnef-1.2.3.1.tar.gz (optional, tnef is used mostly by mails from MS Outlook and Exchange)
wget-1.9.1.tar.gz (optional, for URL uploading support in webdisk & msg composing)
lsof_4.73A.freebsd.tar.bz2 (optional, for openwebmail-tool --unlock)
INSTALL REQUIRED PACKAGES
-------------------------
First, you have to download required packages from
http://openwebmail.org/openwebmail/download/packages/
and copy them to /tmp
CGI.pm installation:
cd /tmp
tar -zxvf CGI.pm-3.05.tar.gz
cd CGI.pm-3.05
perl Makefile.PL
make
make install
ps: It is reported that Open Webmail will hang in attachment uploading
when used with older version of CGI module. We recommend using CGI
version 2.74 or above for Open WebMail.
To check the version of your CGI module :
perl -MCGI -e 'print $CGI::VERSION'
MIME-Base64 installation:
cd /tmp
tar -zxvf MIME-Base64-3.01.tar.gz
cd MIME-Base64-3.01
perl Makefile.PL
make
make install
ps: Though you may already have the MIME-Base64 perl module,
we recommended you install MIME-Base64 module from source.
This would enable the XS support in this module which greatly
improves the encoding/decoding speed of MIME attachment.
libnet installation:
cd /tmp
tar -zxvf libnet-1.19.tar.gz
cd libnet-1.19
perl Makefile.PL (ans 'no' if asked to update configuration)
make
make install
Text-Iconv-1.2 installation:
Since Text-Iconv-1.2 is actually a perl interface to the underlying iconv()
support, you have to check if iconv() support is available in your system.
Please type the following command
man iconv
If there is no manual page for iconv, your system might not support iconv(),
You need to install libiconv package to get iconv() support.
cd /tmp
tar -zxvf libiconv-1.9.1.tar.gz
cd libiconv-1.9.1
./configure
make
make install
Type 'man iconv' again to make sure the libiconv is successfully installed.
Then we start to install the Text-Iconv package
cd /tmp
tar -zxvf Text-Iconv-1.2.tar.gz
cd Text-Iconv-1.2
perl Makefile.PL
ps: If your system is FreeBSD, or you just installed libiconv manually,
please edit the Makefile.PL and change the LIBS and INC lines
as the following before doing 'perl Makefile.PL'
'LIBS' => ['-L/usr/local/lib -liconv'], # e.g., '-lm'
'INC' => '-I/usr/local/include', # e.g., '-I/usr/include/other'
make
make test
ps: If the 'make test' failed, it means you set wrong value for LIBS and
INC in Makefile.PL or your iconv support is not complete.
You may copy the misc/patches/iconv.pl.fake to shares/iconv.pl to make
openwebmail work without iconv support.
make install
INSTALL OPENWEBMAIL
-------------------
The latest released or current version is available at
http://openwebmail.org/openwebmail/
If you are using FreeBSD and install apache with pkg_add,
1. chmod 4555 /usr/bin/suidperl
(It seems perl after 5.8.1 should set the suidperl to 555 instead,
or the suid support may not work)
2. cd /usr/local/www
tar -zxvBpf openwebmail-X.XX.tar.gz
3. cd /usr/local/www/cgi-bin/openwebmail/etc
modify openwebmail.conf for your need.
4. execute /usr/local/www/cgi-bin/openwebmail/openwebmail-tool.pl --init
ps: If you are using FreeBSD and your perl is compiled from port,
then please note that the SUID support is disabled by default
since the port for perl 5.8.1 or later
You need to do 'make -DENABLE_SUIDPERL' in making port
If you are using RedHat 7.x (or most Linux) with Apache
1. cd /var/www
tar -zxvBpf openwebmail-X.XX.tar.gz
mv data/openwebmail html/
rmdir data
2. cd /var/www/cgi-bin/openwebmail/etc
modify auth_unix.conf from defaults/auth_unix.conf
a. set passwdfile_encrypted to '/etc/shadow'
b set passwdmkdb to 'none'
modify openwebmail.conf
a. set mailspooldir to '/var/spool/mail'
b. set ow_htmldir to '/var/www/html/openwebmail'
set ow_cgidir to '/var/www/cgi-bin/openwebmail'
c. set spellcheck to '/usr/bin/ispell -a -S -w "-" -d @@@DICTIONARY@@@ -p @@@PDICNAME@@@'
d. change default_signature for your need
e. other changes you want
3. add
/var/log/openwebmail.log {
postrotate
/usr/bin/killall -HUP syslogd
endscript
}
to /etc/logrotate.d/syslog to enable logrotate on openwebmail.log
4. execute /var/www/cgi-bin/openwebmail/openwebmail-tool.pl --init
If you are using RedHat 6.2, please use /home/httpd instead of /var/www
ps: It is highly recommended to read the doc/RedHat-README.txt(contributed by
elitric.AT.yahoo.com) if you are installing Open WebMail on RedHat Linux.
ps: Thomas Chung (tchung.AT.openwebmail.org) maintains the rpm for all
released and current version of openwebmail, It is available at
http://openwebmail.org/openwebmail/download/redhat/rpm/.
Documents for RH7.3/RH8/RH9, RHEL3, FC1/FC2/FC3 are available at
http://openwebmail.org/openwebmail/download/redhat/howto/00-openwebmail.html
You can get openwebmail working in 5 minutes with this
If you are using other UNIX with apache, that is okay
Try to find the parent directory of both your data and cgi-bin directory,
eg: /usr/local/apache/share, then
1. cd /usr/local/apache/share
tar -zxvBpf openwebmail-X.XX.tar.gz
mv data/openwebmail htdocs/
rmdir data
2. cd /usr/local/apache/share/cgi-bin/openwebmail
modify openwebmail*.pl
change the #!/usr/bin/suidperl to the location where your suidperl is.
3. cd /usr/local/apache/share/cgi-bin/openwebmail/etc
modify openwebmail.conf
a. set mailspooldir to where your system mail spool is
b. set ow_htmldir to '/usr/local/apache/share/htdocs'
set ow_cgidir to '/usr/local/apache/share/cgi-bin'
c. set spellcheck to '/usr/local/bin/ispell -a -S -w "-" -d @@@DICTIONARY@@@ -p @@@PDICNAME@@@'
d. change default_signature for your need
e. other changes you want
modify auth_unix.conf from defaults/auth_unix.conf
a. set passwdfile_encrypted to '/etc/shadow'
b set passwdmkdb to 'none'
4. execute /usr/local/apache/share/cgi-bin/openwebmail/openwebmail-tool.pl --init
ps:If you are installing Open WebMail on Solaris, please put
'the path of your openwebmail cgi directory' in the first line of
file /etc/openwebmail_path.conf.
For example, if the script is located at
/usr/local/apache/share/cgi-bin/openwebmail/openwebmail.pl,
then the content of /etc/openwebmail_path.conf should be:
/usr/local/apache/share/cgi-bin/openwebmail
ps: If you are using Apache server 2.0 or later,
please edit your Apache Configuration file, replace
AddDefaultCharset ISO-8859-1
with
AddDefaultCharset off
INITIALIZE OPENWEBMAIL
----------------------
In the last step of installing openwebmail, you have done:
cd the_directory_of_openwebmail_cgi_scripts
./openwebmail-tool.pl --init
This init will create the mapping tables used by openwebmail in the future.
If you skip this step, you will not be able to access the openwebmail through
web interface.
As perl on various platforms may use different underlying dbm system, the
default setting in the_directory_of_openwebmail_cgi_scripts/etc/dbm.conf
may be not correct for your system.
The init routine will test them and try to give you some useful suggestions.
1. it checks options in etc/dbm.conf,
if they are set to wrong value, you may see output like
-------------------------------------------------------------
Please change '/the_directory_of_openwebmail_scripts/etc/dbm.conf' from
dbm_ext .db
dbmopen_ext none
dbmopen_haslock no
to
dbm_ext .db
dbmopen_ext none
dbmopen_haslock no
-------------------------------------------------------------
2. it checks if the dbm system uses DB_File.pm by default and will
suggest a necessary patch to DB_File.pm, you may see output like
-------------------------------------------------------------
Please modify /usr/libdata/perl/5.00503/mach/DB_File.pm by adding
$arg[3] = 0666 unless defined $arg[3];
before the following text (about line 247)
# make recno in Berkeley DB version 2 work like recno in version 1
-------------------------------------------------------------
Please follow the suggestion or the openwebmail may not work properly.
And don't forget to redo './openwebmail-tool.pl --init' after you complete
the modification.
USING OPENWEBMAIL WITH OTHER SMTP SERVER
----------------------------------------
To make openwebmail use other SMTP server for mail sending,
you have to set the option 'smtpserver' in openwebmail.conf.
Just change the default value '127.0.0.1' to the name/ip of that SMTP server.
Please be sure the SMTP server allows mail relayed from your openwebmail host.
FILTER SUPPORT
--------------
The mailfilter checks if messages in INBOX folder matches the filters rules
defined by user. If matches, move/copy the message to the target folder.
If you move a message to the DELETE folder, which means deleting messages
from a folder. If you use INBOX as the destination in a filter rule,
any message matching this rule will be kept in the INBOX folder and
other rules will be ignored.
VIRUSCHECK SUPPORT
------------------
Openwebmail can call external programs to do viruscheck for pop3 or
other messages in INBOX. To enable virus check support, you have to
1. install ClamAV (http://www.clamav.net/)
And ensure you have started up the daemon of the clamav - clamd
2. modify option viruscheck_pipe according to the location of clamdscan
(it is the client side of ClamAV)
3. set viruscheck_source_allowed to either pop3 or all.
This depends on the configuration of your mail system
If MTA or mail deliver will do virus scanning,
then you should set this to pop3, otherwise, you may set it to all.