[Postfixbuch-users] do not list domain ... in BOTHvirtual_mailbox_domains and relay_domains, nachtrag

Uwe Driessen driessen at fblan.de
Fr Jan 4 00:23:33 CET 2008


Oskar Eyb schrieb: 
> 
> 
> Uwe Driessen schrieb am 03.01.2008 09:45:
> 
> > Bring deine Restriktionen in Ordnung
> 
> Ich habe mir deine E-Mail dazu nochmals durchgelesen und verstehe nicht,
> was gemeint ist. Kann mich jetzt nicht damit beschäftigen, 

sehr schlecht man sollte schon ein bisschen Zeit in ein funktionierendes System
investieren. 

> habe die
> vormals gemachten Kommentare wieder entfernt. Dann wirds halt 4x
> abgearbeitet, aber immerhin korrekt. Da liegt der Fehler ja nicht.

Macht aber die Fehlersuche und Lesbarkeit der Konfig schwerer. Unter umständen schleichen
sich da auch in Zukunft Fehler ein wenn in einer Rubrik was reingenommen wird und in einer
anderen vergessen was dann dazu führt das gewünschte Mails abgewiesen und unerwünschte
angenommen werden. Bei den recipient_restriktionen sind alle Info zusammen um zu
entscheiden ob eine Mail angenommen wird oder nicht.

Prüfung auf gültige Adresssyntax der Mailadresse und auf Vorhandensein derselbigen.
Diese Prüfung müssen auch eigene User über sich ergehen lassen.
(reject_unknown_sender_domain, reject_non_fqdn_sender,)

Ist es ein eigener User dann darf er dann senden. 
(permit_mynetworks, permit_sasl_authenticated)

Ist es kein eigener User dann wird weiter geprüft 
z.B. ist das Helo FQND, gibt es den Server, hält sich der Sender an die RFC's steht er in
irgendwelchen RBL's (weniger ist hier oft mehr bzw. policyd weight einsetzen)   
reject_invalid_hostname, 
reject_non_fqdn_hostname,
reject_rbl_client dnsbl.sorbs.net, 
reject_rbl_client sbl-xbl.spamhaus.org, 
reject_rbl_client list.dsbl.org,

hat er das vorhergehende Überstanden dann muß sich ein fremder noch den
smtpd_data_restrictions = reject_unauth_pipelining  unterwerfen

deine ganzen permit am ende jeder restriktion kannte streichen wer die Prüfungen nicht mit
einem reject quittiert bekommt wird sowieso angenommen.
Ich hoffe mal ich habe keiner deiner Restriktionen vergessen dann kannste das fast so
abschreiben (Konfigschreibweise beachten, entweder in eine Zeile oder eingerückter
Zeilenanfang als Fortsetzung)

Deine Konfig ist copy und paste, so was ist tödlich da du die Qualität des geposteten zu
dem Zeitpunkt nicht beurteilen kannst.

Kauf dich lieber Buch von Peer Heinlein oder von Ralf Hildebrandt und Patrik Ben Koetter
(ich nenn die mal einfach so ohne dass die Nennung auf eine Gewichtung schließen soll. Man
kommt mit beiden Büchern zu einer schlanken absolut sicheren und funktionierenden
Konfiguration).

Postfix funktioniert sogar einfach so aufgespielt (zumindest bei Debian), man muß nichts
an der Konfiguration herumschrauben wenn man erstmal ein funktionierendes System haben
möchte. Optimierung und Anpassung der Konfiguration ist dann ein andauernder Prozess mit
dem man eine lange Zeit zu tun hat. Es ändern sich Gegebenheiten, UBE/UCE aufkommen.....
Man fängt eigentlich mal damit an zu überlegen was man mit dem Server bzw. Postfix
erreichen möchte (wie gesagt senden und empfangen macht Postfix ohne Anpassungen) und dann
geht man hin und sucht sich die Restriktionen die für den Einsatzzweck passend sind
zusammen und beobachtet das Logfile um das Ergebnis zu überprüfen.
Bei einem solchen vorgehen findet man schneller Fehler und auch die Optimierung geht
leichter (keine Ahnung was der Admin mit seiner Konfig für einen Einsatzzweck angestrebt
hat, aber mach dir nichts draus ich habe auch mal so angefangen) 
Zumindest sehe ich einige Parameter die per default schon richtig gesetzt werden und in
die Postfixconfig kommt nur das rein was entweder systemspezifisch ist oder vom Standard
abweicht. Das wird mit der Zeit zwar auch einiges aber dann muß man nicht schauen wurde
der Parameter nun wirklich verändert oder wurde nur der default wert aufgeführt. 


