PostfixAdmin

Aus Tutorials
Zur Navigation springen Zur Suche springen

Da postfixdmin seine eigene Datenbankstruktur erzeugt, sollte man es daher installieren, bevor man postfix und dovecot konfiuriert.

Es ist nicht möglich, eine bereits bestehende dovecot-Datenbank zu verwenden, falls eine solche, mit abweichender Struktur, besteht.


Installation

postfixadmin herunterladen:

wget https://sourceforge.net/projects/postfixadmin/files/postfixadmin/postfixadmin-2.93/postfixadmin-2.93.tar.gz
tar -xzf postfixadmin-2.93.tar.gz
sudo mv postfixadmin-2.93 /var/www/postfixadmin/
sudo chown -R www-data:www-data /var/www/postfixadmin/

Datenbank anlegen:

mysql -u root -p 
mysql> create database if not exists postfix;
mysql> create user 'postfix'@'%' identified by '<password>';
mysql> grant all privileges on postfix.* to 'postfix'@'%';
mysql> flush privileges; 
mysql> quit;

Konfiguration

Apache2

sudo touch /etc/apache2/conf-available/postfixadmin.conf
Alias /postfixadmin "/var/www/postfixadmin/"
<Directory "/var/www/postfixadmin">
    Options +FollowSymLinks
    AllowOverride All

    <IfModule mod_dav.c>
      Dav off
    </IfModule>

    SetEnv HOME /var/www/postfixadmin
    SetEnv HTTP_HOME /var/www/postfixadmin
</Directory>

sudo a2enconf postfixadmin
sudo service apache2 restart

PostfixAdmin

Konfigurationsdatei anlegen (überschreibt die Standardwerte in config.inc.php):

cd /var/www/postfixadmin/
sudo -u www-data nano config.local.php

Datei sollte etwa folgendermaßen aussehen:

<?php
$CONF['configured'] = true;
$CONF['setup_password'] = '<setup password>';
$CONF['default_language'] = 'de';
$CONF['database_type'] = 'mysql';
$CONF['database_user'] = 'postfix';
$CONF['database_password'] = '<database password>';
$CONF['database_name'] = 'postfix';
$CONF['admin_email'] = '<mail address>';
$CONF['encrypt'] = 'dovecot:SHA512-CRYPT';
$CONF['dovecotpw'] = "/usr/bin/doveadm pw";
$CONF['transport'] = 'YES';
$CONF['default_aliasis'] = array (
     'abuse' => '<mail address>',
     'hostmaster' => '<mail address>',
     'postmaster' => '<mail address>',
     'webmaster' => '<mail address>'
);
$CONF['password_validation'] = array(
#    '/regular expression/' => '$PALANG key (optional: + parameter)',
    '/.{5}/'                => 'password_too_short 5',      # minimum length 5 characters
    '/([a-zA-Z].*){3}/'     => 'password_no_characters 3',  # must contain at least 3 characters
    '/([0-9].*){1}/'        => 'password_no_digits 1',      # must contain at least 1 digit(s)
);
$CONF['footer_text'] = 'Return to mail.<domain>';
$CONF['footer_link'] = 'https://mail.<domain>';
$CONF['mailbox_postcreation_script'] = '/usr/local/bin/postfixadmin-mailbox-postcreation.sh';
$CONF['mailbox_postdeletion_script'] = '/usr/local/bin/postfixadmin-mailbox-postdeletion.sh';
?>

Verzeichnisse automatisch erstellen bzw. löschen

Die Scripte dafür liegen bereits in $DOCUMENT_ROOT/ADDITIONS und müssen nur noch ins cgi-bin-Verzeichnis kopiert werden:

sudo cp /var/www/postfixadmin/ADDITIONS/postfixadmin-mailbox-postcreation.sh /usr/local/bin/
sudo cp /var/www/postfixadmin/ADDITIONS/postfixadmin-mailbox-postdeletion.sh /usr/local/bin/
sudo chown root:vmail /usr/local/bin/postfixadmin-mailbox-post*.sh
sudo chmod 750 /usr/local/bin/postfixadmin-mailbox-post*.sh
sudo visudo 
# Allow postfixadmin to create/delete maildirs
www-data ALL=(vmail) NOPASSWD: /usr/local/bin/postfixadmin-mailbox-postcreation.sh
www-data ALL=(vmail) NOPASSWD: /usr/local/bin/postfixadmin-mailbox-postdeletion.sh

Im File /usr/local/bin/postfixadmin-mailbox-postcreation.sh folgende Zeilen anpassen:

basedir=/var/vmail
maildirmake.dovecot "$maildir"

Im File /usr/local/bin/postfixadmin-mailbox-postdeletion.sh folgende Zeilen anpassen:

basedir=/var/vmail
trashbase=/var/vmail-deleted

Links

http://postfixadmin.sourceforge.net/

https://blog.unterhaltungsbox.com/mailserver-mit-postfix-dovecot-postfixadmin-und-mysql/

https://www.nesono.com/book/export/html/224

http://www.bunzel.net/2012/07/30/postfixadmin-aufsetzen/

https://wiki.archlinux.org/index.php/Virtual_user_mail_system

https://sourceforge.net/p/postfixadmin/discussion/676076/thread/b55c9850/

https://www.howtoforge.com/virtual_users_postfix_courier_mailscanner_clamav_centos_p5


Zurück zu Mailserver einrichten