[Postfixbuch-users] xy at localhost-Adressen werden zu"xy at localhost.$mydomain" umgeschrieben

Olaf Lautenschlaeger postfix_users_ol_nospam at anova.de
Di Mai 27 15:55:57 CEST 2008


Hallo Peer, Hallo Thomas,

On Monday, May 26, 2008 7:28 PM [GMT+1=CET],
Peer Heinlein <p.heinlein at heinlein-support.de> wrote:

>> Kann mir vielleicht noch jemand sagen,
>> warum bei mir "@localhost" in Adressen
>> immer um $myhostname ergaenzt wird?
>
> Du meinst wohl $mydomain und nicht $myhostname, oder?

Ist bei mir (absichtlich) egal, siehe w. u.

> Weil localhost kein FQDN und davon abgesehen auch sonst keine routbare
> Mailadresse ist.

In einem bestimmten Sichtwinkel ist "localhost" doch ein FQDN. Jedenfalls
sollte er sofort und ohne Weiteres zu lokaler Zustellung führen (evlt. nach
Prüfung, ob die Sender-IP=127.0.0.1 ist, um es den Spammern ein wenig
komplizierter zu machen. Ok., dieses Kriterium würde vllt. einiges an der
Postfix-Sicherheitslogik aufrühren, so von wegen Sonderbehandlung bei
"smtpd_sender_restrictions" et. al. Erscheint aber machbar.)

"localhost" wurde genau zu diesem Zweck implementiert: weder beim Tippen
von "127.*#=}&%%" die Finger brechen noch über die Welt jenseits des
Netzwerkadapters (die ja ggf. auch mal, aus Sicht des Systems, vor dem man
gerade sitzt, noch gar nicht existiert) nachdenken zu müssen. Nicht umsonst
ist dieser Hostname als Best Practice praktisch überall, wenngleich mit
nicht eben unerheblichem Aufwand, DNS-auflösbar, sobald ein TCP-Stack
verfügbar ist.

Der Mehraufwand wäre doch erst mal nur:
haveFQDN := hostname="localhost" OR pos(".", hostname)>0

Was passiert eigentlich, wenn man "localhost." in Postfix einträgt oder
als Domain in Adressen verwendet?

Es gibt zwar nicht wirklich eine Verankerung auf der Ebene der Root-
Server, aber jeder normale lokal abfragbare DNS liefert Anworten bzw.
verhält sich so, als sei "localhost." eine TLD.

> Aus diesem Grund beinhaltet der Default-Wert von $mydestination auch
> stets den Eintrag localhost.$mydomain (ich glaube Debian vermurkst
> das, wenn ich mich düster erinnere).

Dieses "localhost.$mydomain" ist nun selbst eine Vermurksung. Vor allem,
weil es dafür praktisch nie eine DNS-Auflösung geben wird - es ist einfach
zu sinnwidrig.
Ok., dieser Murks ist - wohl wg. Setup-Tools wie YaST, welche die An-
gabe einer nichtleeren Domain erzwingen, auch wenn eine solche (noch)
gar nicht existieren muss/kann - historisch gewachsen.

Der Default-Direktive "mydestination = $myhostname, localhost.$mydomain,
localhost" ist z. Zt. jedenfalls durch "append_dot_mydomain = yes" der
tiefere Sinn genommen.

Mein abschliessender Vorschlag:
Es bedarf im MTA, wie sonst auch, einer Sonderbehandlung fuer "localhost" -
man sollte es bei "append_dot_mydomain" ausseracht lassen können, evtl. (wg.
Abwärtskompatiblität) per etwas wie "exclude_from_append = localhost", mit
leerer Direktive als factory-default (und natürlich einen Hinweis, ggf. eine
entsprechende Rule in "smtpd_recipient_restrictions" aufzunehmen).

(das muss einfach gehen)

>>  $ diff `postconf` `postconf -d` | egrep "^<":
>
> Wie wäre es einfach mit "postconf -n"?

Ooops, das "-n" steht aber auch so was von weit unten in der man-page.
:-)
Die Kommandozeile funktioniert ohnehin nicht wie angegeben, sollte nur
verdeutlichen, was da steht. Ich habe dafür jetzt halt ein kleines Script
im Postfix-Ordner, der schreibt das ganze (mit numbered-Backup) in
eine Datei.

>> < mydomain = $myhostname
>
> Naja, das ist schon etwas schizophren, wenn die Domain gleich dem
> Hostnamen sein soll.

Warum schizophren? Bzw. - warum als Schizophrenie bemängeln?
Computer können/dürfen das! :-)
Man halte sich doch einfach mal die ff., dem Hirn einen Schreibfaulen
entsprungene, ansonsten aber völlig korrekte DNS-Zone vor Augen:

$ORIGIN sub.example.com.
$TTL 1d
@       SOA       @ hostmaster 42 1d 1h 4w 1w
           NS          @
           MX 10    @
           A            10.11.12.13

Einer für alles - das _muss_ auch gehen! Es gibt jedenfalls keinen Grund,
so etwas auszuschliessen.

Ich habe das so gemacht, um einen Test-Mailserver für eine Test-Domain
zu haben und beides innerhalb einer vorhandenen Infrastruktur zu betreiben,
dabei letztere aber nur "minimal-invasiv" zu beeinflussen (per Glue-Record
im Firmen-DNS eben).

> Eine Schweinerei zieht den nächsten Dreck gleich nach sich... :-)

Eben, eben...

Ich hätte da noch einen kleinen Verbesserungsvorschlag für Postfix:

Beim Einlesen der "main.cf" sollte es eine Warnung geben, wenn Direktiven
mehrfach auftauchen. YaST z. B. schreibt einerseits einen Warnhinweis an
den Anfang der Datei, hängt seine Dubletten ggf. aber ans Ende, sozusagen
weitestmöglich auseinander. Als Neueinsteiger (oder auch jemand, der sich
nur längere Zeit nicht mit Postfix beschäftigt hat) kann man da schon mal
heftig ins Grübeln kommen.

Beste Grüße

Olaf Lautenschläger
-- 
ANOVA Multimedia Studios GmbH

fon: (+49) (0) 381 / 40 59 - 550
fax: (+49) (0) 381 / 40 59 - 551
web: www.anova.de
corporate e-mail: info at anova.de
_______________________________________

ANOVA Multimedia Studios GmbH

Geschaeftsfuehrer:
Prof. Dr. Hansgeorg Meissner,
Michael Kaeding,
Dr. Volker Gries

Firmensitz:
Joachim-Jungius-Strasse 10,
D-18059 Rostock / Germany

Registergericht:
Amtsgericht Rostock

Handelsregisternummer:
HRB 2788

UST-IdNummer:
DE 811577650

(footer size due to legal demands applying under german law)




Mehr Informationen über die Mailingliste Postfixbuch-users