[Postfixbuch-users] Der Verzweiflung nahe...

Sandy Drobic postfixbuch-users at japantest.homelinux.com
Fr Feb 16 21:13:24 CET 2007


Gerald Roehrbein wrote:
> Hallo Gregor,
> 
> 
> folgende Änderungen gibt postconf -n aus
> 
> ==========postconf -n Anfang
> 
> alias_database = hash:/etc/aliases
> alias_maps = hash:/etc/aliases
> append_dot_mydomain = no
> biff = no
> broken_sasl_auth_clients = yes
> config_directory = /etc/postfix
> delay_warning_time = 4h
> disable_vrfy_command = yes
> inet_interfaces = all
> local_recipient_maps =

Deaktivierte Recipient validation für Domains in $mydestination. Nicht gut!

> mailbox_size_limit = 0
> masquerade_domains =
> masquerade_exceptions =
> maximal_backoff_time = 8000s
> maximal_queue_lifetime = 7d
> minimal_backoff_time = 1000s
> mydestination = /etc/postfix/local-host-names
> mydomain = oraforecast.com
> myhostname = orac03

Non-FQDN hostname? Never ever!!
Das kann zu vielen Problemen führen!

> mynetworks = 10.90.3.0/24, 127.0.0.0/8
> mynetworks_style = host
> myorigin = $myhostname
> recipient_delimiter = +
> relayhost = post.strato.de

Sollte kein Problem sein, empfohlen ist aber, zur Unterdrückung der
MX-Auflösung den Hostnamen in eckige Klammern zu setzen:
relayhost = [post.strato.de]

> smtp_helo_timeout = 60s
> smtp_tls_session_cache_database = btree:${queue_directory}/smtp_scache
> smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
> smtpd_client_restrictions = reject_rbl_client
> sbl.spamhaus.org,reject_rbl_client relays.ordb.org, reject_rbl_client
> blackholes.easynet.nl,reject_rbl_client dnsbl.njabl.org

Diese Clientrestrictions gelten für alle Hosts, es gibt keine Entschärfung
über permit_mynetworks oder permit_sasl_authenticated oder eine Whitelist.
Früher oder später wird das zu Problemen führen.

Die RBL relays.ordb.org ist tot. Das führt im besten Fall nur zur
Verzögerung, im schlimmsten Fall zu dicken Timeouts von Verbindungen.

Vielleicht möchtest du statt sbl.spamhaus.org besser zen.spamhaus.org
verwenden. In dieser sind mit einem Aufruf enthalten:
cbl.abuseat.org
sbl.spamhaus.org
xbl.spamhaus.org
dynalist.njabl.org
opm.blitzed.org

> smtpd_data_restrictions = reject_unauth_pipelining
> smtpd_delay_reject = yes
> smtpd_etrn_restrictions = reject
> smtpd_hard_error_limit = 12
> smtpd_helo_required = yes
> smtpd_helo_restrictions = permit_mynetworks, warn_if_reject
> reject_non_fqdn_hostname, reject_invalid_hostname, permit
> smtpd_recipient_limit = 16
> smtpd_recipient_restrictions =
> permit_mynetworks,permit_sasl_authenticated,reject_non_fqdn_hostname,reject_non_fqdn_sender,reject_non_fqdn_recipient,reject_unauth_destination,reject_unauth_pipelining,reject_invalid_hostname,reject_rbl_client list.dsbl.org,reject_rbl_client sbl-xbl.spamhaus.org,permit

Das macht nicht ganz viel Sinn, wenn du oben in smtpd_helo_restrictions
reject_non_fqdn_hostname entschärfst durch warn_if_reject, aber hier in
smtpd_recipient_restrictions es produktiv laufen lässt. Dazu dann noch die
Aufrufe von weiteren Blacklists. sbl-xbl.spamhaus.org ist enthalten in
zen.spamhaus.org (= sbl-xbl.spamhaus.org + dynalist.njabl.org).

Immerhin hast du hier permit_mynetworks und permit_sasl_authenticated
davorgesetzt.

> smtpd_sasl_auth_enable = yes
> smtpd_sasl_local_domain = $myhostname
> smtpd_sasl_security_options = noanonymous
> smtpd_sender_restrictions = permit_mynetworks, warn_if_reject
> reject_non_fqdn_sender,reject_unknown_sender_domain,

So langsam habe ich den Eindruck, dass du fünf verschiedene How-Tos
gemischt hast.

