If you have a webserver running on your network, you could deploy a webmail solution very easily. We suggest squirrelmail (see http://www.squirrelmail.org) and maybe in the future Roundcube (http://roundcube.net)
For instance the Dutch ISP XS4ALL (www.xs4all.nl) uses Squirrelmail as a webmail solution. They also do a huge amount of development for the Squirrelmail project.
Install an Apache webserver with support for PHPv4 or PHPv5. Both version 1.x and 2.x of Apache will do. Documentation on how to install Apache is available here.
Debian Etch provides packages for Squirrelmail v1.4.9a
apt-get install squirrelmail squirrelmail-decode squirrelmail-locales
You can configure Squirrelmail using the command:
/usr/sbin/squirrelmail-configure
As an alternative you can just edit /etc/squirrelmail/config.php.
You might want to add the Avelsieve-plugin to your configuration. Avelsieve supplies a web based interface that enables squirrelmail users to create server side mail filtering rules (e.g. out of office messages). You can obtain more information and download Avelsieve at http://email.uoa.gr/projects/squirrelmail/avelsieve_download.php
NOTE: Avelsieve version 1.0.1 (stable) has been reported to NOT work flawlessly within the Hannibal systemstack. We advice to choose Avelsieve version 1.9.7
This is the relevant part of /etc/squirrelmail/config.php:
/** * SquirrelMail Configuration File * Created using the configure script, conf.pl */ global $version; $config_version = '1.4.0'; $config_use_color = 2; $org_name = "SquirrelMail"; $org_logo = SM_PATH . 'images/sm_logo.png'; $org_logo_width = '308'; $org_logo_height = '111'; $org_title = "SquirrelMail $version"; $signout_page = ''; $frame_top = '_top'; $provider_uri = 'http://www.squirrelmail.org/'; $provider_name = 'SquirrelMail'; $motd = ""; $squirrelmail_default_language = 'nl_NL'; $default_charset = 'iso-8859-1'; $lossy_encoding = false; $domain = 'webmail.intra.example.com'; $imapServerAddress = '192.168.1.15'; $imapPort = 143; $useSendmail = false; $smtpServerAddress = '192.168.1.14'; $smtpPort = 25; $sendmail_path = '/usr/sbin/sendmail'; $sendmail_args = '-i -t'; $pop_before_smtp = false; $imap_server_type = 'cyrus'; $invert_time = false; $optional_delimiter = 'detect'; $encode_header_key = ''; $default_folder_prefix = ''; $trash_folder = 'INBOX.Trash'; $sent_folder = 'INBOX.Sent'; $draft_folder = 'INBOX.Drafts'; $default_move_to_trash = true; $default_move_to_sent = true; $default_save_as_draft = true; $show_prefix_option = false; $list_special_folders_first = true; $use_special_folder_color = true; $auto_expunge = true; $default_sub_of_inbox = true; $show_contain_subfolders_option = false; $default_unseen_notify = 2; $default_unseen_type = 1; $auto_create_special = true; $delete_folder = false; $noselect_fix_enable = false; $data_dir = '/var/lib/squirrelmail/data/'; $attachment_dir = '/var/spool/squirrelmail/attach/'; $dir_hash_level = 0; $default_left_size = '150'; $force_username_lowercase = false; $default_use_priority = true; $hide_sm_attributions = false; $default_use_mdn = true; $edit_identity = true; $edit_name = true; $hide_auth_header = false; $allow_thread_sort = false; $allow_server_sort = false; $allow_charset_search = true; $uid_support = true; $plugins[0] = 'calendar'; $plugins[1] = 'delete_move_next'; $plugins[2] = 'squirrelspell'; $plugins[3] = 'translate'; $plugins[4] = 'avelsieve'; ...
You can modify the URL that the logon-screen will be available at by changing /etc/squirrelmail/apache.conf The default location is a subdirectory of your webserver (e.g. webmail.intra.example.com/squirrelmail). Check that Apache is configured for Squirrelmail, e.g. create a symlink like:
cd /etc/apache2/conf.d ln -s /etc/squirrelmail/apache.conf squirrelmail.conf
For language settings to work properly you might want to add extra locales to your system. You can do this like so:
dpkg-reconfigure locales
Also check this setting in /etc/squirrelmail/apache.conf
php_flag register_globals on