BSD-Wiki

Mitschrift einer FreeBSD-Installation

Benutzer-Werkzeuge

Webseiten-Werkzeuge


webmailer_roundcube

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

webmailer_roundcube [2014/09/17 15:18]
rakor
webmailer_roundcube [2017/10/02 13:40]
Zeile 1: Zeile 1:
-===== Allgemein ===== 
-Roundcube ist ein fortschrittlicher Webmailer. Er ist im Prinzip ein IMAP-Mailclient der im Browser läuft. 
  
-**Wichtig:​** Diese Anleitung ist ein Teil von [[Mailserver einrichten]] und setzt voraus, dass bereits ein [[Mailserver auf OpenSMTPd]] und [[Dovecot2]] installiert und konfiguriert wurden! Soll **roundcube** zur Verwaltung von //​Sieve-Regeln//​ verwendet werden muss ebenfalls [[Sieve in Dovecot aktivieren]] durchgeführt worden sein. 
- 
-Die Folgende Anleitung setzt auf //SQLite3// als Datenbankbackend um kein extra Datenbankmanager laufen zu lassen. In der Standardkonfiguration setzt //​roundcube//​ auf //MySQL// als Datenbankbackend. 
- 
-===== Webserver installieren ===== 
-Da //​Roundcube//​ ein Webclient ist benötigt man um ihn zu betreiben natürlich zunächst einen Webserver. Im Weiteren wird die Installation zusammen mit dem Webserver //nginx// angenommen. 
-Die Installation des //nginx// Webservers wird im Artikel [[Webserver nginx installieren]] beschrieben. Des weiteren muss [[php mit fastcgi installieren | php mit FastCGI]] installiert und [[nginx um FastCGI erweitern | nginx um FastCGI erweitert]] werden. 
- 
-===== Installation ===== 
-Zur Installation wird der Port //​mail/​roundcube//​ installiert und als Option **SQLite** für das Datenbankbackend gewählt. 
- 
-<​code>​ 
-+(*) SQLITE ​ Use SQLite backend 
-</​code>​ 
- 
-Alle anderen Ports können mit Standardeinstellungen installiert werden. 
- 
-==== Weitere Pakete installieren ==== 
-Zusätzlich werden noch die folgenden optionalen Pakete installiert.  ​ 
-  * sysutils/​php5-fileinfo 
-  * security/​php5-openssl 
-  * security/​php5-mcrypt 
-  * graphics/​php5-exif 
- 
-Roundcube wurde nun unter ///​usr/​local/​www/​roundcube//​ installiert. Nun werden noch die Dateirechte angepasst: 
-<​code>​ 
-# chown -R www:www /​usr/​local/​www/​roundcube/​* 
-</​code>​ 
- 
-===== nginx konfigurieren ===== 
-Da der E-Mailzugang etwas recht persönliches ist sollte auch der Zugang zu //​Roundcube//​ ausschliesslich verschlüsselt erfolgen. Demnach wird zunächst ein OpenSSL-Zertifikat angelegt wie in [[OpenSSL Zertifikat erstellen]] beschrieben. Anschliessend wird der bereits installierte //nginx// so konfiguriert,​ dass unverschlüsselte Anfragen auf Port 80 automatisch auf HTTPS umgeleitet werden. Hierzu wird die ///​usr/​local/​etc/​nginx/​nginx.conf//​ wie folgt angepasst. 
-<​file>​ 
-worker_processes ​ 1; 
- 
-events { 
-    worker_connections ​ 1024; 
-} 
- 
-http { 
-    include ​           mime.types; 
-    default_type ​      ​application/​octet-stream;​ 
-    sendfile ​          on; 
-    keepalive_timeout ​ 65; 
- 
-    server { # Server auf Port 80 (HTTP) leitet an https: weiter. SSL erzwingen. 
-        listen 80; 
-        server_name example.com # Hier richtigen Servernamen eintragen 
-        return 301 https://​$server_name$request_uri; ​ # enforce 
-    } 
- 
-    server { # Server an Port 443 ruer SSL-verschluesselte Verbindungen 
-        listen 443 ssl; 
-        server_name example.com;​ # Hier richtigen Servernamen eintragen 
-        ​ 
-        # Zertifikat und Schluessel fuer die verschluesselte Verbindung 
-        ssl_certificate ​    /​etc/​opensslcerts/​official-mail.crt;​ 
-        ssl_certificate_key /​etc/​opensslcerts/​official-mail.key;​ 
- 
-        root /​usr/​local/​www/​roundcube;​ 
-        index index.php index.html; 
-        ​ 
-        # Fehlercodes umleiten 
-        error_page 500 502 503 504 /50x.html; 
-        location = /50x.html { 
-            root /​usr/​local/​www/​nginx;​ 
-        } 
- 
-        # kein Zugriff auf die Verzeichnisse 
-        location ~ ^/​(bin|SQL|config)/​ { 
-            deny all; 
-        } 
- 
-        # keine versteckten Dateien 
-        location ~ /\. { 
-            deny all; 
-            access_log off; 
-            log_not_found off; 
-        } 
-        ​ 
-        # PHP-Scripte per FastCGI aufrufen 
-        location ~ \.php$ { 
-            include fastcgi_params;​ 
-            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;​ 
-            fastcgi_pass unix:/​var/​run/​php-fpm.sock;​ 
-        } 
-    } 
-} 
-</​file>​ 
- 
-===== Verzeichnis für die SQLite-Datenbank anlegen ===== 
-Soll die Datenbank für //​Roundcube//​ z.B. im Verzeichnis ///​var/​db/​roundcube//​ angelegt werden muss dieses zunächst erzeugt und mit den entsprechenden Rechten versehen werden. 
-<​code>​ 
-# mkdir -p /​var/​db/​roundcube 
-# chown www:www /​var/​db/​roundcube 
-</​code>​ 
- 
-===== Basiskonfiguration von Roundcube ===== 
-Nun sollte //​Roundcube//​ grundsätzlich von aussen erreichbar sein. Somit kann nun die grundlegende Konfiguration per Browser erfolgen. Um den Installer zu starten wird die folgende URL aufgerufen **https://​example.com/​installer**. Im Browser erfolgt nun die Konfiguration von //​Roundcube//​. 
- 
-Um die Installation mittels einer SQLite-Datenbank durchzuführen müssen im Bereich //Database setup// die folgenden Felder geleert werden: ​ 
-  * Database server (omit for sqlite) 
-  * Database user name (needs write permissions)(omit for sqlite) 
-  * Database password (omit for sqlite) 
- 
-In das Feld //Database name (use absolute path and filename for sqlite)// wird nun noch ein absoluter Pfad zur Datenbank eingetragen. Der Pfad sollte nicht im Roundcube-Verzeichnis liegen, Eine Empfehlung wäre ///​var/​db/​roundcube/​roundcube.db//​. 
- 
-Unter //IMAP settings// wird als //​default_host//​ der IMAP-Server hinterlegt (z.B. ssl://​mail.example.com). Ebenso wird der //​smtp_server//​ unter //SMTP Settings// eingetragen (z.B. ssl://​mail.example.com) und der Port unter  //​smtp_port//​ auf //465// gesetzt um ausschliesslich den verschlüsselten Zugang zu verwenden. Zusätzlich sollte //Use the current IMAP username and password for SMTP authentication//​ angehakt werden um nicht extra das SMTP-Kennwort speichern zu müssen. 
- 
- 
-==== Konfiguration setzen ==== 
-Nach Abschluss des Installationsdialogs wird die fertige Konfiguration angezeigt. Diese wird komplett kopiert und in der Datei ///​usr/​local/​www/​roundcube/​config/​config.inc.php//​ gespeichert. 
- 
-==== Konfiguration schützen ==== 
-Um die Konfiguration zu schützen sollte der //​installer//​ Ordner im Roundcube-Verzeichnis gelöscht werden. 
- 
-Um die SQLite-Datenbank sollte noch mit den richtigen Zugriffsrechten versehen werden: 
-<​code>​ 
-# chmod 640 /​var/​db/​roundcube/​roundcube.db 
-</​code>​ 
- 
-===== Weitere Schritte ===== 
- 
-Um mittels //​Roundcube//​ in der Lage zu sein //​Sieve//​-Regeln zur Mailfilterung sehr einfach zu definieren kann man zum Abschluss noch [[Roundcube um managesieve-Plugin erweitern]]. 
webmailer_roundcube.txt · Zuletzt geändert: 2017/10/02 13:40 (Externe Bearbeitung)

Impressum