> Jan  3 19:35:38 beastie postfix/trivial-rewrite[82295]: warning: do not
> list domain srv2.eyb.de in BOTH virtual_mailbox_domains and relay_domains
> Jan  3 19:35:38 beastie postfix/smtpd[81738]: private/rewrite socket:
> wanted attribute: flags

Das war auch schon mal in der Liste dieser Fehler ich weiß aber nicht mehr wie die Lösung
war. Evtl. wirft da noch mal ein anderer einen Blick drauf.
Ich meine das da irgendwas mit den Mailadressen bzw. der Rubrik unter der die geführt
wurden nicht stimmte.    

Ich lass mal die Konfig dran hängen 
 
> broken_sasl_auth_clients = yes
> command_directory = /usr/local/sbin
> config_directory = /usr/local/etc/postfix
> daemon_directory = /usr/local/libexec/postfix
> debug_peer_level = 2
> header_checks = pcre:/usr/local/etc/postfix/header_checks.pcre
> html_directory = no
> inet_interfaces = 172.16.0.2
> mail_owner = postfix
> mailq_path = /usr/local/bin/mailq
> manpage_directory = /usr/local/man
> mydestination = beastie.eyb.de

Auskommentieren (meine Domains sind alle virtual und wenn ich das bei dir richtig sehe
deine auch)

mydestination (default: $myhostname, localhost.$mydomain, localhost)
The list of domains that are delivered via the $local_transport mail delivery transport.
By default this is the Postfix local(8) delivery agent which looks up all recipients in
/etc/passwd and /etc/aliases. The SMTP server validates recipient addresses with
$local_recipient_maps and rejects non-existent recipients. See also the local domain class
in the ADDRESS_CLASS_README file. 

The default mydestination value specifies names for the local machine only. On a mail
domain gateway, you should also include $mydomain. 

The $local_transport delivery method is also selected for mail addressed to
user@[the.net.work.address] of the mail system (the IP addresses specified with the
inet_interfaces and proxy_interfaces parameters). 

Warnings: 

Do not specify the names of virtual domains - those domains are specified elsewhere. See
VIRTUAL_README for more information. 

Do not specify the names of domains that this machine is backup MX host for. See
STANDARD_CONFIGURATION_README for how to set up backup MX hosts. 

By default, the Postfix SMTP server rejects mail for recipients not listed with the
local_recipient_maps parameter. See the postconf(5) manual for a description of the
local_recipient_maps and unknown_local_recipient_reject_code parameters. 

Specify a list of host or domain names, "/file/name" or "type:table" patterns, separated
by commas and/or whitespace. A "/file/name" pattern is replaced by its contents; a
"type:table" lookup table is matched when a name matches a lookup key (the lookup result
is ignored). Continue long lines by starting the next line with whitespace. 

Examples: 

mydestination = $myhostname, localhost.$mydomain $mydomain
mydestination = $myhostname, localhost.$mydomain www.$mydomain, ftp.$mydomain


> mydomain = eyb.de

Mydomain kommentiere mal aus bzw. setze den Wert auf den PTR/rDNS der auch wirklich zu dem
Server gehört, denn die eyb.de gehört wenn ich dich bis dato richtig verstanden habe einem
anderen Server 

mydomain (default: see "postconf -d" output)
The internet domain name of this mail system. The default is to use $myhostname minus the
first component. $mydomain is used as a default value for many other configuration
parameters. 

Example: 

mydomain = domain.tld


> myhostname = beastie.eyb.de

myhostname (default: see "postconf -d" output)
The internet hostname of this mail system. The default is to use the fully-qualified
domain name from gethostname(). $myhostname is used as a default value for many other
configuration parameters. 

Example: 

myhostname = host.domain.tld

> mynetworks = 127.0.0.0/8, 172.16.0.0/24
> mynetworks_style = subnet
> myorigin = $mydomain

Es kann nur einen geben oder wie hieß das? eyb.de gehört doch einem anderen Server? Also
auskommentieren und noch mal probieren, Postfix setzt hier auch in der Regel den richtigen
default wert.

myorigin (default: $myhostname)
The domain name that locally-posted mail appears to come from, and that locally posted
mail is delivered to. The default, $myhostname, is adequate for small sites. If you run a
domain with multiple machines, you should (1) change this to $mydomain and (2) set up a
domain-wide alias database that aliases each user to user at that.users.mailhost. 

