bestimmte Email blocken mit Postfix geht nicht

  • Thread starter Thread starter Deleted member 13046
  • Start date Start date
D

Deleted member 13046

Guest
Hallo ich möchte eine bestimmte Email Adresse blocken und es soll ein 550 zurück kommen.
Hab Debian mit Postfix (und confixx) und hab da in der main.cf eine Datei sender_checks angegeben:
Code:
smtpd_recipient_restrictions = 
    check_sender_access hash:/etc/postfix/sender_checks,
    permit_sasl_authenticated, 
    permit_mynetworks, 
    reject_unauth_destination,
    reject_rbl_client zen.spamhaus.org,
    reject_rbl_client dul.dnsbl.sorbs.net,
    
    check_policy_service inet:127.0.0.1:60000
message_size_limit = 60000000
home_mailbox = Maildir/

Inhalt der sender_checks sieht so aus:
Code:
dieadresse@gmx.de REJECT
dann gemacht:
Code:
postmap /etc/postfix/sender_checks
und
Code:
/etc/init.d/postfix restart

schicke ich nun von dieadresse@gmx.de eine Email an ein Postfach auf dem Server kommt die immer an.
Was kann da falsch sein?

Besten Dank
Gruß Haxley
 
Ich würde das mal mit smtpd_sender_restrictions versuchen, deine Restriktionen testen gegen die Empfänger-Adresse - sagt ja schon der Parametername.
 
In den smtpd_recipient_restrictions sind auch alle Tests aus den smtpd_sender_restrictions zulässig. Meistens werden die Restriktionen sowieso erst bei den smtpd_recipient_restrictions geprüft: Delayed evaluation of SMTP access restriction lists.

Welche smtpd_*_restrictions gibt es insgesamt?
Kannst Du einmal den Dialog mit Deinem Mailserver mitschneiden (swaks)?


---
.A.
 
So wie ich die Postfix-Doku verstanden habe, ist das nicht ganz der Fall. Es werden schon die unterschiedlichen Prüfungen vorgenommen, nur halt mittlerweile alle erst alle nach dem RCPT-TO im SMTP-Dialog - du verweißt mit deinem Link ja drauf. Außerdem steht dort auch, daß es gefährlich sein kann, alles in die smtpd_recipient_restrictions zu hauen.
Wenn die Postfix-Konfig schon smptd-sender-restrictions enthält, dann dürften die zum PERMIT führen, so daß die Sender-bezogenen Regeln in der smtpd_recipient_restrictions nicht mehr greifen. Falls ich mit meiner Annahme falsch liege und mir jemand erklärt, wo mein Denkfehler liegt: Nur her damit...
@TE: Am sinnvollsten wäre deine komplette Postfix-Konfig, also die main.cf und master.cf
 
Wenn die Postfix-Konfig schon smptd-sender-restrictions enthält, dann dürften die zum PERMIT führen, so daß die Sender-bezogenen Regeln in der smtpd_recipient_restrictions nicht mehr greifen.

Postfix ignoriert keine smtpd_recipient_restrictions, nur weil es smtpd_sender_restrictions gibt. Jede der Listen wird bis zum ersten PERMIT, REJECT oder DEFER abgearbeitet (Quelle).
 
So nun komme ich mal wieder auf die Angelegenheit zurück.
Also die ganze main.cf sieht so aus:
smtpd_sender_restrictions ist definiert
trotzdem kommen immer noch Emails die in der /etc/postfix/sender_checks eingegeben sind an.
Ist die Schreibweise der zu blockenden Adressen so auch richtig? (siehe erstes Posting)

Code:
# See /usr/share/postfix/main.cf.dist for a commented, more complete version


# 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 (Debian/GNU)
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

#Spezieller Spam Schutz
#header_checks = regexp:/etc/postfix/header_checks
smtpd_sender_restrictions = check_sender_access hash:/etc/postfix/sender_checks 
#SPAM Schutz von wwwdata wenn selber sendet
#authorized_submit_users = !www-data, static:anyone


# 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:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_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 = enterprise.xyz.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
#myorigin = /etc/mailname
mydestination = enterprise.xyz.com, localhost.xyz.com, localhost
relayhost = 
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
unknown_hostname_reject_code = 550
unknown_client_reject_code = 550
unknown_address_reject_code = 550

smtpd_sasl_local_domain = $myhostname
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous

broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = 
    check_sender_access hash:/etc/postfix/sender_checks,
    permit_sasl_authenticated, 
    permit_mynetworks, 
    reject_unauth_destination,
    reject_rbl_client zen.spamhaus.org,
    reject_rbl_client dul.dnsbl.sorbs.net,
    
    check_policy_service inet:127.0.0.1:60000
message_size_limit = 60000000
home_mailbox = Maildir/

### CONFIXX POSTFIX ENTRY ###

virtual_maps = hash:/etc/postfix/confixx_virtualUsers, hash:/etc/postfix/confixx_localDomains

### /CONFIXX POSTFIX ENTRY ###
readme_directory = /usr/share/doc/postfix
sample_directory = /usr/share/doc/postfix/examples
sendmail_path = /usr/sbin/sendmail
html_directory = no
setgid_group = postdrop
command_directory = /usr/sbin
manpage_directory = /usr/share/man
daemon_directory = /usr/lib/postfix
newaliases_path = /usr/bin/newaliases
mailq_path = /usr/bin/mailq
queue_directory = /var/spool/postfix
mail_owner = postfix
data_directory = /var/lib/postfix
Danke Gruß Haxley
 
Wenn mich nicht alles täuscht, dann musst Du die Datenbank mittels
Code:
postmap hash:sender_checks
erstellen. In deinem ersten Post fehlt "hash:"

Danach sollte
Code:
smtpd_recipient_restrictions = check_sender_access hash:/etc/postfix/sender_checks

funktionieren.
 
Back
Top