{{keywords>login language anleitung mailserver 10.04 ubuntu}}
{{description>Dieses HowTo erklärt in einzelnen Schritten die Installation und Konfiguration eines Mailservers mit Zarafa 7.0.x auf Ubuntu 10.04 LTS mit virtuellen Domains und Benutzern.}}
====== HowTo / Anleitung zur Installation von Zarafa 7.0.x auf Ubuntu 10.04 LTS======
Dieses HowTo erklärt in einzelnen Schritten die Installation und Konfiguration des Mailservers Zarafa 7.0.x auf Ubuntu 10.04 LTS mit virtuellen Domains und Benutzern.\\
__Ein installiertes Grundsystem mit SSH oder Konsolenzugang wird vorausgesetzt.__
===== Konfiguration von Ubuntu 10.04 LTS =====
==== Updates ====
Zuerst bringen wir das System auf den neusten Stand.\\
Aktualisierung der Paketlisten:
sudo apt-get updat
Aktualisierung aller Pakete für die es ein Update gibt:
sudo aptitude safe-upgrade
==== Installation zusätzlicher Software ====
Bevor Zarafa installiert werden kann müssen noch ein Datenbanksystem (MySQL), ein Webserver (Apache) und PHP installiert werden.
=== MySQL ===
sudo apt-get install mysql-server
=== Apache inkl. PHP ===
sudo apt-get install apache2-mpm-prefork libapache2-mod-php5
=== Wget ===
Um das Installationspaket über die Konsole herunterladen zu können wird Wget benötigt.
sudo apt-get install wget
===== Installation und Konfiguration von Zarafa 7.0.x =====
==== Installation ====
Die aktuelle Final Version von Zarafa 7 kann hier: [[http://download.zarafa.com/community/final/7.0/]] heruntergeladen werden.\\
Der richtige Download für ein 32bit Ubuntu System ist **zcp-7.0.x-xxxxx-ubuntu-10.04-i386-free.tar.gz**
Wechsel ins Temp-Verzeichnis.
cd /tmp
Installationspaket runterladen.
wget http://download.zarafa.com/community/final/7.0/7.0.x-xxxxx/zcp-7.0.x-xxxxx-ubuntu-10.04-i386-free.tar.gz
Am einfachsten ist es die Linkadresse zu kopieren...\\
{{::download.jpg?nolink|}}\\ \\
...und mit einem klick auf die rechte Maustaste in Putty zu kopieren.\\
{{:link.jpg?nolink|}}\\ \\
Archiv entpacken:\\
tar xfz zcp-7.0.x-xxxxx-ubuntu-10.04-i386-free.tar.gz
In das Verzeichnis des entpackten Archivs wechseln:
cd zcp-7.0.x-xxxxx-ubuntu-10.04-i386
Installation von Zarafa starten:
sudo ./install.sh
Nun sollte diese Meldung erscheinen:\\
{{::installation.jpg?nolink|}}\\
Mit ENTER bestätigen.\\ \\
Weitere noch fehlende Pakete werden automatisch vom Zarafa-Setup erkannt und zur installation aufgefordert: \\
{{::weitere_pakete.jpg?nolink|}}\\
Eingabe der Seriennummer (wenn vorhanden):\\
{{:serial.jpg?nolink|}}\\ \\
MySQL-Server Daten eingeben:\\
{{::sql_config.jpg?nolink|}}\\
Bis auf das Passwort können alle Felder leer gelassen werden.\\ \\
SMTP-Konfiguration:\\
{{::smtp_config.jpg?nolink|}}\\
Hier können alle Felder leer gelassen werden.\\ \\
Die weiteren Abfragen können alle mit ENTER bestätigt werden:\\
{{::pop_imap_config.jpg?nolink|}}\\ \\
Übersicht der MySQL-Konfiguration und erster Start des Zarafa-Servers:\\
{{::zarafa_server_start.jpg?nolink|}}
Der Versuch den Zarafa-Server zu Stoppen schlägt naütrlich fehl, da er ja noch nie gestartet wurde:\\
{{::zarafa_server_kill_fail.jpg?nolink|}}\\ \\
Der Zarafa dagent, spooler, monitor, gateway services und der ical Server werden gestartet:\\
{{::zarafa_server_components_start.jpg?nolink|}}\\
Zarafa ist nun fertig installiert.
==== Zarafa „eindeutschen“ ====
Damit später der Login-Screen und die Ordner im Postfach in deutscher Sprache erscheinen müssen einige Dateien angepasst werden.\\ \\
Wechsel ins Verzeichnis /etc/zarafa/webaccess-ajax/
cd /etc/zarafa/webaccess-ajax/
\\
Bearbeiten der Datei config.php
sudo vim config.php
\\
Zeile 165 anpassen (ja nach Version kann die Zeile etwas höher oder tiefer sein)\\
vorher:
define('LANG', 'en_EN'); // default fallback language
nachher:
define('LANG', 'de_DE.UTF-8'); // default fallback language
\\
----
\\
Wechsel ins Verzeichnis /etc/zarafa/userscripts/createuser.d
cd ../userscripts/createuser.d/
\\
Anpassen der Datei 00createstore
sudo vim 00createstore
\\
Zeile 11 anpassen (ja nach Version kann die Zeile etwas höher oder tiefer sein)\\
vorher:\\
zarafa-admin --utf8 --create-store "${ZARAFA_USER}" --lang "${ZARAFA_LANG}"
nachher:\\
zarafa-admin --utf8 --create-store "${ZARAFA_USER}" --lang "de_DE.UTF-8"
\\
----
\\
Wechsel ins Verzeichnis /etc/default\\
cd /etc/default
\\
Die Datei zarafa anpassen
sudo vim zarafa
\\
Zeile 6 anpassen (ja nach Version kann die Zeile etwas höher oder tiefer sein)\\
vorher:\\
ZARAFA_LOCALE="C"
nachher:\\
ZARAFA_LOCALE="de_DE.UTF-8"
\\
Zeile 38 anpassen (ja nach Version kann die Zeile etwas höher oder tiefer sein)\\
vorher:\\
ZARAFA_USERSCRIPT_LOCALE="C"
nachher:\\
ZARAFA_USERSCRIPT_LOCALE="de_DE.UTF-8"
\\
Zarafa neu starten:
sudo /etc/init.d/zarafa-server restart
Apache neu starten:
sudo /etc/init.d/apache2 restart
==== Anlegen eines Benutzers ====
Nun ist es soweit, der erste Benutzer kann angelegt werden. Beispiel Max Mustermann mit der E-Mail Adresse max@mustermann.de und dem Benutzernamen m.mustermann:
sudo zarafa-admin -c m.mustermann -P -e max@mustermann.de -f "Max Mustermann" -a 1
{{:zarafa_user_anlegen.jpg?nolink|}}
==== Erster Login ====
Unter der IP des Servers mit dem Zusatz /webaccess ist das Webinterface von Zarafa zu erreichen.\\
{{::zarafa_login.jpg?nolink|}}\\
So sollte es nach dem Login aus sehen:\\
{{::zarafa_posteingang.jpg?nolink|}}\\
==== Zarafa Befehler (zarafa-admin) ====
=== Benutzer ===
Benutzer mit Administratorrechten anlegen:
zarafa-admin -c "Benutzername" -P -f "Anzeigename" -e "adresse@domain.de" -a 1
----
Benutzer ohne Administratorrechten anlegen:
zarafa-admin -c "Benutzername" -P -f "Anzeigename" -e "adresse@domain.de" -a 0
----
Benutzer deaktivieren:
zarafa-admin -u Benutzername -n 1
----
Benutzer löschen:
zarafa-admin -d Benutzername
----
Anzeigename ändern:
zarafa-admin -u Benutzername -f "Anzeigename"
----
Benutzername ändern:
zarafa-admin -u Benutzername -U NeuerBenutzerame
----
Passwort ändern:
zarafa-admin -u Benutzername -P
----
Details über einen Benutzer anzeigen:
zarafa-admin --details Benutzername
----
Alle Benutzer anzeigen:
zarafa-admin -l
\\
=== Senden als ===
Benutzer 2 das Recht gewähren mit der E-Mail Adresse von Benutzer 1 zu senden.
zarafa-admin -u benutzername1 --add-sendas benutzername2
----
Zeigt eine Liste an wer alles mit der E-Mail Adresse von Benutzer 1 senden darf.
zarafa-admin --list-sendas benutzername1
\\
=== Gruppen ===
Gruppe erstellen:
zarafa-admin -g Gruppenname
----
Gruppe löschen:
zarafa-admin -G Gruppenname
----
Benutzer zur Gruppe “Test” hinzufügen
zarafa-admin -b Benutzername -i Test
----
Benutzer aus der Gruppe Test entfernen
zarafa-admin -B Benutzername -i Test
Alle Gruppen anzeigen:
zarafa-admin -L
----
==== Globales Adressbuch deaktivieren ====
Anpassen der Datei /etc/zarafa/server.cfg
enable_gab = no
===== Installation und Konfiguration von Postfix =====
==== Installation ====
Postfix installieren:
sudo apt-get install postfix
\\
Die Erklärung mit OK bestätigen:\\
{{::postfix_config_1.jpg?nolink|}}\\
\\
Internet-Site auswählen:\\
{{::postfix_config_2.jpg?nolink|}}\\
\\
Domain-Namen eintragen:\\
{{::postfix_config_3.jpg?nolink|}}\\
==== Grundkonfiguration ====
Wechsel ins Verzeichnis /etc/postfix
cd /etc/postfix
Anpassen der Datei main.cf
sudo vim main.cf
\\
Folgende Parameter müssen angepasst bzw. ergänzt werden.\\
\\
**myhostname**\\
Mit dem Hostnamen meldet sich Postfix bei anderen (Mail)servern.\\
myhostname = mail.mustermann.de
**mydomain**\\
Der Domain-Name des Systems
mydomain = mustermann.de
**myorigin**\\
Dieser Wert bestimmt den Domain-Part für lokale E-Mails
myorigin = $mydomain
**mydestination**\\
Dieser Parameter ist für die lokale Mailzustellung zuständig. Hier dürfen keine realen Domainnamen eingetragen werden. Ausschliesslich der lokale Hostname (Rechnername der bei der installation von Ubuntu festgelegt wurde) und localhost dürfen hier stehen.
mydestination = host.local, localhost.local, localhost
**virtual_mailbox_domains**\\
Hier werden reale Domainnamen eingetragen für die E-Mails angenommen werden sollen.
virtual_mailbox_domains = mustermann.de
**virtual_mailbox_maps**
virtual_mailbox_maps = hash:/etc/postfix/virtual
**virtual_alias_maps**
virtual_alias_maps = hash:/etc/postfix/virtual
**virtual_transport**
virtual_transport = lmtp:127.0.0.1:2003
\\
\\
sudo touch virtual
\\
sudo vim virtual
\\
#E-Mail Adresse oder Alias Primäre E-Mail Adresse
root max@mustermann.de
max@mustermann.de max@mustermann.de
markus@mustermann.de markus@mustermann.de
uwe@mustermann.de uwe@mustermann.de
info@mustermann.de max@mustermann.de, markus@mustermann.de, uwe@mustermann.de
\\
sudo postmap virtual
\\Postfix neu starten
sudo /etc/init.d/postfix restart
==== Test E-Mail versenden ====
Über einen Telnet-Client kann nun die erste Test E-Mail versand werden.
Verbindung zum Mailserver aufbauen:
telnet IP des Servers 25
Der Server meldet sich mit:
220 mail.mustermann.de ESMTP Postfix (Ubuntu)
\\
Dem Server "Hallo" sagen:
HELO localhost
Der Server antwortet mit:
250 mail.mustermann.de
\\
Absender angeben:
MAIL FROM: pc@host.local
Der Server antwortet mit:
250 2.1.0 Ok
\\
Den Empfänger angeben:
RCPT TO: max@mustermann.de
Der Server antwortet:
250 2.1.5 Ok
Inhalt initialisieren
DATA
Der Server antwortet mit:
354 End data with .
\\
From: pc@host.local
To: max@mustermann.de
Subject: Test E-Mail
Dies ist ein Test
.
Der Server antwortet mit:
250 2.0.0 Ok: queued as 549A3620567
(549A3620567 ist ein Individueller Wert)\\
\\
Verbindung trennen:
quit
\\
{{::zarafa_erste_e-mail.jpg?nolink|}}
==== Postfix TLS ====
TLS Verschlüsselung von ein- und ausgehenden E-Mails.
sudo vim /etc/postfix/main.cf
Folgende Einträge müssen angepasst bzw. ergänzt werden:
TLS für ein- und ausgehende E-Mails
smtpd_use_tls = yes
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_security_level = may
smtpd_tls_auth_only = no
smtpd_tls_session_cache_timeout = 3600s
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_tls_cert_file = /etc/ssl/private/mail.testdomain.de/selfmail.cert
smtpd_tls_key_file = /etc/ssl/private/mail.testdomain.de/selfmail.key
smtpd_tls_CApath = /etc/ssl/certs
smtp_tls_security_level = may
smtp_tls_cert_file = /etc/ssl/private/mail.testdomain.de/selfmail.cert
smtp_tls_key_file = /etc/ssl/private/mail.testdomain.de/selfmail.key
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
tls_random_source = dev:/dev/urandom
tls_random_prng_update_period = 3600s
==== SASL-Authentifizierung ====
Verwaltungsprogramme für die Cyrus-SASL-Benutzerdatenbank installieren
sudo apt-get install sasl2-bin
Wechsel ins Verzeichnis /etc/default
cd /etc/default
Anpassen der Datei saslauthd
sudo vim saslauthd
Folgende Parameter müssen angepasst bzw. ergänzt werden:\\
\\
**START**
START=yes
**MECHANISMS**
MECHANISMS="rimap"
**MECH_OPTIONS**
MECH_OPTIONS="127.0.0.1"
**THREADS**
THREADS=0
**OPTIONS**
OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd"
\\
Wechsel ins Verzeichnis /etc/postfix/sasl
cd /etc/postfix/sasl
Die Datei smtpd.conf anlegen
sudo touch smtpd.conf
Die Datei öffnen:
sudo vim smtpd.conf
Folgende Parameter eintragen:
pwcheck_method: saslauthd
mech_list: PLAIN LOGIN
saslauthd_path: /var/spool/postfix/var/run/saslauthd/mux
\\
Den User sasl zur Gruppe postfix hinzufügen:
usermod -a -G sasl postfix
\\
\\
Wechsel ins Verzeichnis /etc/postfix
cd /etc/postfix
Anpassen der Datei master.cf\\
sudo vim master.cf
Folgende Parameter müssen angepasst bzw. ergänzt werden:\\
**smtp**
smtp inet n - n - - smtpd
**smtps**
smtps inet n - n - - smtpd -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes
\\
Anpassen der Datei main.cf
sudo vim main.cf
Folgende Parameter am Ende hinzufügen:
# SASL Authentication
smtpd_sasl_auth_enable = yes
smtpd_sasl_exceptions_networks = $mynetworks
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
# No open relay!
smtpd_recipient_restrictions =
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination
permit
\\
Ins Verzeichnis /etc/zarafa wechseln
cd /etc/zarafa
\\
Anpassen der Datei server.cfg\\
sudo vim server.cfg
\\
Folgende Parameter müssen angepasst bzw. ergänzt werden:\\
**disabled_features**
disabled_features = #imap #pop3
\\
Postfix neu starten:
sudo /etc/init.d/postfix restart
Saslauthd neu starten:
sudo /etc/init.d/saslauthd restart
Zarafa neu starten:
sudo /etc/init.d/zarafa-server restart
==== Anti SPAM: Greylisting, Blacklisten, sonstige Maßnahmen ====
== Greylisting ==
Postgrey installieren:
sudo apt-get install postgrey
Ins Verzeichnis /etc/postfix wechseln
cd /etc/postfix
Die Datei main.cf bearbeiten
sudo vim main.cf
\\
Folgende Parameter müssen angepasst bzw. ergänzt werden:\\
vorher:
smtpd_recipient_restrictions =
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination
permit
nachher:
smtpd_recipient_restrictions =
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination
check_policy_service inet:127.0.0.1:10023
permit
\\
== Blacklisten ==
Die Datei main.cf bearbeiten
sudo vim main.cf
\\
Folgende Parameter müssen angepasst bzw. ergänzt werden:\\
vorher:
smtpd_recipient_restrictions =
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination
check_policy_service inet:127.0.0.1:10023
permit
nachher:
smtpd_recipient_restrictions =
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination
reject_rbl_client zen.spamhaus.org
reject_rbl_client dnsbl-1.uceprotect.net
reject_rbl_client ix.dnsbl.manitu.net
reject_rbl_client sbl.spamhaus.org
reject_rbl_client cbl.abuseat.org
reject_rbl_client dul.dnsbl.sorbs.net
check_policy_service inet:127.0.0.1:10023
permit
\\
== Sonstige Maßnahmen ==
Die Datei main.cf bearbeiten
sudo vim main.cf
\\
Folgende Parameter müssen angepasst bzw. ergänzt werden:\\
vorher:
smtpd_recipient_restrictions =
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination
check_policy_service inet:127.0.0.1:10023
permit
nachher:
smtpd_recipient_restrictions =
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination
reject_rbl_client zen.spamhaus.org
reject_rbl_client dnsbl-1.uceprotect.net
reject_rbl_client ix.dnsbl.manitu.net
reject_rbl_client sbl.spamhaus.org
reject_rbl_client cbl.abuseat.org
reject_rbl_client dul.dnsbl.sorbs.net
reject_invalid_hostname
reject_non_fqdn_hostname
reject_non_fqdn_sender
reject_non_fqdn_recipient
reject_unknown_sender_domain
reject_unknown_recipient_domain
check_policy_service inet:127.0.0.1:10023
permit
\\
Postfix neu starten:
sudo /etc/init.d/postfix restart
===== Erweiterte Konfiguration =====
==== Zarafa - Verschlüsselung - SSL/TLS ====
=== Keyfile und Zertifikat erstellen ===
Ins Verzeichnis /etc/zarafa wechseln:
cd /etc/zarafa
Verzeichnis gateway erstellen:
sudo mkdir gateway
RSA Key erstellen
sudo openssl genrsa -out /etc/zarafa/gateway/privkey.pem 2048
Ein selbstsigniertes Zertifikat mit einer Gültigkeit von 3 Jahren erzeugen:
openssl req -new -x509 -key /etc/zarafa/gateway/privkey.pem -out /etc/zarafa/gateway/cert.pem -days 1095
Country Name (DE für Deutschland):
DE
State or Province Name:
Bundesland
Locality Name:
Stadt
Organization Name (Firmenname, bei Privatpersonen -> Ihr Name):
Firma
Organizational Unit Name (Name der Abteilung zu der das Zertifikat gehört, ansonsten "Mailserver"):
Mailserver
Common Name (__WICHTIG__ Hier muss der Name eingetragen werden, der bei myhostname verwendet wurde.
mail.mustermann.de
Email Address (z.B. die des Webmasters oder info@mustermann.de)
info@mustermann.de
=== Secure POP3 aktivieren ===
Ins Verzeichnis /etc/zarafa wechseln:
cd /etc/zarafa
\\
Die Datei gateway.cfg anpassen:\\
Folgende Parameter müssen angepasst bzw. ergänzt werden.
pop3s_enable = yes
Zarafa-Gateway neu starten:
/etc/init.d/zarafa-gateway restart
==== Z-Push ====
Die aktuelle Version von Z-Push kann hier: [[http://z-push.sourceforge.net/]] heruntergeladen werden.\\
\\
Ins Verzeichnis /var/www wechseln:
cd /var/www
Z-Push mit Wget runterladen:
wget http://prdownload.berlios.de/z-push/z-push-1.5.x-xxxx.tar.gz
Das heruntergeladene Archiv entpacken:
tar xfz z-push-1.5.x-xxxx.tar.gz
Entpacktes Verzeichnis umbenennen:
mv z-push-1.5.x-xxxx z-push
Rechte für das Verzeichnis z-push setzen:
sudo chown -R www-data:www-data /var/www/z-push
\\
Ins Verzeichnis /etc/apache2/sites-enabled wechseln:
cd /etc/apache2/sites-enabled
Die Datei z-push anlegen:
sudo touch z-push
Die Datei z-push bearbeiten:
sudo vim z-push
Ergänzen:
Alias /Microsoft-Server-ActiveSync /var/www/z-push/index.php
\\
~~DISCUSSION:closed|Kommentare~~