Probleme und Fragen zum Thema Emailserver

sbr2d2

Registered User
Hallo alle zusammen,

ich wurde gebeten einen Server neu zu installieren. Auf dem jetzigen läuft Plesk Onyx auf einem Ubuntu 16.04. Die Aufgabe ist jetzt von Plesk weg zu kommen. Und da habe ich ein paar Probleme.
Als Setup hatte ich mir vorgestellt Postfix, Dovecut und Roundcube. Ich habe zum testen einen Server bei Netcup zur Verfügung. Das gute daran ist das man den aus machen kann wenn man nichts mehr macht.
Zu den Problemen. Wenn ich das ganze fertig installiert habe, erschließt sich mir noch nicht ganz, wie ich die Postfächer und Emailadressen anlege. Früher habe ich da ja auch ein Panel für gehabt, aber es sollen keine Panels mehr drauf.
Also ist Postfixadmin keine Möglichkeit. Und dann wäre da noch das DNS System. Als rDNS habe ich jetzt hostname.domain.tld gesetzt. Dann habe ich einen A-Record auf die Ip des Servers mit domain.tld. Einen mx mit mail.domain.tld ist auch vorhanden. Einen zweiten mx kann ich nicht anlegen weil nur ein Server da ist. Postfix antwortet mit hostname.domain.tld. Ist das soweit richtig?
 
Wie du deine Postfächer anlegen musst, hängt von deinem Setup an (Konfigurationdatei, Datenbank, Systemuser usw.).
Zum DNS-Setup: A-Record erstellen mit hostname.hauptdomain.tld mit der IP des Servers, PTR der IP löst dann wieder auf hostname.hauptdomin.tld auf. Der Postfix meldet sich im HELO auch mit hostname.hautpdomain.tld.
Als MX kannst du ebenfalls hostname.hauptdomain.tld nehmen, oder du legst dir einen A-Record mail.hauptdomain.tld an und läßt den MX darauf zeigen (MX zeigt immer auf einen A-Record, nicht auf einen CNAME oder eine IP). Das SSL-zertifikat sollte übrigens auf den Eintrag im MX ausgestellt sein.
 
Einen Mailserver mit allen Drum & Dran komplett ohne grafische Oberfläche zu verwalten ist generell, gelinde gesagt, ein Krampf. Gibt es einen spezifischen Grund für den panel-freien Aufbau? Diese müssen ja so wie Postfixadmin oder eine Basis-Froxlorinstallation keineswegs so intrusiv wie Pest sein.

Sogar *mit* Panel ist Installation und Verwaltung eines Mailservers so ziemlich das Komplexeste an einem Webserversystem.
 
Postfixadmin würde ich auch mehr als Benutzer-Verwaltung sehen und nicht als Admin-Oberfläche. Ich bin kein Fan von umfangreichen Interfaces wie Plesk und Co, aber für einige Sachen sind Webfrontends schon hilfreich - Postfixadmin setze ich z.B. selbst ein.
 
Zum DNS-Setup: A-Record erstellen mit hostname.hauptdomain.tld mit der IP des Servers,
Den habe ich glatt vergessen.

Das SSL-zertifikat sollte übrigens auf den Eintrag im MX ausgestellt sein.
Gut zu wissen, war mir bisher nicht bekannt

Gibt es einen spezifischen Grund für den panel-freien Aufbau?
Es sollen so wenig Dienste wie möglich drauf und außerdem erhöht es den Lernfaktor für mich. Aber sollte es zu kompliziert werden, werde ich wohl doch so etwas wie Postfixadmin drauf machen müssen. Hatte auch ein wenig drauf gebaut den Wartungsaufwand so gering wie möglich zu halten.
 
Die habe ich schon auf dem Schirm, vor allem die Konfigs :) .
Am Ende der Dovecot-HowTo findest Du ein kleines Script zum Anlegen von Mailusern bei Verwendung von Dovecot-SASL und Dovecot-passwd. Eventuell muss das Script für Dein Linux-System geringfügig angepasst werden, das sollte aber für Dich kein grosses Problem sein ;)

