WebMail

Einrichten eines Webmail Dienstes am Beispiel von SquirrelMail


Als Basis dient der auf Debian 5 Basis eingerichtete Mailserver.

Ich habe das Paket Squirrelmail (OutlookDesign) entpackt und in den Ordner htdocs/mail gespeichert. Anschliessend habe ich mittels dem Script „conf.pl“ im Ordner ./config die Einstellungen durchgeführt.
Die Datei config.php muss zum Schluss so aussehen:

-->schnipp<--
<?php 

/** 
 * SquirrelMail Configuration File 
 * Created using the configure script, conf.pl 
 */ 

global $version; 
$config_version = '1.4.0'; 
$config_use_color = 2; 

$org_name      = "Mein Name"; 
$org_logo      = SM_PATH . 'images/sm_logo.png'; 
$org_logo_width  = '308'; 
$org_logo_height = '111'; 
$org_title     = "Webmail $version"; 
$signout_page  = ''; 
$frame_top     = '_top'; 

$provider_uri     = 'http://squirrelmail.org/'; 

$provider_name     = 'Mein Name'; 

$motd = ""; 

$squirrelmail_default_language = 'de_DE'; 
$default_charset       = 'utf8'; 
$lossy_encoding        = false; 

$domain                 = 'meinedomain.de'; 
$imapServerAddress      = '192.168.1.1'; 
$imapPort               = 993; 
$useSendmail            = false; 
$smtpServerAddress      = '192.168.1.1'; 
$smtpPort               = 25; 
$sendmail_path          = '/usr/sbin/sendmail'; 
$sendmail_args          = '-i -t'; 
$pop_before_smtp        = false; 
$pop_before_smtp_host   = ''; 
$imap_server_type       = 'uw'; 
$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                 = '/opt/lampp/htdocs/mail/data/'; 
$attachment_dir           = '/opt/lampp/htdocs/mail/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] = 'compatibility'; 
$plugins[1] = 'calendar_file_backend'; 
$plugins[2] = 'newmail'; 
$plugins[3] = 'calendar'; 
-->schnapp<--

Erklärung der Einstellungen:
$domain                 = 'meinedomain.de'; -> Hier kommt meine Domain rein.
$imapServerAddress      = '192.168.1.1'; -> IP Adresse meines IMAP Servers
$smtpServerAddress      = '192.168.1.1'; -> IP Adresse meines SMTP Servers
$imap_server_type       = 'uw'; -> Typ des IMAP Servers, hier UW für UWImapd

Wichtig ist das man die Verzeichnisse für $data_dir und $attachmet_dir anlegt
damit auch Anlagen empfangen und gesendet werden können.

WEnn man sich beim Webmail dann anmeldet muss man hier die Zugangsdaten
des IMAP Servers nutzen, also lokaler Nutzername und Kennwort vom Mailserver.

Unter Optionen muss man unbedingt noch Absenderadresse eingeben, damit
die Mails auch korrekt zugestellt werden.


Als Plugins habe ich den Shared Calender sowie Newmail nachinstallierte.
Ich habe die Plugins im Verzeichnis Plugins gespeichert und dann per .conf.pl aktiviert.

In der Datei ./functions/date.php habe ich folgende Zeile ergänzt, damit die Fehlermeldungen verschwunden sind:

date_default_timezone_set('Europe/Berlin'); 

Diese Zeite muss noch in die .htaccess rein, 
um die letzten Fehlermeldungen zu unterdrücken:

php_flag display_startup_errors off
php_flag display_errors off
php_value error_reporting 0



SquirrelMail unter Ubuntu 20.04

In der Vergangenheit habe ich SquirrelMail schon mal auf einen Debian Maiserver installiert, müsste Debian 5 oder 6 gewesen sein. Nun habe ich mich aber länger nicht damit befasst und musste feststellen das SquirrelMail nicht mehr aktiv entwickelt wird und aus den Paketquellen verschwunden ist. Da die Installation aber einfach war und nur per IMAP/SMTP zum Mailserver Kontakt aufbaut habe ich mir gedacht das auch die alte Version immer noch laufen sollte. Daher habe ich mir von der Projektseite einfach die Zip herunter geladen und per Hand installiert.

Nach dem Entpacken der ZIP-Datei habe ich alles nach /var/www/html/webmail kopiert und dann die Konfiguration von SquirrelMail aufgerufen. Dazu befindet sich ein kleines Script im Verzeichnis:

/var/www/html/webmail/config/conf.pl

Hier wird die Domain aber auch die IMAP und SMTP Server abgefragt.
Für meinen Server habe ich folgende Einstellungen genommen:
$domain = ‘meinedomain.de’
$smtpServerAddress = ‘localhost’
$smtpPort = 25;
$imapServerAddress = ‘localhost’;
$imapPort = 143;
$imap_server_type = ‘dovecot’;



Alternativ kann man auch direkt die Datei
/etc/var/www/html/webmail/config/config.php
bearbeiten und dort die Werte hinterlegen.

Nach der ersten Anmeldung habe ich festgestellt das zwar der Posteingang angezeigt wurde und die üblichen Ordner aber alles was ich extra angelegt habe nicht. Man muss im Webinterface dazu die nötigen Ordner abonnieren. Unter Einstellungen -> OrdnerEinstellungen kann man die Ordner abonnieren. Zur Anmeldung muss nicht die eMail Adresse sondern der lokale Nutzername samt Kennwort genutzt werden.

This page may have a more recent version on pmwiki.org: PmWiki:WebMail, and a talk page: PmWiki:WebMail-Talk.