[Postfixbuch-users] Erkennen der eigenen IP im HELO/EHLO command

Matthias Haegele mhaegele at linuxrocks.dyndns.org
Mi Mai 24 21:20:30 CEST 2006


Rainer Wiesenfarth schrieb:
> Matthias Haegele schrieb:
> 
>>Marcel Hartmann schrieb:
>>
>>>>/^[0-9.]+$/         550 Your software is not RFC 2821 compliant
>>>
>>>Was bewirkt diese zeile denn knapp gesagt?
>>
>>scnr: Was die regex sagt ;-).
>>Grob: Wer keine Ziffern [0-9] gefolgt von einem Punkt . verwendet, hat 
>>keine gültige IP-Adresse ...
>>(Ziffern. nächster Block etc: z.B. 192.)
> 
> 
> ??? Hab' ich's jetzt nur nicht kapiert oder hast Du da einen Aussetzer
> gehabt? IMHO matcht die RE, wenn der Eintrag nur aus Ziffern und Punkten
> besteht, also z.B. bei "192.168.0.1" oder "127.0.0.1" oder auch bei
> "1..2..3".

Ja, ja du hast Recht ;-). Klar habe ich einen Aussetzer (nicht den 
ersten) ;-).

Letzteres wird trotzdem geblockt aber wohl nicht von dieser Restriction 
und mit einem 501er wo das herkommt k. A.:
May 24 17:20:56 mein_mailserver postfix/smtpd[9244]:
NOQUEUE: reject: RCPT from [84.164.225.115]: 501 <[192..168..1.1]>:
Helo command rejected: invalid ip address; 
from=<meine_mailadresse at t-online.de> 
to=<meine_mailadresse at meine_domain.dyndns.org> proto=ESMTP 
helo=<[192..168..1.1]>


> 
> Ohne in den RFC geschaut zu haben, würde ich vermuten, dass die Angabe
> aus einem Hostname und/oder einer IP-Adresse, dieser aber in '[]',
> bestehen muss.

Jup. Sobald eine IP-Adresse gesendet wird wird verlangt dass diese 
gefälligst in [] eingebettet daherkommt.

Weil mir so langweilig ist hab ich mal in die RFC geschaut:
>    To promote interoperability and consistent with long-standing
>    guidance about conservative use of the DNS in naming and applications
>    (e.g., see section 2.3.1 of the base DNS document, RFC1035 [22]),
>    characters outside the set of alphas, digits, and hyphen MUST NOT
>    appear in domain name labels for SMTP clients or servers.  In
>    particular, the underscore character is not permitted.  SMTP servers
>    that receive a command in which invalid character codes have been
>    employed, and for which there are no other reasons for rejection,
>    MUST reject that command with a 501 response.

Das wär dann wohl der Grund für die 501 er von oben?

> 4.1.3 Address Literals
> 
>    Sometimes a host is not known to the domain name system and
>    communication (and, in particular, communication to report and repair
>    the error) is blocked.  To bypass this barrier a special literal form
>    of the address is allowed as an alternative to a domain name.  For
>    IPv4 addresses, this form uses four small decimal integers separated
>    by dots and enclosed by brackets such as [123.255.37.2], which

Das isses wohl ...
>    indicates an (IPv4) Internet Address in sequence-of-octets form.  For
>    IPv6 and other forms of addressing that might eventually be
>    standardized, the form consists of a standardized "tag" that
>    identifies the address syntax, a colon, and the address itself, in a
>    format specified as part of the IPv6 standards [17].
> 
[...]
> 
> Die Frage ist nun noch, ob sich P at ricks Zeilen:
> /^194\.126\.158\.24$/   550 Don't use my own IP address: 194.126.158.24
> /^212\.14\.92\.88$/     550 Don't use my own IP address: 212.14.92.88
> /^212\.14\.92\.89$/     550 Don't use my own IP address: 212.14.92.89
> /^212\.14\.92\.90$/     550 Don't use my own IP address: 212.14.92.90
> dann nicht erübrigen (es sei denn, er will sich explizit über die
> Nutzung seiner Adresse beschweren).
> 
> Sinn machen würden sie übrigens dann, wenn man '^' und '$' weg lässt,
> dann kann man sich auch die Version mit '[]' sparen ...

Das kapier ich jetzt nicht würde das dann nicht das Ergebnis verfälschen?.
> 
> Best regards / Mit freundlichen Grüßen
> Rainer Wiesenfarth

Grüsse
MH




Mehr Informationen über die Mailingliste Postfixbuch-users