Hallo,
ich bin gerade dabei einen Mailserver aufzusetzen und stehe dabei vor folgendem Problem:
Ich möchte die Mails via maildrop zustellen, da ich dadurch die Möglichkeit habe soft quotas auf die einzelnen Mailboxen zu setzen.
Die Benutzerverwaltung des Servers läuft über mySQL und in der User Tabelle gibt es eine Spalte für Quotas. Allerdings bringt mir die Postfix pipe bzw. maildrop immer folgenden Fehler: (temporary failure. Command output: /usr/local/maildrop/current/bin/maildrop: Invalid user specified.
Es sieht so aus, als ob maildrop gar nicht auf die mySQL Tabelle zugreifen würde. Würde mich freuen, wenn jemand eine Idee zu diesem Problem hätte, aber vielleicht gibts ja auch noch eine andere Möglichkeit Quotas umzusetzen außer über maildrop.
Hier noch meine Konfigurationsdateien:
main.cf
PHP-Code:
# /etc/postfix/main.cf
soft_bounce = no
queue_directory = /home/mail
command_directory = /usr/local/postfix/current/sbin
daemon_directory = /usr/local/postfix/current/libexec
mail_owner = postfix
default_privs = postagent
myhostname = mail.testserver.lan
mydomain = testserver.lan
myorigin = $mydomain
inet_interfaces = all
unknown_local_recipient_reject_code = 450
mynetworks_style = host
smtpd_banner = $myhostname ESMTP $mail_name
debug_peer_level = 2
debugger_command =
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
xxgdb $daemon_directory/$process_name $process_id & sleep 5
sendmail_path = /usr/sbin/sendmail
newaliases_path = /usr/bin/newaliases
mailq_path = /usr/bin/mailq
setgid_group = postdrop
manpage_directory = /usr/local/postfix/current/man
sample_directory = /etc/postfix/sample
readme_directory = no
canonical_maps = mysql:/etc/postfix/mysql/canonical.cf
virtual_transport=maildrop
virtual_mailbox_maps=mysql:/etc/postfix/mysql/mailbox.cf
virtual_uid_maps=mysql:/etc/postfix/mysql/uid.cf
virtual_gid_maps=mysql:/etc/postfix/mysql/gid.cf
virtual_mailbox_base=/
virtual_mailbox_domains=mysql:/etc/postfix/mysql/domains.cf
mydestination = $transport_maps
virtual_alias_maps=mysql:/etc/postfix/mysql/forward.cf
virtual_mailbox_limit_inbox = no
virtual_mailbox_limit_maps = mysql:/etc/postfix/mysql/quota.cf
virtual_mailbox_limit_override = no
virtual_maildir_extended = yes
virtual_create_maildirsize = yes
virtual_maildir_extended = yes
virtual_mailbox_limit = 100000000
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname
broken_sasl_auth_clients = no
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
message_size_limit = 10485760
master.cf
PHP-Code:
# /etc/postfix/master.cf
# ==========================================================================
# service type private unpriv chroot wakeup maxproc command + args
# (yes) (yes) (yes) (never) (100)
# ==========================================================================
smtp inet n - n - - smtpd -v
#628 inet n - n - - qmqpd
pickup fifo n - n 60 1 pickup
cleanup unix n - n - 0 cleanup
qmgr fifo n - n 300 1 qmgr
#qmgr fifo n - n 300 1 nqmgr
rewrite unix - - n - - trivial-rewrite
bounce unix - - n - 0 bounce
defer unix - - n - 0 bounce
flush unix n - n 1000? 0 flush
proxymap unix - - n - - proxymap
smtp unix - - n - - smtp
relay unix - - n - - smtp
# -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq unix n - n - - showq
error unix - - n - - error
local unix - n n - - local
virtual unix - n n - - virtual
lmtp unix - - n - - lmtp
maildrop unix - n n - - pipe
flags=DRhu user=courier argv=/usr/local/maildrop/current/bin/maildrop -d $(recipient)
maildropmysql.config
PHP-Code:
# /etc/maildrop/maildropmysql.config
hostname localhost
port 3306
socket /tmp/mysql.sock
database server
dbuser server
dbpw DatenbankPasswort
dbtable mail_users
default_uidnumber 450
default_gidnumber 450
uid_field id
uidnumber_field uidnumber
gidnumber_field gidnumber
maildir_field maildir
homedirectory_field homedir
quota_field quota
mailstatus_field imapok
where_clause ""
Lesezeichen