Archiv der Kategorie ‘Allgemein‘

 
 

SOHO Mailserver unter Debian Lenny mit Getmail

Hier geht’s um die Idee, einen schicken, lokalen SOHO Mailserver unter Debian Lenny einzurichten. SOHO bedeutet Small Office, Home Office – wir reden hier also vom klassischen Serverlein daheim im Schrank, bis hin zum ausgewachsenem Server mit einigen (wenigen) Clients. Das ist kein Copy/Paste-Tutorial. Vielmehr geht es hier um die Möglichkeiten von Debian, einen solchen Mailserver zu realisieren.

Wozu überhaupt ein lokaler Mailserver?

E-Mails direkt am Client per POP abzuholen hat einige Nachteile. Besonders dann, wenn man von verschiedenen Rechner auf seine E-Mails zugreifen will. Außerdem ist die Datensicherung, auch bei nur einem Client, echt anstrengend.

Deswegen wurde IMAP erfunden! Mich stört aber:

  • Die Daten liegen irgendwo (im schlimmsten Fall bei Google!).
  • Begrenzter Speicherplatz: schon allein die Tatsache, dass eine Grenze existiert, stört.
  • Lag! Egal ob xxMbit und lokaler Cache: inet < LAN

Ein lokaler Mailserver löst all diese Probleme: E-Mails werden von diversen Konten per POP3 beim jeweiligen Provider abgeholt, und dann per IMAP im lokalen Netz zur Verfügung gestellt.

Die Anforderungen

  • Abholung von E-Mails verschiedener POP3-Konten bei verschiedenen Providern (GMX, 1und1, usw.)
  • Serverseitige (Spam-)Filter und Weiterleitungen
  • Bereitstellung der Mails mehrerer externer POP-Konten in einem IMAP-Postfach (in Unterordnern)
  • Versand über den SMTP-Server des jeweiligen Providers
  • Internen Mailversand direkt zustellen
  • Shared IMAP Ordner

Die Installation

Glücklicherweise sind alle benötigten Tools als Debian-Pakete verfügbar. Als MTA verwenden wir Postfix, IMAP-Postfächer werden von Dovecot bereitgestellt. Sieve filtert die E-Mails serverseitig. Getmail holt E-Mails von POP3-Konten und Spamassassin kümmert sich um den SPAM. Als Bonus gibt’s den Webmailer Squirrelmail mit Avelsieve, zum Erstellen/Bearbeiten von Sieve-Regeln per Browser.

Benutzer

Die verschiedenen Mail-Benutzer sind “normale” Shell-Benutzer. Die Mail-Verzeichnisse sind jeweils im Home-Verzeichnis des Users. Wir entscheiden uns mal für ~/mail. Das Format ist Maildir und die Verzeichnisse cur, tmp und new müssen wir von Hand mit maildirmake unterhalb von ~/mail anlegen oder einmalig in /etc/skel.

Postfix

Eigentlich könnte man die Mails auch direkt vom Client aus wegschicken. Der “Umweg” über den lokalen Mailserver hat aber den Vorteil, dass wir interne Mails direkt zustellen können (dazu später mehr). Außerdem finde ich es schicker, die SMTP-Daten einmalig am Server zu konfigurieren und dann am Client die einfachen Shell-Logindaten einzutippen. Für serverseitige Weiterleitungen (mit Sieve) brauchen wir sowieso einen MTA.

apt-get install postfix postfix-tls

Wir wählen Internetbetrieb mit Smarthost. Wir wollen ausgehende Mails über den jeweiligen SMTP-Server des Mail-Anbieters senden (also alles von me@gmx.net über smtp.gmx.net, alles von you@1und1.de über smtp.1und1.de usw.). Deshalb müssen wir Postfix so konfigurieren, dass es je nach Absenderadresse verschiedene SMTP-Server mit Authentifizierung verwendet. Das geht mit sender_dependent_relayhost_maps:

/etc/postfix/main.cf:

