Ich kann keine E-Mails vom Postfix-Mail-Server an das Internet senden. (Relais Zugriff verweigert)

5653
Pithikos

Ich habe einen Mail-Server, auf dem Postfix in meinem LAN ausgeführt wird, mit dem ich E-Mails in meinem LAN senden und empfangen und vom WAN an das LAN senden kann. Ich kann jedoch nicht vom LAN ins WAN senden .

Ich versuche, den Relay-Host meines Internetdienstanbieters (mail2.bahnhof.se) zu verwenden, um dieses Problem zu lösen, da dies der einfachste Weg ist (das Relay erfordert keine Authentifizierung).

Mit Telnet kann ich mich direkt mit dem Relay-Host verbinden und eine E-Mail ohne Authentifizierung senden:

> telnet mail2.bahnhof.se 25 Connected to mail2.bahnhof.se. helo mail.mydomain.com 250 mxf2.bahnhof.se mail from: user11@mail.mydomain.se 250 Ok rcpt to: user11@gmail.com 250 Ok data 354 End data with <CR><LF>.<CR><LF> This is a test . 250 Ok: queued as 9BFD413BAE5 

Der Versuch, dasselbe Relais auf meinem Postfix-Server zu verwenden, gibt mir jedoch den Fehler "Relay-Zugriff verweigert" (nicht sicher, welches Relais es bedeutet):

>telnet mail.mydomain.com 25 HELO mail.mydomain.com 250 mail.mydomain.com mail from: user11@mail.mydomain.com 250 2.1.0 Ok rcpt to: user11@gmail.com 554 5.7.1 <user11@gmail.com>: Relay access denied 

Meine Postfix-Konfiguration (main.cf):

# 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:$/smtpd_scache smtp_tls_session_cache_database = btree:$/smtp_scache  myhostname = mail.mydomain.com mydomain = mydomain.com myorigin = $mydomain smtpd_sender_restrictions = permit_mynetworks alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases mydestination = mail.mydomain.com, ubuntu, localhost relayhost = mail2.bahnhof.se mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 mailbox_size_limit = 0 recipient_delimiter = + inet_interfaces = all 

Irgendwelche Ideen, was falsch sein kann?

0

1 Antwort auf die Frage

2
drk.com.ar

Ja. Ihr Server verweigert Ihnen das Relay. Weil:

smtpd_sender_restrictions = permit_mynetworks mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 

Sie müssen also Ihren IP-Bereich (z. B. die IP Ihres Telnet-Clients) zu my_networks hinzufügen

mynetworks = 192.168.0.15 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 

Für den Fall, dass die IP des Telnet-Clients 192.168.0.15 lautet

Wenn Ihr Server auf einem ISP gehostet wird und Sie einen unbekannten dynamischen IP-Bereich verwenden, müssen Sie die SMTP-Authentifizierung auf Ihrem Server verwenden. Oder lassen Sie Ihren Server einfach als offenes Relay (was ich natürlich nicht empfehlen kann).

Vielen Dank! Das hat es gelöst. Ich hielt 127.0.0.0 für ausreichend, da ich von localhost aus telnete. Pithikos vor 10 Jahren 0
Sie haben jedoch "telnet mail.mydomain.com 25" geschrieben, und wahrscheinlich hat Ihr Telnet-Client seinen Socket an Ihre lokale IP-Adresse gebunden (anstelle von Local Loopback (127.0.0.1)). Sie können dies überprüfen, indem Sie "telnet 127.0.0.1 25" ausführen, ohne die IP zu meinen Netzwerken hinzuzufügen. drk.com.ar vor 10 Jahren 0