BSD-Wiki

Mitschrift einer FreeBSD-Installation

Benutzer-Werkzeuge

Webseiten-Werkzeuge


webmailer_roundcube

Dies ist eine alte Version des Dokuments!


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 installiert und nginx um FastCGI erweitert werden.

Installation

Zur Installation wird der Port mail/roundcube installiert und als Option SQLite für das Datenbankbackend gewählt.

+(*) SQLITE  Use SQLite backend

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

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.

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)/ {
            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;
        }
    }
}

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.

IMAP-Server tls:imap.example.com SMTP-Server ssl:smtp.example.com

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.1410691724.txt.gz · Zuletzt geändert: 2017/10/02 13:38 (Externe Bearbeitung)

Impressum