PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Postfix/ CentOS 6.4 - Client host rejected: Access denied



bla!zilla
03.05.13, 09:30
Hallo. Ich bin mit meinem Latei gerade total am Ende. Entweder habe ich gewaltige Tomaten auf den Augen oder irgendwas ist richtig krumm. Ich versuche gerade (wie gefühlte 100.000 mal bereits...) ein simplex Mailrelay zu bauen, welches Mails von Außen annimmt, gegen eine relay_domains laufen lässt und dann via transport_maps weiterleitet. Ich habe die die postconf -n Ausgabe der Standardinstallation genommen und ein wenig angepasst.



alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
debug_peer_level = 1
html_directory = no
inet_interfaces = all
inet_protocols = all
mail_owner = postfix
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
newaliases_path = /usr/bin/newaliases.postfix
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/postfix-2.6.6/README_FILES
sample_directory = /usr/share/doc/postfix-2.6.6/samples
sendmail_path = /usr/sbin/sendmail.postfix
setgid_group = postdrop
unknown_local_recipient_reject_code = 550

mydestination = $myhostname, localhost
myhostname = relay.domain.tld
mynetworks_style = host
mynetworks = 127.0.0.1/32 [::1]/128 46.xxx.xxx.xxx/32 [1234:1234:1234:1234::]/128

relay_domains = domain.tld
relay_transport = relay
relocated_maps = hash:/etc/postfix/relocated
sender_canonical_maps = hash:/etc/postfix/sender_canonical
transport_maps = hash:/etc/postfix/transport
canonical_maps = hash:/etc/postfix/canonical

smtpd_banner = relay.domain.tld

smtpd_tls_security_level = may

smtpd_recipient_restrictions = permit_mynetworks reject_unauth_destination reject_rb_client zen.spamhaus.org
smtpd_sender_restrictions = permit_mynetworks reject_unknown_sender_domain

smtpd_sasl_auth_enable = no
smtpd_tls_auth_only = yes


Ich brauche von außen keine Authentifizierung, kein TLS o.ä. Einfach Mails annehmen, weiterleiten. Selbst wenn ich mich per Telnet auf localhost Port 25 verbinde und dort versuche eine Mail abzusetzen bekomme ich ein



554 5.7.1 <localhost[::1]>: Client host rejected: Access denied


Ich habe die Config mit zwei anderen Maschinen (Debian) abgeglichen. Die Config sollte genau so funktionieren.

Hat noch jemand eine Idee???

ThorstenHirsch
03.05.13, 11:39
Wenn die Debian-Maschinen noch 6.0 haben ist Postfix bestimmt um einiges neuer in CentOS 6.4. Vielleicht wurden die security-Einstellungen per default etwas angezogen.

bla!zilla
03.05.13, 11:49
Das "smtpd_tls_security_level = may" habe ich schon ergänzt, sonst haben die Kisten den Dienst komplett verweigert (STARTTLS notwendig).

Das ist ein Mailrelay, der soll einfach annehmen und weiterleiten. Ich komme einfach nicht dahinter aufgrund welcher Policy er ablehnt. Selbst wenn ich die smtpd_recipient_restrictions raussnehme blockt er weiter. SELinux hatte ich testweise mal deaktiviert. Das war es auch nicht.

marce
03.05.13, 12:17
ich habe die Deine Ausgabe mal mit der bei uns verglichen - bin zwar kein Mailer-Crack, aber relevantes habe ich nicht entdecken können.

Spontan fällt mir dann noch die /etc/postfix/access ein - da passt alles?

bla!zilla
03.05.13, 12:57
/etc/postfix/access ist leer. Die ist es also auch nicht.

marce
03.05.13, 13:14
das einzige was mir dann spontan noch auffält wäre
smtpd_sender_restrictions = permit_mynetworks reject_unknown_sender_domain - ggf. zickt der 2. Parameter rum weil DNS-Technisch was nicht so 100% passt?

Ich weiß nur noch, daß wir damals beim Umzug unseres MailRelays von Centos 5 auf 6 auch einiges zu kämpfen hatten, was genau alles kann ich aber nicht sagen, hat ein Kollege gemacht... 1:1 ließ sich die funktionierende Config nicht übernehmen...

bla!zilla
03.05.13, 13:23
Mmh... Die Config ist nicht mal übernommen. postconf -n > main.cf mit ein paar Erweiterungen. Ich poste heute Abend noch mal Debugausgaben.

bla!zilla
03.05.13, 17:54
Ich denke das hier ist der interessante Teil aus der Sitzung:



May 3 18:49:35 server postfix/smtpd[819]: >>> START Client host RESTRICTIONS <<<
May 3 18:49:35 server postfix/smtpd[819]: generic_checks: name=permit_sasl_authenticated
May 3 18:49:35 server postfix/smtpd[819]: generic_checks: name=permit_sasl_authenticated status=0
May 3 18:49:35 server postfix/smtpd[819]: generic_checks: name=reject
May 3 18:49:35 server postfix/smtpd[819]: NOQUEUE: reject: RCPT from localhost[127.0.0.1]: 554 5.7.1 <localhost[127.0.0.1]>: Client host rejected: Access denied; from=<v.nachname@extern.tld> to=<v.nachname@domain.tld> proto=ESMTP helo=<externer.mailserver.tld>
May 3 18:49:35 server postfix/smtpd[819]: generic_checks: name=reject status=2


Ich habe den smtpd mit -v gestartet und das aus /var/log/maillog geholt.

bla!zilla
04.05.13, 12:02
Sooo, meine lieben Freunde. Findet den Fehler in der master.cf.



smtp inet n - n - - smtpd
#submission inet n - n - - smtpd
-o smtpd_enforce_tls=yes
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticate d,reject
# -o milter_macro_daemon_name=ORIGINATING
#smtps inet n - n - - smtpd
# -o smtpd_tls_wrappermode=yes
# -o smtpd_sasl_auth_enable=yes
# -o smtpd_client_restrictions=permit_sasl_authenticate d,reject
# -o milter_macro_daemon_name=ORIGINATING


Verraten hat es mir am Ende ein ps -ax und eine smtpd Zeile mit Optionen, die da nicht hingehören. Lustigerweise habe ich die master.cf ein Dutzden Mal editiert um das Logging zu aktiveren... Wo wir dann wieder beim Thema "Tomaten auf den Augen" wären...

ThorstenHirsch
04.05.13, 15:37
Oh, ich! Ich! ICH!

smtpd_enforce_tls=yes
...dürfte dazu führen, dass man sich nur per TLS authentifizieren darf, was du ja nicht willst.

bla!zilla
04.05.13, 19:33
Fast... :)

Das ist der Übeltäter. Da kann ich in meine main.cf schreiben was ich will...



-o smtpd_client_restrictions=permit_sasl_authenticate d,reject