Seit heute bin ich auch dabei, unter http://twitter.com/rot26de kann man meinen Gedanken im Laufe des Tages folgen — zumindest jenen, die ich öffentlich machen will, aber nicht für einen Blogeintrag reichen.
Twitter – ich bin dabei!
Februar 25th, 2009Multi-mode oder Singlemode?
Februar 17th, 2009Wie unterscheidet man eigentlich Multimode (MMF) und Singlemode (SMF) Glasfasern? Am einfachsten über die Ummantelung. Zum Glück gibt es eine Konvention, daß MMF normalerweise orange, SMF normalerweise gelb ummantelt sind. Kleine Randnotiz: Beim Beauftragen von Glasfaser-Verbindungen im Rechenzentrum sollte man frühzeitig von allen beteiligten Parteien in Erfahrung bringen, welchen Fasertyp und welchen Stecker sie sich vorstellen. Sonst braucht man viel Glück damit es hinterher alles übereinstimmt.
Alles Gute zum 1234567890-Tag!
Februar 13th, 2009Für diejenigen die es noch nicht mitbekommen haben: Heute Nacht ist 1234567890, zumindest in der Epoch-Schreibweise, d.h. in Sekunden seit dem 1. Januar 1970, dem Anfang der UNIX-Zeitrechnung. Und zwar genau um:
$ date -r 1234567890 Sa 14 Feb 2009 00:31:30 CET
Diese Zeitkonvertierung funktioniert allerdings nur unter BSD und MacOS X mit dem BSD-date, aber nicht unter Linux mit GNU date…
Update: Wie ich gerade erfahre kann man es auch unter GNU date schaffen:
$ date -d @1234567890 Sa 14. Feb 00:31:30 CET 2009
Logging auf Telnet-Session bei Cisco
Februar 9th, 2009Kleiner Tip wenn man per Telnet auf einem Cisco-Router eingeloggt ist und das Log beobachten möchte. Anstatt zwischendurch immer wieder show log einzugeben kann man die Log-Meldungen auf dem aktuellen Virtuellen Terminal ausgeben lassen. Hierzu einfach terminal monitor eingeben.
Will man allgemein zu mehr Disziplin und Bewusstsein bei der Administration sorgen kann man das auch automatisch bei jeder Verbindung aktivieren:
line vty 0 4 autocommand terminal monitor autocommand-options nohangup
Bandbreitentester für ISPs
Februar 5th, 2009Gambit Design hat einen Bandbreitentester für ISPs zum Download – einfach auspacken und die entsprechende Datenbank anlegen, schon können Kunden zumindest grundlegend die Bandbreite ihrer Anbindung testen. Leider bisher nur in Download-Richtung, vielleicht lässt er sich bei Gelegenheit auch für die Upload-Richtung erweitern…
Lint für E-Mails
Februar 1st, 2009Letzte Woche war viel los, deshalb bin ich nicht zum schreiben gekommen. Aber jetzt habe ich ein paar Beiträge angesammelt, die im Laufe der Woche erscheinen werden.
Ein praktischer Fund diese Woche war Message Lint, genau soetwas habe ich schon länger gesucht. Diese Woche fielen mir die passenden Such-Stichwörter ein und er war gefunden.
Was tut Message Lint? Es prüft E-Mail-Nachrichten auf RFC-Konformität. Das ist sehr praktisch wenn man E-Mails selber generiert. So kann man sicher sein, dass alle MIME-Header stimmen, die Codierung richtig angegeben ist und so weiter.
Stolperfallen bei DNS-Wildcard-Einträgen
Januar 22nd, 2009Eine praktische Erfindung sind DNS-Wildcard-Einträge, um z.B. bei einer Domain nicht alle Subdomains manuell konfigurieren zu müssen. Aber es gibt dabei Stolperfallen, in die auch erfahrene Sysadmins manchmal tappen.
Kurz zu den Grundlagen: Eine Zeile des Zonefiles besteht aus folgenden Teilen:
- name, z.B. www
- ttl, z.B. 300
- class, z.B. IN
- rr, z.B. A
- type-specific-data, z.B. 192.0.2.1
Nun kann man für name auch Wildcards benutzen, also z.B. solche Einträge machen, ein Beispiel-Zonefile wäre:
example.com IN MX 10 mail.example.com. *.example.com IN MX 10 mail.example.com. mail.example.com IN A 192.0.2.1 *.example.com IN A 192.0.2.2 *.demo.example.com IN A 192.0.2.3
Soweit ist alles klar. Ruft jemand im Browser kunde1.example.com auf, landet er auf 192.0.2.2, bei kunde1.demo.example.com auf 192.0.2.3, und alle E-Mails an info@kunde1.example.com werden über mail.example.com zugestellt. Aber was ist mit Mails an info@kunde1.demo.example.com?
Jetzt kommt das überraschende: Der MX-Eintrag *.example.com greift hier nicht. Warum? Nun, es wird der spezifischere Eintrag *.demo.example.com gefunden, für den es nur einen A-Record gibt. Sollen auch Mails an *.demo.example.com zugestellt werden, muß auch hierfür ein MX-Eintrag angelegt werden.
Und noch eine Stolperfalle: Gibt es eine zweite Sammel-Subdomain prod.example.com funktioniert dies mit der oben genannten Konfiguration, und kunde1.prod.example.com zeigt auf 192.0.2.2 – solange, bis jemand auf die Idee kommt für kunde2.prod.example.com ein SSL-Zertifikat zu benötigen und dieses auf 192.0.2.4 zu installieren.
Jetzt funktioniert plötzlich kunde1.prod.example.com nicht mehr – denn es gibt ja jetzt explizit prod.example.com, mit einem einzigen Eintrag: kunde2. Und kunde1 guckt in die Röhre. Also muß das Zonefile um die folgenden Einträge erweitert werden:
*.prod.example.com IN A 192.0.2.2 kunde2.prod.example.com IN A 192.0.2.3 *.prod.example.com IN MX 10 mail.example.com. *.demo.example.com IN MX 10 mail.example.com.
Details finden sich in rfc1034 Abschnitt 4.3.3.
Cronjobs richtig schreiben
Januar 19th, 2009In meinem Job als Systemadministrator bei einem ISP werde ich von unseren Kunden oft mit dem Wunsch nach einem Cronjob konfrontiert, dabei kann man sich viele Eigenschaften des Cron-Daemons zunutze machen und somit Arbeit sparen, ausserdem erhöhte Sicherheit erreichen.
Folgende Punkte sollte man beachten:
- in der crontab MAILTO setzen
- Ausgabe in den Scripten nur bei Fehlern, und nach STDERR
- nicht wget oder curl verwenden, sondern direkt z.B. php-cli
- keine Webserver-Variablen (in PHP z.B. $_SERVER) verwenden, sondern z.B. $HOME
Damit erreicht man einiges und spart sich Arbeit. Zu allererst muss man nicht selber eine E-Mail generieren, sondern kann es dem Cron-Daemon überlassen. Ausserdem wird, wenn man 2. beachtet, nur dann eine E-Mail erzeugt, wenn ein Fehler auftritt. Dadurch wird eine Gewöhnung vermieden (vorausgesetzt man behebt die Fehler die gemeldet werden konsequent) und sichergestellt, daß Fehler nicht im Grundrauschen untergehen.
Durch Berücksichtigung von 3. kann man die Skripte ausserhalb des per Webserver aufrufbaren document_root ablegen, und verhindert damit daß User der Webseite Cronjobs zu ihren Gunsten aufrufen. Ein Beispiel wäre eine Community, bei der jeder User am Tag eine Punktzahl bekommt. Ausserdem senkt es die Anzahl der für einen Cronjob gestarteten Prozesse immens. Bei Verwendung von z.B. curl sind es bis zu vier: cron startet eine Shell, diese startet Curl, der Request beschäftigt einen Webserverprozeß und eventuell einen PHP-Prozeß. Ohne diesen Umweg kann man es durch Setzen der Shell-Variablen auf einen reduzieren: PHP.
Allerdings muss man seinen Quellcode dann unabhängig von Variablen, die nur vom Webserver gesetzt werden, schreiben, wie z.B. das oben genannte $_SERVER.
serielle Console auf Mac OS X
Januar 15th, 2009Ich habe schon oft gehört daß Apple-Notebooks sich immer grösserer Beliebtheit bei Netzwerkadmins erfreut. Als langjähriger Apple-User kann ich das sehr gut nachvollziehen.
Allerdings kommt oft die Frage auf, welches Programm man denn benutzen kann um mit Hilfe von USB-Seriell-Adaptern auf die Console-Ports eines Routers zuzugreifen. Auf meinem ersten iBook habe ich damals tip von OpenBSD mit ein paar kleinen Änderungen kompiliert – da ich dummerweise die Änderungen nicht dokumentiert hatte konnte ich nur das Binary weitergeben.
Auf meinem ersten Intel-Mac stellte sich mir dann erneut diese Frage, und da wurde ich auf eine extrem simple Lösung gestossen. Das Programm screen lässt sich nicht nur als Ersatz für virtuelle Terminals und für die Ausführung von langen Prozessen auf entfernt stehenden Servern verwenden. Nein, es ist auch eine erstklassige Terminal-Emulation.
Der Aufruf
screen /dev/tty.usbserial-FTBA75T3
öffnet die serielle Console des angehängten Gerätes.
Optional können noch weitere Parameter folgen, am ehesten benötigt man die Angabe der Geschwindigkeit.
Auch ein Break lässt sich senden, per “^A b”. Wenn man fertig ist kann man per “^A ^\” gefolgt von “y” die Sitzung beenden.
Corporate Design bei Cisco
Januar 12th, 2009Viele Firmen vernachlässigen ihr Corporate Design auf sträfliche Art. Andere geben sich viel Mühe, daß ihr Logo nicht nur überall gleich gut aussieht, sondern auch ja immer richtig herum erscheint. Problematisch ist sowas bei Notebooks – soll das Logo bei geschlossenem oder geöffnetem Display richtig herum sein?
Cisco hat sich für seine WLAN-Accesspoints etwas besonderes einfallen lassen: ein drehbares Logo!
Zitat aus dem Cisco 521 Wireless Express Access Point Quick Start Guide: “The logo should always be easy to read.“