> reject_unauth_pipelining, permit
> smtpd_soft_error_limit = 3
> smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
> smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
> smtpd_tls_session_cache_database = btree:${queue_directory}/smtpd_scache
> smtpd_use_tls = yes
> unknown_local_recipient_reject_code = 450
> virtual_gid_maps = static:5000
> virtual_mailbox_base = /var/mail/virtual
> virtual_mailbox_domains =
> mysql:/etc/postfix/mysql_virtual_domains_maps.cf
> virtual_mailbox_limit = 51200000
> virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
> virtual_minimum_uid = 27
> virtual_transport = virtual
> virtual_uid_maps = static:5000
> ==========postconf -n Ende
> 
> 
> Anmerkung: Es gibt einen User Virtual mit UID=GID=5000
> 
> Die MySQL connection in mysql_virtual_mailbox_maps.cf funzt. Das SQL
> Statement ist auch Okay.
> 
> 
> ==========mysql_virtual_mailbox_maps.cf anfang
> user = mail
> password = mailuser
> hosts = 127.0.0.1
> dbname = postfix
> # query = SELECT  concat('/var/mail/virtual/',maildir)  FROM mailbox
> WHERE username='%s' AND active = 1
> query = SELECT  maildir  FROM mailbox WHERE username='%s' AND active = 1
> ==========mysql_virtual_mailbox_maps.cf anfang
> 
> Habe beide Varianten der Query getestet.
> 
> 
> In /var/log/mail.err findet sich nur folgendes (unrelevant):
> 
> ==========/var/log/mail.err anfang
> Feb 16 11:33:11 orac03 postfix/postmap[3675]: fatal: usage: postmap [-
> Nfinoprsvw] [-c config_dir] [-d key] [-q key] [map_type:]file...
> Feb 16 15:49:10 orac03 postfix/postfix-script: fatal: usage: postfix
> start (or stop, reload, abort, flush, check, set-permissions, upgrade-
> configuration)
> Feb 16 16:27:20 orac03 postfix/sendmail[9093]: fatal: -B option needs
> 8BITMIME or 7BIT
> ==========/var/log/mail.err ende
> 
> Die einzigen Error Messages der letzten 3 Tage....das waren wohl
> fehlerhafte Parameter oder sowas...
> 
> 
> Eine Beispielsession (Telnet, Sniffer Port 25, mail.info, mail.err,
> mail.warn):
> 
> ==========telnet oraforecast.com 25 Begin
> 220 orac03 ESMTP Postfix (Ubuntu)
> HELO demo.org
> 250 orac03
> MAIL FROM: demo at test.org
> 250 2.1.0 Ok
> RCPT TO: test at oraforecast.com
> 250 2.1.5 Ok
> DATA
> 354 End data with <CR><LF>.<CR><LF>
> Subject: Hurz
> Das ist mein Text!
> .
> 250 2.0.0 Ok: queued as 98121DEC3ED
> quit
> 221 2.0.0 Bye
> ==========telnet oraforecast.com 25 Ende
> 
> Sniffer auf Port 25 findet folgendes
> 
> ==========sniffer port 25 Begin
> 
> filter: (ip or ip6) and ( port 25 )
> ####
> T 10.90.3.83:25 -> 84.141.80.161:62998 [AP]
>   220 orac03 ESMTP Postfix (Ubuntu)..
> ##
> T 84.141.80.161:62998 -> 10.90.3.83:25 [AP]
>   HELO demo.org..
> ##
> T 10.90.3.83:25 -> 84.141.80.161:62998 [AP]
>   250 orac03..
> ##
> T 84.141.80.161:62998 -> 10.90.3.83:25 [AP]
>   MAIL FROM: demo at test.org..
> #
> T 10.90.3.83:25 -> 84.141.80.161:62998 [AP]
>   250 2.1.0 Ok..
> ##
> T 84.141.80.161:62998 -> 10.90.3.83:25 [AP]
>   RCPT TO: test at oraforecast.com..
> ##
> T 10.90.3.83:25 -> 84.141.80.161:62998 [AP]
>   250 2.1.5 Ok..
> ##
> T 84.141.80.161:62998 -> 10.90.3.83:25 [AP]
>   DATA..
> ##
> T 10.90.3.83:25 -> 84.141.80.161:62998 [AP]
>   354 End data with <CR><LF>.<CR><LF>..
> ##
> T 84.141.80.161:62998 -> 10.90.3.83:25 [AP]
>   Subject: Hurz..
> ##
> T 84.141.80.161:62998 -> 10.90.3.83:25 [AP]
>   Das ist mein Text!..
> ##
> T 84.141.80.161:62998 -> 10.90.3.83:25 [AP]
>   ...
> ##
> T 10.90.3.83:25 -> 84.141.80.161:62998 [AP]
>   250 2.0.0 Ok: queued as 98121DEC3ED..
> ##
> T 84.141.80.161:62998 -> 10.90.3.83:25 [AP]
>   quit..
> #
> T 10.90.3.83:25 -> 84.141.80.161:62998 [AP]
>   221 2.0.0 Bye..
> ==========sniffer port 25 Ende
> 
> 
> 
> 
> ==========/var/log/mail.info anfang
> Feb 16 20:32:42 orac03 postfix/smtpd[12388]: connect from
> p548D50A1.dip.t-dialin.net[84.141.80.161]
> Feb 16 20:33:22 orac03 postfix/trivial-rewrite[12397]: warning: do not
> list domain oraforecast.com in BOTH mydestination and
> virtual_mailbox_domains

Da ist dein Fehler. Nimm die Domain aus $mydestination heraus.

> Feb 16 20:33:22 orac03 postfix/smtpd[12388]: warning:
> 161.80.141.84.relays.ordb.org: RBL lookup error: Host or domain name not
> found. Name service error for name=161.80.141.84.relays.ordb.org type=A:
> Host not found, try again

RBL ist tot.

> 
> Jo....also ich habe wirklich lange gesucht und viel gelesen bevor ich
> mich dazu durchgerungen habe zu fragen...
> 
> Also ehrlich....ich habe keine Ahnung wo ich anfangen soll. Werde jetzt
> erstmal an VIRTUAL_README  weiterkauen.

Du hast viel zu viel auf einmal versucht und dabei eine
Kuddelmuddel-Konfig erzeugt. Ich würde die Konfig erst einmal auf eine
stabile Konfig ohne MySQL reduzieren, die Fehler beseitigen, und dann erst
MySQL hinzunehmen.

Insbesondere die doppelten und unterschiedlichen Aufrufe von Checks in
mehreren smtpd_*_restrictions sollten zusammengeführt werden.

-- 
Sandy

Antworten bitte nur in die Mailingliste!
PMs bitte an: news-reply2 (@) japantest (.) homelinux (.) com




Mehr Informationen über die Mailingliste Postfixbuch-users