sender_dependent_relayhost_maps = hash:/etc/postfix/sender_relay
smtp_tls_auth_enable = yes
smtp_tls_password_maps = hash:/etc/postfix/tls_passwd

/etc/postfix/sender_relay:

me@gmx.net     [smtp.gmx.net]
you@1und1.de   [smtp.1und1.de]
...

/etc/postfix/tls_passwd:

me@gmx.net     Benutzer:Passwort
you@1und1.de   you:geheim

Dovecot

Wir installieren Dovecot 1.2 aus den Lenny-Backports. Warum wir die Backports-Version von Dovecot nehmen, und wie man die Backports zur sources.list hinzufügt, habe ich in einem früheren Beitrag schon einmal erwähnt.

apt-get install -t lenny-backports dovecot-common dovecot-imap

Getmail4 /Spamassassin

apt-get install getmail4 spamassassin

Jeder Benutzer hat pro Account eine getmailrc_*-Datei in ~/home/.getmail/. Ein Cronjob führt Getmail regelmäßig aus. Ein Lockfile sorgt dafür, dass E-Mails nicht doppelt abgeholt werden, wenn ein von Cron angestoßener Getmail-Prozess einmal länger dauert.

~$ vi ~/.getmail/getmailrc_me_gmx.net
[options]
delete = true

[retriever]
type = SimplePOP3Retriever
server = pop.gmx.net
port = 110
username = me@gmx.net
password = geheim
use_apop = false
timeout = 180
delete_dup_msgids = false

[destination]
type = MDA_external
path = /usr/sbin/sendmail
arguments = ('-f', me@gmx.net.de', '-oi', 'Shell-Login-Name@Lokaler-Host)

[filter]
type = Filter_external
path = /usr/bin/spamc
arguments = ("-s", "250000", "-u", "Shell-Login-Name", "-p", "783", )

An Postfix wird einmal die lokale Adresse (Shell-User@Hostname) und die externe E-Mail-Adresse übergeben. Das erlaubt die spätere Einsortierung in IMAP-Unterordner anhand des POP-Kontos mittels Envelope-From-Header.

Die Spamassassin-Filterung muss direkt von Getmail über [Filter] konfiguriert werden. Die Weiterleitung an Postfix erfolgt nämlich NICHT per SMTP, und somit ist der Spamassassin in Postfix nutzlos.

Der Cronjob

Der Cronjob wird von root ausgeführt und sucht in Home-Verzeichnissen nach getmailrc_*-Dateien. In diesem Beispiel macht er das jede Minute.

~$ sudo crontab -u root -e
*/1 * * * * /usr/local/bin/getthemail.sh >/dev/null 2>&1