Ansonsten nehme ich Anregungen, Verbesserungsvorschläge, Bugfixe und Bugreports immer gerne entgegen.
 
Kleines Update.

Ich habe jetzt auf einem Ubuntu 16.04 minimal diese Anleitung angewendet. Was ich persönlich gut finde, das viel erklärt wird von dem was passiert und wofür es gut ist. Wenn ich mxttolbox glauben soll, scheint wohl auch alles gut zu sein. Mail weiterleiten funktioniert, nur der Empfang noch nicht. Habe dann Testweise mal Roundcube mit drauf gemacht und phpmyadmin( ist einfach angenehmer durch die Datenbanken zu klicken) Jetzt habe ich nur noch ein Problem mit dovecot-sieve. Deswegen scheint auch der login über roundcube nicht zu klappen. Hier mal ein paar logs.
Code:
mail.log

Oct 16 20:56:18 freaks-web dovecot: lmtp(blu@freaks4life.eu): Fatal: Plugin 'sieve_imapsieve' not found from directory /usr/lib/dovecot/modules/sieve
Ein ls auf den Ornder sagt mir aber was anderes
Code:
root@freaks-web:/usr/lib/dovecot/modules/sieve# ls
lib90_sieve_extprograms_plugin.so

Selbiges im mailerr.log
Code:
Oct 16 21:06:18 freaks-web dovecot: config: Error: managesieve-login: dump-capability process returned 89
Oct 16 21:06:18 freaks-web dovecot: lmtp(blu@freaks4life.eu): Fatal: Plugin 'sieve_imapsieve' not found from directory /usr/lib/dovecot/modules/sieve

Dann noch die dovecot.conf
Code:
###
### Aktivierte Protokolle
#############################

protocols = imap lmtp sieve



###
### TLS Config
#######################

ssl = required
ssl_cert = </etc/letsencrypt/live/freaks-web.freaks4life.eu/fullchain.pem
ssl_key = </etc/letsencrypt/live/freaks-web.freaks4life.eu/privkey.pem
ssl_cipher_list = EDH+CAMELLIA:EDH+aRSA:EECDH+aRSA+AESGCM:EECDH+aRSA+SHA256:EECDH:+CAMELLIA128:+AES128:+SSLv3:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!DSS:!RC4:!SEED:!IDEA:!ECDSA:kEDH:CAMELLIA128-SHA:AES128-SHA
ssl_prefer_server_ciphers = yes



###
### Dovecot services
################################

service imap-login {
    inet_listener imap {
        port = 143
    }
}


service managesieve-login {
    inet_listener sieve {
        port = 4190
    }
}


service lmtp {
    unix_listener /var/spool/postfix/private/dovecot-lmtp {
        mode = 0660
        group = postfix
        user = postfix
    }

    user = vmail
}


service auth {
    ### Auth socket für Postfix
    unix_listener /var/spool/postfix/private/auth {
        mode = 0660
        user = postfix
        group = postfix
    }

    ### Auth socket für LMTP-Dienst
    unix_listener auth-userdb {
        mode = 0660
        user = vmail
        group = vmail
    }
}


###
###  Protocol settings
#############################

protocol imap {
    mail_plugins = $mail_plugins quota imap_quota imap_sieve
    mail_max_userip_connections = 20
    imap_idle_notify_interval = 29 mins
}

protocol lmtp {
    postmaster_address = postmaster@freaks4live.eu
    mail_plugins = $mail_plugins sieve
}



###
### Client authentication
#############################

disable_plaintext_auth = yes
auth_mechanisms = plain login


passdb {
    driver = sql
    args = /etc/dovecot/dovecot-sql.conf
}

userdb {
    driver = sql
    args = /etc/dovecot/dovecot-sql.conf
}


###
### Mail location
#######################

mail_uid = vmail
mail_gid = vmail
mail_privileged_group = vmail


mail_home = /var/vmail/mailboxes/%d/%n
mail_location = maildir:~/mail:LAYOUT=fs



