Benutzer-Werkzeuge

Webseiten-Werkzeuge


mailserver

Dies ist eine alte Version des Dokuments!


Mailserver

Für Informationen zu Mail für Endanwender siehe: Mail

Hinweise zur Installation eines Servers sind zu finden unter: https://wiki.pinneberg.freifunk.net/mail

Filter

Filterregeln können mit Sieve verarbeitet werden. Sieve kommt als Erweiterung zu Dovecot. Wird die Mailzustellung von Postfix aus über dovecot-lda durchgeführt, kann Sieve in der zugehörigen Konfigurationsdatei 15-lda.conf aktiviert werden.

15-lda.conf
protocol lda {
  mail_plugins = $mail_plugins sieve
}

Die Standard-Filterregeln werden z.B. in der Datei .dovecot.sieve eingestellt.

Mit Managesieve können die Filterregeln in Roundcube über das gleichnamige Plugin verwaltet werden. Damit ist alles hübsch integriert.

Tests

Postfix

  • postmap -q …

Dovecot

  • doveadm …

Datenbank

  • mysql postfixadmin

Spamassassin

Konfiguration in /etc/spamassassin/local.cf

Aktivierung über die Transportkonfiguration von Postfix in master.cf. Z.B.:

spamassassin unix -     n       n       -       -       pipe
  user=debian-spamd argv=/usr/bin/spamc -f -e /usr/sbin/sendmail -oi -f ${sender} ${recipient}

Der Bayes-Filter liegt unter /var/lib/spamassassin/.spamassassin. Manuell trainieren:

su -c "sa-learn --ham /tmp/mail.eml" debian-spamd
su -c "sa-learn --spam /tmp/spam.eml" debian-spamd

Informationen anzeigen

su -c "sa-learn --dump magic" debian-spamd

Razor integrieren

apt-get install razor
su debian-spamd -s /bin/bash
razor-admin -create
razor-admin -register
  Register successful.  Identity stored in /var/lib/spamassassin/.razor/identity-xxxxxxxxxx
exit

Roundcube

Installation

  • Das Verzeichnis logs muß durch den Webserver beschreibbar sein. U.a. werden Fehlermeldungen in die Datei errors.log geschrieben.
  • Konfiguration des virtuellen Servers anpassen
    <Directory .../roundcube/>
      AllowOverride All
    </Directory>
  • Einstellungen in der Konfigurationsdatei config.inc.php vornehmen
    • $config['smtp_log'] = false;, Datensparsamkeit, logs/sendmail soll nicht geschrieben werden

Update

Backup machen

tar cjf /var/backups/roundcube_$(date -I).tar.bz2 /var/www/roundcubemail
mysqldump -u root -p roundcubemail > /var/backups/mysql/roundcubedb_$(date -I).sql

Neue Version herunterladen und auspacken

cd /tmp
wget https://github.com/roundcube/roundcubemail/releases/download/1.2.3/roundcubemail-1.2.3-complete.tar.gz
tar xzf roundcubemail-1.2.3-complete.tar.gz

Installation durchführen

cd roundcubemail-1.2.3
./bin/installto.sh /var/www/roundcubemail

Berechtigungen korrigieren

cd /var/www
chown -R 0 roundcubemail
chgrp -R www-data roundcubemail

Plugin Enigma: Das Verzeichnis home muß für die Gruppe www-data beschreibbar sein.

Hinweise sind auch im ausgepacken Archiv in UPDATING vorhanden.

Kalender

Das Kalender-Plugin kommt aus dem Kolab-Projekt. Allerdings unterstützt das Original keine Verbindungen zu CalDAV-Servern. Für diese Funktion ist der Fork von Awsome-IT notwendig. Die folgende Installationsanleitung bezieht sich darauf.

  1. Quellen von Git/Gitlab herunterlade
    cd /tmp
    git clone https://gitlab.awesome-it.de/kolab/roundcube-plugins.git
    cd roundcube-plugins
    git checkout feature_caldav
    cd /<path-to-roundcube>/plugins
    cp -r /tmp/roundcube-plugins/plugins/calendar .
    cp -r /tmp/roundcube-plugins/plugins/libcalendaring .
  2. Das Kalender-Plugin hat Abhängigkeiten:
    • CURL: apt-get install php-curl, darauf achten, daß der Zertifikatsherausgeber des Zielservers in /etc/ssl/certs vorhanden ist. U.a. Let's Encrypt muß dort manuell eingetragen werden.
    • SabreDAV: apt-get install php-sabre-dav
    • OAuth-Client, dieses ist der kompliziertere Teil. Das Paket aus der Distribution wird nicht erkannt. Im Verzeichnis plugins/calendar.lib kann man etwas mit dem Composer herumwürgen:
      composer remove fkooman/oauth-client
      composer require fkooman/oauth-client

      Anscheinend ist das aber noch nicht ausreichend, es gibt noch Fehler im Frontend. → TODO

    • Hinweis: Ersetze Funktion Q() durch rcube::Q()
  3. Konfiguration für das Kalender-Plugin anlegen
    cd calendar/
    cp config.inc.php.dist config.inc.php
    edit config.inc.php
  4. Kalender-Datenbanktabellen initialisieren
    mysql -u user -p roundcubemail < drivers/database/SQL/mysql.initial.sql
    mysql -u user -p roundcubemail < drivers/carddav/SQL/mysql.initial.sql

    Für Roundcube Versin > 1.3 muß eine Anpassung in mysql.initial.sql vorgenommen werden

    mysql.initial.sql
    CREATE TABLE IF NOT EXISTS `system` (
     `name` VARCHAR(64) NOT NULL,
     `value` mediumtext,
     PRIMARY KEY(`name`)
    ) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */;
  5. Kalender-Plugin aktivieren
    cd ../../
    edit config/config.inc.php
    • 'calendar' zu der Liste der aktiven Plugins hinzufügen
      $config['plugins'] = array(
          [...]
          'libcalendaring',
          'calendar'
        );

Mailarchiv

Betrieb eines Mailarchivs mit Mail-Piler (https://www.mailpiler.org/).

mailserver.1702995341.txt.gz · Zuletzt geändert: 19.12.2023 14:15 von thooge

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki