Mein Mailserver befindet sich aufgrund von Spam auf einer schwarzen Liste. Ich habe Postfix neu konfiguriert. Oft erhalten meine Kunden dann den Fehler, dass sie keine E-Mails senden können.
404 4.5.2 <PLLAMNAZIFE>: Helo command rejected: need fully-qualified hostname
In Mail.log:
postfix/smtpd[9853]: NOQUEUE: reject: RCPT from unknown[xx.xx.xx.xx]:
404 4.5.2 <PLLAMNAZIFE>: Helo command rejected: need fully-qualified hostname;
from=<[email protected]> to=<[email protected]> proto=ESMTP helo=<PLLAMNAZIFE>
In meiner main.cf:
# rules restrictions
smtpd_client_restrictions =
permit_sasl_authenticated
smtpd_helo_restrictions =
permit_mynetworks,
reject_non_fqdn_helo_hostname,
reject_invalid_helo_hostname,
permit
smtpd_sender_restrictions =
smtpd_recipient_restrictions =
permit_sasl_authenticated,
reject_unauth_pipelining,
reject_non_fqdn_recipient,
reject_unknown_recipient_domain,
permit_mynetworks,
reject_unauth_destination,
reject_invalid_hostname,
reject_non_fqdn_sender,
reject_unknown_sender_domain,
reject_rhsbl_client blackhole.securitysage.com,
reject_rhsbl_sender blackhole.securitysage.com,
reject_rbl_client zen.spamhaus.org,
reject_rbl_client bl.spamcop.net,
reject_rbl_client blackholes.easynet.nl,
reject_rbl_client cbl.abuseat.org,
reject_rbl_client proxies.blackholes.wirehub.net,
reject_rbl_client dnsbl.njabl.org
smtpd_helo_required = yes
unknown_local_recipient_reject_code = 550
disable_vrfy_command = yes
smtpd_data_restrictions = reject_unauth_pipelining
Sie können die HELO-Einschränkungen für authentifizierte Benutzer umgehen,
permit_sasl_authenticated
indem Sie Regeln in diesmtpd_helo_restrictions
Liste einfügen, bevor Sie sie ablehnen :quelle
Die Hostnamenvariable für Ihren Mailserver ist ungültig.
Versuchen Sie, den Wert des
myhostname
Felds vom/etc/postfix/main.cf
Standardwert in Ihren Hostnamen zu ändern (z. B.yourwebsite.com
odermail.yourwebsite.com
).quelle
Ich habe ewig gebraucht, um das herauszufinden
Ich verwende einen Centos-Server und habe eine E-Mail erhalten, in der der Fehler "Helo-Befehl abgelehnt: Vollqualifizierter Hostname erforderlich" gemeldet wurde.
Am Ende habe ich "Referenz / etc / mailhelo für ausgehendes SMTP HELO [?]" Aktiviert. Dies befand sich unter "exim configuration manager" und dann "Domains and IPS" auf dem VPS-Server
Dann habe ich Putty verwendet und auf dem Server entfernt und diesen Befehl "sudo nano / etc / mailhelo" ausgeführt.
In dieser Datei habe ich die Domains example.com: example.com erstellt. Sub.example.com: example.com example.net: example.net addon.example.net: example.net *: hostname.example.com
(gemäß http://docs.cpanel.net/twiki/bin/view/AllDocumentation/WHMDocs/EximDifferentIps )
Ich habe das Senden von E-Mails getestet und alles sieht bisher gut aus
quelle
Es ist nicht Ihr E-Mail-Server, der den Client ablehnt, sondern ein externer SMTP-Server, der die Nachricht von Ihrem SMTP-Server ablehnt. Das Problem ist, dass Ihr SMTP-Server bei der Kommunikation mit anderen Servern nicht den FQDN-Namen in der Helo-Nachricht sendet.
Dies kann normalerweise gelöst werden, indem die öffentliche IP-Adresse zur Hosts-Datei mit dem vollqualifizierten Domänennamen zur Datei / etc / hosts hinzugefügt wird. So was:
1.1.1.1 host.domain.com host
127.0.0.2 host.domain.com host
Wobei 1.1.1.1 die offizielle IP ist.
Ich hatte dieses Problem und es half nicht, dass der DNS auf der öffentlichen IP in beide Richtungen vorwärts / rückwärts arbeitete und ich nur meinen eigenen Nameserver in /etc/resolv.conf hatte. Sogar der Hostname -f hat den richtigen zurückgegeben. Ich musste immer noch die IP-Adresse und den Hostnamen in / etc / hosts eingeben, damit sendmail den vollqualifizierten Domänennamen anstelle des kurzen Hostnamens tatsächlich verwenden konnte.
Wenn Sie über Port 25 eine Telnet-Verbindung zu Ihrem Server herstellen, stellen Sie sicher, dass in der 220-Leitung der vollqualifizierte Domänenname und nicht nur der Host angegeben ist. So was:
220 host.domain.com ESMTP Sendmail 8.15.2 / 8.15.2 / SuSE Linux 0.8; Mo, 9. Juli 2018 18:19:48 +0200
quelle
Manchmal hat ein Server einen Schluckauf. Verursacht zum Beispiel durch Mail-Angriffe.
Versuchen Sie zunächst, den Server neu zu starten. Dann setzen Sie die Mail auf dem Server auf Aus und nach 15 Sekunden wieder auf.
Manchmal wird der abgelehnte HELO-Befehl verursacht, weil E-Mails keine neuen Antivirendefinitionen laden können. wie AmaVis, das auf Apple-Servern verwendet wird. Ein Neustart und Aus / Ein-Mail-App auf dem Server löst dieses Problem. Prost.
quelle
Ich habe beim Ausführen einen Nicht-Domain-Namen erhalten
hostname -f
. Also habe ich in "hostname -f" nach keiner Domain gegoogelt . Es stellte sich heraus, dass ich etwas bearbeiten musste/etc/hostname
(ich bin auf Debian), um das Problem zu lösen. Danach verwendeten beidehostname -f
undhelo
voll qualifizierten Hostnamen.quelle
Wenn Sie HELO mit schlechten Hostnamen ablehnen möchten, Ihren Benutzern jedoch weiterhin das Senden ermöglichen möchten, auch wenn ihre Clients keine FQDNs mit HELO senden, können Sie diese Zeilen so belassen, wie Sie sie haben:
Stellen Sie jedoch sicher, dass ihnen Folgendes vorangestellt ist:
Wenn sich einer Ihrer Benutzer authentifiziert, kann er auf diese Weise E-Mails senden, unabhängig von der Gültigkeit seines HELO-Befehls, und nur nicht authentifizierte Verbindungen (dies sollten nur andere SMTP-Server sein, die E-Mails an Sie weiterleiten, weil Sie es sind Offensichtlich müssen sich alle Benutzer authentifizieren, oder?). Dies unterliegt der gültigen HELO-Anforderung.
quelle