Postfix: Relayhost abhängig vom Benutzer
Posted: 2007-06-14 18:07
Hallo zusammen,
ich verwende momentan Postfix, um die Emails, die PHP versenden möchte, über einen externen Anbieter (z.B. freenet) zu versenden. Dazu habe ich die Datei "sasl_password" wie folgt konfiguriert:
Da jeder Benutzer auf dem Webserver eine eigene PHP-Instanz über Fastcgi (Lighttpd) erhält, kann ich ja den Absender der verschiedenen Benutzer über die Datei "sender_canonical" steuern:
Dies funktioniert soweit ganz gut. Nun ist es aber so, dass ich für manche Benutzer gerne einen seperaten Relayhost anlegen möchte. Fügt man einen weiteren Eintrag in "sasl_password" hinzu, wird dieser ignoriert.
Ich habe mir schon gedanken gemacht, das Problem über die Konfigurationsdatei "transport" lösen zu können:
Allerdings ignoriert Postfix scheinbar diese Einstellungen. Hinzu kommt, dass ich mir gar nicht sicher bin, ob diese Konfiguration zweckmäßig ist
Meine main.cf:
In "/var/log/mail.log" finden sich allerdings keinerlei Fehler oder Wahrnungen, die auf ein Problem hinweisen könnten. Ist es nun möglich, für jeden Benutzer einen seperaten Relayhost zu verwenden? Und wenn ja, was müsste ich wie konfigurieren? Vielen Dank schon mal 
ich verwende momentan Postfix, um die Emails, die PHP versenden möchte, über einen externen Anbieter (z.B. freenet) zu versenden. Dazu habe ich die Datei "sasl_password" wie folgt konfiguriert:
Code: Select all
mx.freenet.de ich@freenet.de:meinpasswort
smtp.web.de ich@web.de:meinpasswort ###siehe unten
Code: Select all
webbenuter1 test1@freenet.de
webbenutzer2 test2@freenet.de
webbenutzer3 test@web.de ##siehe unten
Ich habe mir schon gedanken gemacht, das Problem über die Konfigurationsdatei "transport" lösen zu können:
Code: Select all
webbenuter1 smtp:mx.freenet.de
webbenutzer2 smtp:mx.freenet.de
webbenutzer3 smtp:smtp.web.de
Meine main.cf:
Code: Select all
# Debian specific: Specifying a file name will cause the first
# line of that file to be used as the name. The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
# appending .domain is the MUA's job.
append_dot_mydomain = no
# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h
# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${queue_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${queue_directory}/smtp_scache
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.
myhostname = x123456789.server.net
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = blubblub.de, localhost.server.net, localhost
#relayhost = freenet.de
mynetworks = 127.0.0.0/8
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = loopback-only
smtp_sasl_auth_enable = yes
# noplaintext weglassen, wenn Passwör im Klartext üagen werden mü
# (nicht empfohlen, nur wenn's anders nicht funktioniert)
smtp_sasl_security_options = noplaintext noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/sasl_password
sender_canonical_maps = hash:/etc/postfix/sender_canonical
transport_maps = hash:/etc/postfix/transport