~$ sudo vi /usr/local/bin/getthemail.sh
#!/bin/sh
 LOCK_FILE="/var/lock/getthemail"
 if [ ! -f "${LOCK_FILE}".lock ];
 then
 lockfile-create "${LOCK_FILE}"
 lockfile-touch "${LOCK_FILE}" &

 for getfile in $( find /home/*/.getmail/ -name getmailrc\* -print )
 do
 Y=`ls -l $getfile | awk '{print $3; }'`
 touch $getfile
 sudo -u $Y /usr/bin/getmail --getmaildir /home/$Y/.getmail/ --rcfile $getfile
 done
 lockfile-remove "${LOCK_FILE}"
 fi
exit 0;

Sieve-Filterung

Dovecot 1.2 kommt mit eigener Sieve-Implementierung. Ganz fix:

~$ sudo apt-get install squirrelmail avelsieve
~$ sudo vi /etc/dovecot/dovecot.conf
protocols = imap pop3 pop3s imaps managesieve
protocol lda {
   [...]
   mail_plugins = sieve
}

Per Sieve können wir jetzt auch E-Mails von verschiedenen POP3-Accounts in einem IMAP-Account organisieren. Getmail kann Mails verschiedener Konten in einem IMAP-Ordner zur Verfügung stellen. Mit einer Sieve-Regel lassen sich diese E-Mails in verschiedene Ordner schieben. Der Envelope-To-Header entspricht dabei immer der ursprünglichen Ziel-Adresse.

Interne Mails

Da alle ausgehenden Mails über den Postfix laufen ist das ein Klacks! Wir “mappen” externe Adressen auf lokale User-Accounts. Das ganze passiert mit Hilfe von alias_maps

~$ postconf -e alias_maps = hash:/etc/postfix/local_delivery
~$ sudo vi /etc/postfix/local_delivery
test@gmx.net    test

Wobei “test” ein lokaler Shell-Benutzer wäre.

Shared IMAP Ordner

Auch hier bietet Dovecot verschiedene Möglichkeiten. Die einfachste: wir symlinken das Shared-Folder einfach in das jeweilige IMAP-Root-Verzeichnis:

ln -s /home/share/mail /home/user/.Shared

In diesem Fall sharen wir die INBOX des users “share”. Das funktioniert natürlich auch für Unterverzeichnisse. Wichtig ist nur, dass dann der user “user” Schreibrechte auf cur, tmp, new und auf die Dovecot-Index-Dateien des “share”-Benutzers besitzt.

Google!

Sommerloch auf neunzehn83? Von wegen!

Es sind ja bekanntlich die kleinen Dinge im Leben, die oft den Unterschied machen. Das ist bei Suchmaschinen nicht anders — schon gar nicht bei Google.

Google ist nicht umsonst die Nr.1 unter den Suchmaschinen. Die Google-Homepage kommt so unscheinbar daher. Und dennoch steckt so unfassbar viel dahinter. Hier mal ein kleines Beispiel:

Google nach “simplexml delete child”

Mysteriöserweise wird auch “remove” als Suchbegriff erkannt und somit fett dargestellt. Wieso? Google benutzt eine ziemlich komplexe Synonym-Erkennung. Das Ganze funktioniert erstaunlich gut. Den meisten Suchenden wird dieses Feature aber gar nicht auffallen.

Was macht die Konkurrenz?

Yahoo

Bing

Enttäuschend. Remove wird offensichtlich nicht berücksichtigt.

Die ganze Thematik  gibt es auch noch einmal in einem lesenswerten Artikel im Google-Blog zum Nachlesen.

Interessanterweise funktioniert das nicht nur für Synonyme, sondern auch für Abkürzungen. Beispiel: “IE6″ bei Google, und Yahoo und Bing.

Was dieses Feature betrifft, kommt nach Google erstmal eine ganze Weile nichts. Bei Bing funktionieren Abkürzungen teilweise. Yahoo scheint keine Abkürzungen zu erkennen.

SPAM im Griff mit Catch-All E-Mail-Adresse und Subdomain

Die meisten web2.0-Anwendungen verlangen eine Anmeldung, und somit auch eine E-Mail-Adresse, bevor man in den Genuss des kostenlosen Dienstes kommt. Eine Wegwerf-E-Mail-Adresse bietet sich hier nicht immer an. Schließlich will man später eventuell von Updates erfahren. So wird die verwendete E-Mail-Adresse früher oder später zugespammt. Doch welcher der vielen Anbieter, bei denen diese E-Mail-Adresse registriert ist, hat meine Adresse an Spammer verkauft? Oder anders gefragt:

Wer spammt mich hier eigentlich zu?

Wenn ein und dieselbe Adresse für mehrere Dienste benutzt wird, lässt sich das leider nicht herausfinden. Das Anlegen einzelner E-Mail-Adressen für jeden Dienst ist auch mehr als umständlich. Deshalb richten wir eine Catch-All E-Mail-Adresse ein. Damit landen alle E-Mails einer (Sub-)Domain, die an einen nicht existierenden Account gerichtet sind, in einem bestimmten Postfach.

Catch-All auf der Hauptdomain ist generell eine schlechte Idee. Hier ist das Grundrauschen von vornherein viel höher. Deshalb richten wir den Catch-All nur auf einer speziellen Subdomain ein. Zum Beispiel mail.example.org mit catchall@mail.example.org als POP3/IMAP-Account.

Bei Anmeldung an einer Webseite verwenden wir den Namen der selbigen als local-part unser Mailadresse. Beispiel: facebook@mail.example.org oder myspace@mail.example.org. Dank Catch-All laden all diese Mails in unserem catchall@-Account.

Nun lässt sich ganz leicht feststellen, wo der Spam denn herkommt.  Das hilf einem jetzt vielleicht auch nicht unbedingt weiter, aber zumindest lässt sich nun der gesamte Spam anhand der Empfänger-Adresse blockieren. Zum Beispiel mit einer einfachen Sieve-Filterregel. So sollte das Konto auch über längere Zeit sauber bleiben.

Spamassassin: Jahr 2010 Problem auf Debian Lenny?

Heise hat es direkt an Neujahr berichtet: Spamassassin hat offenbar ein Jahr-2010-Bug. So werden alle Mails mit Datum 2010 mit dem FH_DATE_PAST_20XX-Flag versehen.

Spam-E-Mails haben oft ein Datum weit in der Zukunft, damit Sie im Mail-Client immer ganz oben erscheinen (clever!). Spamassassin versucht dem mit dieser Regel entgegen zu wirken. Leider wurde die Jahreszahl 2010 fest einprogrammiert (clever?), und nun offenbar von der Realität eingeholt :)

Da dieses Flag eine hohe Gewichtung hat, landen jetzt also auch normale E-Mails oft fälschlicherweise im Spam-Ordner (false positive). Das Problem betrifft nicht nur den Spamfilter von  GMX und 1&1 sondern im Prinzip jede Spamassassin-Installation.

Für Debian Lenny gab es für das Spamassassin-Paket noch am selben Tag einen bugfix (Spamassassin 3.2.5-2+lenny1.1~volatile1 aus dem Debian Volatile-Repo). Mittlerweile gibt es auch ein offizielles Regel-Update, was die Installation des Volatile-Bugfixes überflüssig macht. Ein einfaches sa-update reicht aus, um die Regeln auf den neusten Stand zu bekommen und den Jahr-2010-Bug zu eliminieren.

Wie finden wir nun heraus, ob der eigene Debian Lenny/Etch-Server von diesem Bug betroffen ist?

SA-Regeln liegen im Ordner /usr/share/spamassassin/, Regel-Updates im Ordner /var/lib/spamassassin/<sa-version>/updates_spamassassin_org

Die Dateien im Update-Ordner überschreiben die Standard-Regeln. Die betroffene Datei heißt 72_active.cf. Diese öffnen wir und suchen nach der FH_DATE_PAST_20XX-Regel:

sudo vi /var/lib/spamassassin/<sa-version>/updates_spamassassin_org/72_active.cf
  ##{ FH_DATE_PAST_20XX
  header   FH_DATE_PAST_20XX      Date =~ /20[1-9][0-9]/ [if-unset: 2006]
  describe FH_DATE_PAST_20XX      The date is grossly in the future.
  ##} FH_DATE_PAST_20XX

Wichtig ist der fett markierte Regex. Dieser trifft auch auch das Datum 2010 zu. Höchste Zeit für ein Update:

sudo sa-update

Wir öffnen die Datei erneut:

sudo vi /var/lib/spamassassin/<sa-version>/updates_spamassassin_org/72_active.cf
  ##{ FH_DATE_PAST_20XX
  header   FH_DATE_PAST_20XX      Date =~ /20[2-9][0-9]/ [if-unset: 2006]
  describe FH_DATE_PAST_20XX      The date is grossly in the future.
  ##} FH_DATE_PAST_20XX

Aus [1-9] wurde [2-9].  Spamassassin-Neustart:

sudo /etc/init.d/spamassassin restart

Problem gelöst! Zumindest bis zum Jahr 2020…

Dass damit das Problem nur aufgeschoben wird, ist aber bekannt. Die Regel soll längerfristig sowieso komplett abgeschafft werden.

Spamassassin aktualisiert sich übrigens unter Lenny i.d.R. automatisch via Cronjob (/etc/cron.daily/spamassassin). Hier muss man also nichts weiter tun. Ansonsten beseitigt ein manuelles sa-update diesen Bug ganz sicher, und bringt für mindestens 10 Jahre Ruhe :)

Wegwerf-E-Mail-Adressen: Sperrung umgehen

Anbieter für Wegwerf-E-Mail-Adressen gibt es viele. Ich persönlich bin Mailinator-Nutzer der ersten Stunde. Mailinator war immer zuverlässig und tut genau das was es soll: temporäre E-Mail-Postfächer bereitstellen.

Mailinator gehört zu den größten/bekanntesten Anbietern – und genau das ist auch das Problem. Viele Seiten, die eine Anmeldung mit gültiger E-Mail-Adresse fordern, blockieren die bekannten Wegwerf-E-Mail-Anbieter.

Aber es gibt Abhilfe. Statt @mailinator.com kann man auch jede andere Domain nehmen, deren MX-DNS-Eintrag auf den selben Mailserver zeigt, wie der von @mailinator.com. Doch wie ist die IP-Adresse des Mailinator-Mailservers?

$ dig MX mailinator.com
; <<>> DiG 9.5.1-P3 <<>> MX mailinator.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54319
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;mailinator.com.                        IN      MX

Wie wir sehen, sehen wir nichts. Hat eine Domain keinen MX-Record, so wird automatisch der A-Record als Mailserver angenommen:

$ dig A mailinator.com
; <<>> DiG 9.5.1-P3 <<>> A mailinator.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 7356
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;mailinator.com.                        IN      A
;; ANSWER SECTION:
mailinator.com.         77483   IN      A       66.135.60.177

Blöd nur, wenn man mal eben keine Domain (Subdomain reicht auch) zur Hand hat, deren MX-Eintrag man auf die Mailinator-IP ändern kann. Zum Glück kann man bei DynDNS auch freie MX-Records vergeben:

mailinator

Isi manni! Bei “MX-Hostname” entweder mailinator.com, mail.mailinator.com (das war früher mal der MX von mailinator.com) oder direkt die IP (66.135.60.177) eintragen.

Statt irgendwas@mailinator.com kann man jetzt einfach irgendwas@dyndnsacc.kicks-ass.org verwenden. Somit umgeht man die Sperre zu 99%. Die Mails landen trotzdem direkt in der Mailinator-Inbox. Man könnte natürlich direkt den MX-Record prüfen und sperren, ist mir aber bisher auf noch keine Seite passiert. Let them eat spam!

Cineplex Reservierungssystem fail

Beim Cineplex Neckarsulm kann man unter http://212.20.182.131/ online Karten (Sitzplätze) reservieren. Nach kostenloser Registrierung kann man ebenfalls kostenlos bis zu vier Sitzplätze reservieren. Das ist natürlich viel zu wenig. Glücklicherweise nimmt es das System mit der Überprüfung der Formulardaten nicht so genau. Stichwort: Input Validation. Das ist die Überprüfung aller Nutzer-Daten auf Plausibilität hin: Ist die E-Mail-Adresse korrekt, ist die Postleitzahl 5-stellig oder in diesem Fall: liegt die Anzahl der zu reservierenden Sitze zwischen 1 und 4 ?

Formulare lassen sich auf Clientseite leicht manipulieren. Firebug bietet sich hier geradezu an. Firebug ist ein Firefox-Plugin, mit dem man unter anderem das DOM der Webseite einsehen und bearbeiten kann. Um die Anzahl der zu reservierenden Sitze leicht zu erhöhen, einfach mit dem Inspector auf das SELECT-Element klicken, und einen der Option-Werte anpassen. Opera kann das übrigens von  Hause aus: Darstellung -> Quelltext, <option> manipulieren, klick oben auf “Änderungen anwenden”.

cineplex1

Normalerweise sollten die Daten nach dem Absenden des manipulierten Formulars auf der Serverseite überprüft werden. Das ist hier aber offenbar nicht der Fall.

cineplex2

Schon besser.

Das Beispiel zeigt, dass eine Webanwendung grundsätzlich jedem User-Input misstrauen sollte und diese Daten niemals ungeprüft übernehmen sollte. Das betrifft nicht nur Formular-Daten sondern auch Cookie-Daten, GET/POST und sonstige, vom Nutzer übermittelte Daten.
Aber wer wird es dem armen ASP-Frickler Entwickler schon verübeln ..

Die Technik hinter diesem Blog: Hosting für Schwaben

Dieser Blog läuft auf einem vServer von Netcup. Dieser Prachtkerl für schlappe 1,69€/Monat hat stolze 100MB RAM (nein, da fehlt keine Null)  und 4GB HDD. Darauf läuft ein Debian Lenny Minimal-System mit Web-, Mail-, FTP- und Nameserver. Entsprechend konfiguriert bleibt auch noch ein wenig RAM übrig. Zumindest solange sich hier nicht allzu viel User tummeln. Keine Angst – im Moment geht’s noch ;)

Mit einem Gutscheincode, der sich relativ leicht über bekannte Suchmaschinen finden lässt, spart man noch 50% der Einrichtungsgebühr. Spätestens jetzt sollte selbst der geizigste Schotte feucht unterm Rock werden!

Die .de-Domain wurde über Regworld registriert. Für ebenfalls schwäbische 2,22€/Jahr.

So sieht das im Moment aus:

~$ free
             total       used       free
Mem:        102400      54196      48204
-/+ buffers/cache:      54196      48204
Swap:       102400          0     102400

Alles im allem bin ich bis jetzt von der Leistung des kleinen Servers positiv überrascht.  Mal sehen wie viel Wordpress er verträgt..

.tel-Domains

Neue Top-Level-Domains gibt es immer mal wieder. .tel ist die jüngste, .post wird wohl die nächste werden. Die .tel-Domain unterscheidet sich aber von allen bisherigen generischen TLDs.

Alle Informationen, die einer .tel-Domain zugeordnet sind, werden nicht auf einem Webspace gespeichert, sondern direkt im DNS. Es gibt bei .tel-Domains also kein Speicherplatz (“Web-Content”) und damit auch kein individuelles Layout. Außerdem sind keine E-Mail-Adressen möglich. Die Daten werden über ein einheitliches Webinterface verwaltet. Die URL zum Webinterface und die Zugangsdaten bekommt der Domaininhaber vom Registrar automatisch per E-Mail.

Suchmaschinen können die im DNS abgelegten, strukturierten Daten sehr gut indizieren. Deswegen kommen .tel-Domains auch recht oft unter die ersten Suchergebnisse.

So sieht eine reine DNS-Abfrage/Antwort mit dig oder nslookup aus:

$ dig any emma.tel
emma.tel.  3600    IN      SOA     d0.cth.dns.nic.tel. cth-support.support.nic.tel. 15 10800 3600 2592000 60
emma.tel.  86400   IN      A       194.77.54.2
emma.tel.  3600    IN      NS      s0.cth.dns.nic.tel.
emma.tel.  3600    IN      NS      t0.cth.dns.nic.tel.
emma.tel.  3600    IN      NS      a0.cth.dns.nic.tel.
emma.tel.  3600    IN      NS      n0.cth.dns.nic.tel.
emma.tel.  3600    IN      NS      d0.cth.dns.nic.tel.
emma.tel.  60      IN      TXT     "Emma Davis. Here is my new address:\010100 5th Avenue, New York, NY 10011."
emma.tel.  60      IN      TXT     ".tkw" "1" "bi" "" "jt" "Graphic Designer"
emma.tel.  60      IN      TXT     ".tkw" "1" "hi" "Salsa Dancing"
emma.tel.  60      IN      TXT     ".tkw" "1" "nl" "" "fn" "Emma" "ln" " Davis"
emma.tel.  60      IN      TXT     ".tsm" "1" "pddx" "1"
emma.tel.  60      IN      LOC     51 25 35.812 N 0 7 54.610 W 0.00m 10m 2m 2m
emma.tel.  60      IN      NAPTR   100 100 "u" "E2U+voice:tel+x-mobile" "!^.*$!tel:+16468889999!" .
emma.tel.  60      IN      NAPTR   100 101 "u" "E2U+voice:tel+x-work" "!^.*$!tel:+12125551234!" .
emma.tel.  60      IN      NAPTR   100 102 "u" "E2U+email:mailto" "!^.*$!mailto:emma@aol.com!" .
emma.tel.  60      IN      NAPTR   100 103 "u" "E2U+x-voice:skype" "!^.*$!skype:emma123!" .
emma.tel.  60      IN      NAPTR   100 104 "u" "E2U+web:http" "!^.*$!http://myspace.com/emadavis!" .

Kreative Servernamen

Bei der Vergabe von Servernamen wird ja oft nach einem bestimmten Schema vorgegangen: Hauptstädte, Sternzeichen, Charakter aus Filmen oder Serien.

Wie laaangweilig. Bei reddit [Link wird nachgereicht sobald ich den Beitrag wieder finde] habe ich von einem wirklich interessanten Schema erfahren: Servernamen werden nach den Elementen im Periodensystem der selbigen benannt.

Server #1 bekommt also den Namen “hydrogen” (Wasserstoff, 1 Proton), Server #2 dem Namen “helium” (2 Protonen) usw. Soweit schon mal nicht schlecht.

Jetzt muss noch das letzte Byte der IP-Adresse mit der Protonenanzahl übereinstimmen. Server #1 hätte also die IP-Adresse 192.168.0.1, Server #2 die 192.168.0.2 usw. Somit lässt sich von dem Servernamen direkt auf die IP-Adresse schließen (vorausgesetzt man hat das Periodensystem der Elemente so grob im Kopf :)).

Zudem kann man auch Aliasnamen im DNS anlegen, so dass das jeweilige Kürzel des Elements in die IP auflöst:

$ ping h
PING h (192.168.0.1) 56(84) bytes of data.
64 bytes from hydrogen.lokal (192.168.0.1): icmp_seq=1 ttl=64 time=0.023 ms

Wohoo! Leider nur in der Theorie wirklich nett. In der Wirklichkeit macht die Benennung nach Verwendung des Servers mehr Sinn (server-terminal, webserver, nasbox1, usw.). Die Beziehung zwischen Servername und IP-Adresse macht auch keinen Sinn. Zum einen haben die wenigsten das Periodensystem im Kopf, zum anderen wurde genau für diesen Zweck DNS erfunden: um Servernamen und IP-Adressen unabhängig voneinander zu machen. Der aufmerksame, chemie-affine Leser wird zudem die Begrenzung auf 118 unterschiedliche Servernamen bemängeln.

neunzehn83

Was war eigentlich 1983 los? Microsoft Windows 1.0 ist fertig. BTX wird in Deutschland eingeführt. Motorola bringt das erste Handy auf den Markt. Thomas Anders und Dieter Bohlen gründen Modern Talking. Helmut Kohl ist Bundeskanzler. Die erste öffentliche Zapfsäule für bleifreies Benzin wird in Betrieb genommen. Das GNU-Projekt entsteht. Der HSV wurde deutscher Meister, Nelson Piquet Formel1-Weltmeister.

Heilig’s Blechle! Verdammt lang ist’s her. 26 Jahre später wird es höchste Zeit zu bloggen. Über Dies & Das, Sel´ und Jenes, Webtechnik im Speziellen und Computer im Allgemeinen. Neben dem üblichem Nerdkram wird vielleicht auch über das ein oder andere Thema abseits der IT gebloggt. Mal schauen ..