###
### Mailbox configuration
########################################

namespace inbox {
    inbox = yes

    mailbox Spam {
        auto = subscribe
        special_use = \Junk
    }

    mailbox Trash {
        auto = subscribe
        special_use = \Trash
    }

    mailbox Drafts {
        auto = subscribe
        special_use = \Drafts
    }

    mailbox Sent {
        auto = subscribe
        special_use = \Sent
    }
}



###
### Mail plugins
############################


plugin {
    sieve_plugins = sieve_imapsieve sieve_extprograms
    sieve_before = /var/vmail/sieve/global/spam-global.sieve
    sieve = file:/var/vmail/sieve/%d/%n/scripts;active=/var/vmail/sieve/%d/%n/active-script.sieve

    ###
    ### Spam learning
    ###
    # From elsewhere to Spam folder
    imapsieve_mailbox1_name = Spam
    imapsieve_mailbox1_causes = COPY
    imapsieve_mailbox1_before = file:/var/vmail/sieve/global/learn-spam.sieve

    # From Spam folder to elsewhere
    imapsieve_mailbox2_name = *
    imapsieve_mailbox2_from = Spam
    imapsieve_mailbox2_causes = COPY
    imapsieve_mailbox2_before = file:/var/vmail/sieve/global/learn-ham.sieve

    sieve_pipe_bin_dir = /usr/bin
    sieve_global_extensions = +vnd.dovecot.pipe

    quota = maildir:User quota
    quota_exceeded_message = Benutzer %u hat das Speichervolumen überschritten. / User %u has exhausted allowed storage space.
}
Und hier die config.inc.php von roundcube
Code:
<?php



$config = array();


$config['db_dsnw'] = 'mysql://roundcube:superpasswort@localhost/roundcube';

$config['default_host'] = 'localhost';


$config['smtp_server'] = 'tls://freaks4life.eu';


$config['smtp_port'] = 587;


$config['smtp_user'] = '%u';


$config['smtp_pass'] = '%p';


$config['support_url'] = 'freaks4life.eu';


$config['product_name'] = 'Roundcube';


$config['des_key'] = 'rcmail-!24ByDESkey*r';

// List of active plugins (in plugins/ directory)
$config['plugins'] = array(
    'archive',
    'zipdownload',
);

// skin name: folder from skins/
$config['skin'] = 'larry';

Vielleicht habt könnt ihr mir den entscheidenden Tipp geben was da jetzt klemmt.
Vielen Dank erstmal bis hier her :)
 

Attachments

  • Screenshot_2.jpg
    Screenshot_2.jpg
    54.7 KB · Views: 167
Das genannte Plugin gibt es erst ab Dovecot 2.2.24. Xenial verwendet 2.2.22. In dem Blog taucht es übrigens auch nicht auf. Warum schreibst du es dann in die dovecot.conf?
 
Das genannte Plugin gibt es erst ab Dovecot 2.2.24. Xenial verwendet 2.2.22. In dem Blog taucht es übrigens auch nicht auf.

Doch es ist im besagten Blog zu finden, ab dem Part "Dovecot installieren und konfigurieren". Ich muss zugeben, ich habe mich da nicht ausführlich drüber informiert wie alles zusammen passt. Ich werde dann mal sieve raus nehmen. Wenn dann das Setup läuft teste ich das nächste. Das verlinkte von Joe User sieht etwas schlanker aus bei gleicher Leistung.

Edith fragt grad nochmal nach, sicher das Dovecut erst ab Version 2.2.24 sieve unterstützt? Kann da drüber nichts finden...
 
Last edited by a moderator:
Dovecot unterstützt erst ab Version 2.2.24 die passenden Version von Pidgeonsieve, welche das Plugin imap_sieve benötigt (und daher bei der 2.2.22 noch nicht vorhanden ist). Bitte nicht mit dem Plugin sieve verwechseln, welches auch schon früher vorhanden ist.
Zu dem imap_sieve Plugin siehe Dovecot Wiki.
 
Back
Top