Example: 

myorigin = $mydomain


> newaliases_path = /usr/local/bin/newaliases
> queue_directory = /var/spool/postfix
> readme_directory = no
> relay_domains = mysql:/usr/local/etc/postfix/sql_relay_domains_maps.cf
> sample_directory = /usr/local/etc/postfix
> sendmail_path = /usr/local/sbin/sendmail
> setgid_group = maildrop
> smtp_sasl_auth_enable = yes
> smtp_sasl_password_maps = hash:/etc/postfix/smtp_auth_passwd
> smtp_sasl_security_options = noanonymous, noplaintext
> smtp_sasl_tls_security_options = noanonymous
> smtp_tls_CAfile = /etc/local-etc/apache/ssl.crt/ca-bundle.crt
> smtp_tls_note_starttls_offer = yes
> smtp_tls_per_site = hash:/etc/postfix/tls_per_site
> smtp_use_tls = yes
> smtpd_banner = $myhostname ESMTP (bln-mx1)
> smtpd_client_restrictions = permit_mynetworks,
> permit_sasl_authenticated,    reject_rbl_client dnsbl.sorbs.net,
> reject_rbl_client sbl-xbl.spamhaus.org,    reject_rbl_client
> list.dsbl.org,    permit
> smtpd_data_restrictions = permit_mynetworks,
> reject_unauth_pipelining,    permit
> smtpd_helo_restrictions = permit_mynetworks,
> permit_sasl_authenticated,    reject_invalid_hostname,
> reject_non_fqdn_hostname,    permit
> smtpd_recipient_restrictions = reject_unknown_recipient_domain,
> reject_non_fqdn_recipient,    reject_non_fqdn_sender,
> permit_mynetworks,      permit_sasl_authenticated,
> reject_unauth_destination,    permit
> smtpd_sasl_auth_enable = yes
> smtpd_sasl_authenticated_header = yes
> smtpd_sasl_local_domain = $myhostname
> smtpd_sasl_path = smtpd
> smtpd_sasl_security_options = noanonymous
> smtpd_sasl_type = cyrus
> smtpd_sender_restrictions = reject_unknown_sender_domain,
> reject_non_fqdn_sender,    permit_mynetworks,
> permit_sasl_authenticated,    reject_rhsbl_sender rhsbl.sorbs.net,
> reject_rhsbl_sender dsn.rfc-ignorant.org,    permit
> smtpd_tls_CAfile = /usr/local/etc/postfix/ssl/smtpd.pem
> smtpd_tls_auth_only = yes
> smtpd_tls_cert_file = /usr/local/etc/postfix/ssl/smtpd.pem
> smtpd_tls_key_file = /usr/local/etc/postfix/ssl/smtpd.pem
> smtpd_tls_loglevel = 1
> smtpd_tls_received_header = yes
> smtpd_tls_session_cache_timeout = 3600s
> smtpd_use_tls = yes
> soft_bounce = yes
> tls_random_source = dev:/dev/urandom
> transport_maps = mysql:/usr/local/etc/postfix/sql_transport_maps.cf,
> pcre:/usr/local/etc/postfix/transport.pcre
> unknown_local_recipient_reject_code = 550
> virtual_alias_maps = mysql:/usr/local/etc/postfix/sql_virtual_alias_maps.cf
> virtual_gid_maps = static:130
> virtual_mailbox_base = /data/maildirs
> virtual_mailbox_domains =
> mysql:/usr/local/etc/postfix/sql_virtual_domains_maps.cf
> virtual_mailbox_limit = 51200000
> virtual_mailbox_limit_maps =
> mysql:/usr/local/etc/postfix/sql_virtual_mailbox_limit_maps.cf
> virtual_mailbox_limit_override = yes
> virtual_mailbox_maps = $transport_maps,
> mysql:/usr/local/etc/postfix/sql_virtual_mailbox_maps.cf
> virtual_maildir_limit_message = Sorry, the user's maildir has overdrawn
> his diskspace quota, please try again later.
> virtual_minimum_uid = 130
> virtual_overquota_bounce = yes
> virtual_transport = virtual
> virtual_uid_maps = static:130
> 
> 


Mit freundlichen Grüßen

Drießen

-- 
Software & Computer
Uwe Drießen
Lembergstraße 33
67824 Feilbingert
Tel.: 06708 / 660045   Fax: 06708 / 661397




Mehr Informationen über die Mailingliste Postfixbuch-users