code:
550-Bad HELO: localhost.localdomain does not exist - Please see RFC 2821
Hallo! (HELO 🙂, RFC 2821 is sinds 2008 obsolete. Is dit een ex-Casema server?
Nou is het ook niet helemaal correct van mijn servertje om een SMTP dialoog te starten met HELO localhost.localdomain. Daar moet eigenlijk een FQDN staan. Het servertje is echter een beetje een black box, ik kan niet vinden waar de sendmail o.i.d. zit en of ik dat kan configureren. Ik heb SMTP server, gebruikersnaam/wachtwoord en poort 587 ooit in een setup-dialoog ingevoerd, verder niets.
Niet elk apparaat heeft een FQDN, de meeste niet zelfs. Emailprogramma's zoals Outlook en Thunderbird zetten er meestal de lokale netwerknaam van je PC in. En er zijn waarschijnlijk miljoenen apparaten met een basic SMTP client die gewoon dat localhost.localdomain laten staan. Om die nou te gaan weigeren...
Een beetje zoeken met bovenstaande foutmelding leert dat er inderdaad SMTP software is, o.a. Postfix, die als optie hebben om een sessie met een ongeldige naam achter HELO af te kappen. Maar het is een optie, niet de default. Er lijken echter mensen te zijn die denken dat dit een goed wapen is in de strijd tegen spam.
De slachtoffers zijn alle printers die mailen dat de inkt bijna op is, NASsen dat de harde schijf bijna vol is, zonnepaneelregelaars die het dagrapportje sturen enz. enz.
Maar wat zegt dat RFC 2821 en opvolger RFC 5321?
code:
An SMTP server MAY verify that the domain name argument in the EHLO
command actually corresponds to the IP address of the client. However, if the verification fails, the server MUST NOT refuse to accept a message on that basis.
Aha! Het mag dus ook helemaal niet van de IETF! Niet doen, Ziggo. Dit is bedoeld voor troubleshooting. Gewoon negeren wat er achter HELO/EHLO staat.
Ondertussen stuurt mijn servertje mail via mijn NAS als extra relay. Die kan wel een HELO met een geldige domeinnaam afgeven. Wel weer een extra schakel in de keten.