Das böse „F“-Wort

Als Mitarbeiter des Rechenzentrums etwas über Filesharing zu schreiben ist wohl so als ob der Papst ein Lehrvideo zur Benutzung von Kondomen auf YouTube einstellt, aber ich bin ja schon lange für ein drittes vatikanisches Konzil. 🙂 P2P-Filesharing verströmt bekanntlich seit Langem den Duft des Illegalen, seine legalen Anwendungsbereiche dürfen dabei aber nicht übersehen werden und sind inzwischen sogar Gegenstand wissenschaftlicher Untersuchungen.

Hier soll es nun um ein Filesharing-Tool gehen, dessen Dienste ich speziell in LAN-Umgebungen nicht mehr missen möchte. Der konkrete Anlass war die Versammlung eines halben Dutzends bier- und chipsbewaffneter Endzwanziger nebst mehr oder minder moderner Unterhaltungselektronik in meinem Keller, kurz und neudeutsch: Eine LAN-Party. Aufgrund des höchst unterschiedlichen Alters des mitgeführten Equipments – die Spanne reichte von cebitfrisch bis prähistorisch – erwies es sich als erstaunlich schwierig, die neuesten Warcraftkarten oder die letzten Partybilder untereinander auszutauschen. Windows-Dateifreigaben mussten erstmal eingerichtet werden, waren dann über verschiedene Versionen (98, 2000, XP, Vista) aber auch nicht erreichbar, Linux wollte auch nicht so recht mitspielen und wenn dann noch diverse Personal Firewalls etwas zu sagen haben, kann man die Sache komplett vergessen. Also wurden schließlich USB-Sticks oder externe Festplatten herumgereicht, alles sehr nervig und unflexibel.

Ich machte mich bei nächster Gelegenheit auf die Suche nach einem Tool, welches dieses Dilemna eleganter lösen sollte. Und ich fand Lanshark, ein Programm des Schweizers Jonas Wagner. Die Programmversion 0.0.2 stimmte mich zwar etwas bedenklich, aber die verwendete Programmiersprache Python gab Anlass zur Hoffnung, dass ich das Programm selbst für meine Zwecke anpassen konnte. Das war im Endeffekt aber gar nicht nötig, da Lanshark bereits in der vorliegenden Version genau das Werkzeug war, nach dem ich gesucht hatte. Das Programm ist unter der GPL freigegeben, die Installation ist kinderleicht, Lanshark sucht im lokalen Netz selbständig nach Austauschpartnern, die Oberfläche ist übersichtlich und es gibt ein paar weitere nette Features (UTF8-Support oder eine Resumefunktion zum Beispiel). Daher beschränke ich meine Beteiligung am Projekt momentan auf die Pflege des Pakets für Debian/Ubuntu. Lanshark ist darüber hinaus für Windows, Gentoo und als tar-Ball für andere Linuxderivate verfügbar.

Abgesehen davon, dass es für LAN-Partys sehr nützlich ist, verwende ich Lanshark auch manchmal bei der Arbeit, z.B. um Dateien schnell und unkompliziert auf mehrere virtuelle Maschinen zu verteilen (wenn AFS nicht zur Verfügung steht). Also: Testen und immer schön artig (und legal) bleiben!

Amazon, Google Book Search und KUG miteinander verknüpfen

Ob ein Buch in der Bibliothek vorhanden ist, lässt sich jetzt auch in Amazon oder Google Books feststellen. Dies funktioniert mittels Greasemonkey und KUG-Skripten.
Beim Aufruf der Titelanzeige wird in amazon dann angezeigt, ob ein Buch vorhanden ist oder nicht. Der Link führt von Amazon direkt zum entsprechenden Titel im KUG.
Die Installation braucht ca. 5 Minuten. Wie das funktioniert, beschreibt Herr Oliver Flimm von der USB in dem OpenBibBlog:
http://blog.openbib.org/2008/11/04/kug-verfugbarkeit-bei-amazon-und-google-books/

Freedom Universal Keyboard² am Nokia N810

Bei der Nutzung der Bluetooth-Tastatur Freedom Universal Keyboard² am Nokia N810 Internet-Tablet fällt unschön auf, dass die Taste mit den Zeichen <, > und | nicht nutzbar ist. Die Eingabe von | ist damit über das BT-keyboard nicht möglich, wenn es unter Einstellungen/Steuerung/Bluetooth-Tastatur als „Generic 105-key PC“ Bluetooth Tastatur eingestellt ist.

Erste Abhilfe gibt die Einstellung als „Nokia SU-BW“. Man hat dann aber  mit verschiedensten Fehlbelegungen der Tastatur (Abweichung von der Beschriftung) zu kämpfen.

Die Dateien zur Konfiguration der X11-Tastatur-Eingabe sind unter /usr/share/X11/xkb/symbols/ zu finden.

Folgende Änderung macht das Keyboard der Beschreibung entsprechend nutzbar:

$ diff -c pc.orig pc
*** pc.orig    
--- pc  
***************
*** 34,40 ****
      key <LFSH> {      [ Shift_L       ]       };
      key <LCTL> {      [ Control_L     ]       };
      key <LALT> {      [ Alt_L,        Meta_L          ]       };
!     key <LWIN> {      [ Super_L                       ]       };

      key <RTSH> {      [ Shift_R       ]       };
      key <RCTL> {      [ Control_R     ]       };
--- 34,40 ----
      key <LFSH> {      [ Shift_L       ]       };
      key <LCTL> {      [ Control_L     ]       };
      key <LALT> {      [ Alt_L,        Meta_L          ]       };
!     key <LWIN> {      [ less, greater, bar, brokenbar                 ]       };

      key <RTSH> {      [ Shift_R       ]       };
      key <RCTL> {      [ Control_R     ]       };
$

Damit wird die Taste mit den Symbolen <, > und | von ihrer Bedeutung als Super-L(„Windows“)-Taste auf die gewünschte Interpretation umkonfiguriert.

Zusätzlich ist es nett, durch

$ diff -c de.orig de
*** de.orig     2009-01-26 09:14:28.000000000 +0100
--- de  2009-01-26 09:15:04.000000000 +0100
***************
*** 14,20 ****
      key <AE02>        { [         2,   quotedbl,  twosuperior,    oneeighth ] };
      key <AE03>        { [         3,    section, threesuperior,    sterling ] };
      key <AE04>        { [         4,     dollar,   onequarter,     currency ] };
!     key <AE11>        { [    ssharp,   question,    backslash, questiondown ] };
      key <AE12>        { [dead_acute, dead_grave, dead_cedilla,  dead_ogonek ] };

      key <AD03>        { [         e,          E,     EuroSign,     EuroSign ] };
--- 14,21 ----
      key <AE02>        { [         2,   quotedbl,  twosuperior,    oneeighth ] };
      key <AE03>        { [         3,    section, threesuperior,    sterling ] };
      key <AE04>        { [         4,     dollar,   onequarter,     currency ] };
! //    key <AE11>      { [    ssharp,   question,    backslash, questiondown ] };
!     key <AE11>        { [    ssharp,   question,    backslash, bar ]  };
      key <AE12>        { [dead_acute, dead_grave, dead_cedilla,  dead_ogonek ] };

      key <AD03>        { [         e,          E,     EuroSign,     EuroSign ] };
$

dafür zu sorgen, dass die Eingabe von Shift-AltGr-ß ein |-Zeichen (bar) erzeugt. Auf das Zeichen „questiondown“ kann meiner Meinung nach verzichtet werden.

Nettes Hilfswerkzeug für solche Dinge sind die auf dem N810 nicht vorhandenen X11-tools xev und xmodmap, die unter

http://maemo.lancode.de/?path=./diablo/binary

zu finden sind. Klar, dass all diese Dinge auch mit xmodmap zu erreichen sind, aber es fand sich nicht schnell eine Stelle, wo so ein xmodmap-command im system-startup zu verankern wäre. Die oben aufgezeigten config-changes werden jedoch einfach schon nach einem reboot wirksam.

Sonderzeichen vertical bar auf die Tastatur legen

Etwas unhandlich beim Nutzen des N810 Internet-Tablets mit deutscher Tastatur besonders als ssh-client zur Linux-Administration ist, dass das |-Zeichen (bar) nicht direkt zugänglich ist, sondern durch erst Drücken der Chr-Taste auf dem Bildschirm und dann noch erst nach scrollen des visuellen keyboards gedrückt werden kann.

Eine kleine Anpassung in der Datei

/usr/share/X11/xkb/symbols/nokia_vndr
$ diff -c rx-44.orig rx-44
*** rx-44.orig 
--- rx-44      
***************
*** 156,162 ****
      key <AC09>        {       [       l,              L,              parenright,     parenright      ]       };
      key <AC11>  {     [       udiaeresis,     Udiaeresis,     question,       question        ]       };

!     key <AB01>        {       [       y,              Y,              EuroSign,       EuroSign        ]       };
      key <AB02>        {       [       x,              X,              asciitilde,     asciitilde      ]       };
      key <AB03>        {       [       c,              C,              asterisk,       asterisk        ]       };
      key <AB04>        {       [       v,              V,              ampersand,      ampersand       ]       };
--- 156,163 ----
      key <AC09>        {       [       l,              L,              parenright,     parenright      ]       };
      key <AC11>  {     [       udiaeresis,     Udiaeresis,     question,       question        ]       };

! //    key <AB01>      {       [       y,              Y,              EuroSign,       EuroSign        ]       };
!     key <AB01>        {       [       y,              Y,              bar,    bar     ]       };
      key <AB02>        {       [       x,              X,              asciitilde,     asciitilde      ]       };
      key <AB03>        {       [       c,              C,              asterisk,       asterisk        ]       };
      key <AB04>        {       [       v,              V,              ampersand,      ampersand       ]       };
$

sorgt dafür, dass Fn-Y nach dem nächsten reboot statt dem €-Symbol ein |-Symbol schreibt. Das €-Zeichen ist nach wie vor über die Bildschirmtastatur (durch Chr einblendbar) verfügbar.

Thunderbird-Addons für “Profis”: Nostalgy

Teil 2 der Reihe Thunderbird Addons für Vielbenutzer

Mail, die man nicht archivieren möchte kann man einfach aus der Mailbox mit der Taste „D“ löschen und landet danach am Anfang der nächsten Email. Auf diese Art lässt sich eine volle Mailbox schnell duchlaufen und reduzieren. Leider geht das mit Mail, die man aufheben will nicht so leicht. Um Email zur Archivierung in Unterordner zu verschieben, muss man meist zur Maus greifen, was häufg lästig ist.

Mit dem Addon Nostalgy kann man auch diese Aufgabe bequem auf das Keyboard verlegen. Das lohnt sich insbesondere, wenn man viele Email bekommt, die man lediglich lesen und anschließend archivieren muss. (Die Möglichkeit, diese dann gleich per Filter in die passenden Ordner sortieren zu lassen, habe ich persönlich als nicht sinnvoll empfunden. Was bereits im Archivordner liegt liest man meistens gar nicht mehr…). „Thunderbird-Addons für “Profis”: Nostalgy“ weiterlesen

Wurmbefallenes Windows weiß waschen

Mit Schädlingsprogrammen befallene Windows-Systeme sind eine echte Pest. Auch im Uninetz tauchen solche Systeme immer wieder auf.

Die richtige Methode zur Problembehebung ist natürlich eine Neuinstallation. Leider gibt es aber auch Situationen, in denen das – zumindest temporär – nicht möglich ist. Hier wird man dann versuchen müssen, das System mit Hilfe von Virenscannern und Anti-Spyware-Programmen zu säubern. Angesichts der heutigen Vielfalt von Malware und der Frequenz, mit der immer neue Varianten erscheinen, hat man dabei jedoch häufig selbst bei der Verwendung mehrerer unterschiedlicher Programme schlechte Karten, wirklich alle unerwünschten Komponenten zu erwischen. Daß man dazu ein von Live-CD gestartetes Rettungssystem verwenden muß, ist ja ohnehin klar.

Eine weiteres Problem sind Hinterlassenschaften, die auch nach dem Löschen von als infiziert eingestuften Dateien zurückbleiben. Da wird dann beispielsweise die Windows-Firewall deaktiviert und eine Gruppenrichtlinie gesetzt, die ein einfaches Reaktivieren verhindert, oder die Einstellungen für die automatischen Updates von Windows werden unbrauchbar gemacht, so daß das System spätestens beim Entdecken der nächsten Windows-Sicherheitslücke gleich wieder infiziert werden kann.

Das häufigste Problem in dieser Hinsicht sind jedoch Manipulationen an den Netzwerkeinstellungen, um die Benutzer infizierter Rechner auf irgendwelche Phishing-Sites umzuleiten. Der Klassiker sind dabei sicherlich Manipulationen an der Datei %windir%system32driversetchosts. Da wurden dann gerne mal die Update-Server und Websites von Antivirenherstellern geerdet oder auch beliebte Angebote wie ebay.de umgeleitet. Diese Änderungen werden von Anti-Virus-Programmen mittlerweile aber meist erkannt. Sehr beliebt waren eine Zeit lang auch Eingriffe in den Netzwerkverkehr über Winsock-LSPs, wogegen aber zum Glück auch ein Kraut gewachsen ist. Inzwischen werden gleich ganz andere Geschütze aufgefahren.

Etwas weniger versiert, aber nach meiner Beobachtung derzeit weitaus weiter verbreitet, sind direkte Manipulationen an den Windows-eigenen Netzwerkverbindungen (also z.B. der „LAN-Verbindung“ oder der „Drahtlosen Netzwerkverbindung“). Da wird dann in den Eigenschaften von TCP/IP konfiguriert, daß zwar die IP-Adresse per DHCP bezogen werden soll, aber die Adresse des DNS-Servers wird manuell eingestellt – auf einen manipulierten DNS-Server der Phishing-Banden, versteht sich. Diese Vorgehensweise ist schon ziemlich clever: Bei einem einfachen ipconfig sieht alles OK aus, denn dort sieht man die Adresse des DNS-Servers nicht, und zunächst scheint im Netzwerk auch alles normal zu funktionieren. Nur die Webseiten, die man zu Gesicht bekommt, sind halt oft genug nicht die Originalseiten, sondern von den Phishern nachgemachte Seiten, bei denen die eingegebenen Paßwörter gestohlen werden. Statt eines einfachen ipconfig muß man also ipconfig /all verwenden und kontrollieren, ob die eingestellten DNS-Server die richtigen sind (im UKLAN sind das diese hier).

Natürlich gibt es noch viel mehr Dinge, die man auf einem einmal kompromittierten System kontrollieren müsste – von Backdoorprogrammen über Rootkits oder manipulierte Dienste bis zu geänderten Passwörtern oder neu angelegten Benutzerkonten. Die eingangs erwähnte Neuinstallation ist daher auf jeden Fall die beste Variante, die man wenn irgend möglich auch beherzigen sollte. Aber für die Fälle, in denen eben nicht neu installiert werden kann, sollte man zumindest die hier genannten Manipulationsmöglichkeiten kennen und überprüfen, ob Sie auf dem „gereinigten“ System vorliegen.

Thunderbird-Addons für „Profis“: Quicktext

Da es für Thunderbirds eine schier unübersichtliche Menge AddOns gibt, stelle ich mal die drei vor, die ich persönlich am wenigsten missen möchte:

Quicktext erlaubt es Antworten „aus der Dose“ direkt im Entwurfsfenster von Thunderbird einzufügen.

Wenn man konsequent immer wiederkehrende Antworten als Template abspeichert, spart man nach einer Weile eine ganze Menge Arbeit. Interessant ist hier auch das Feature, dass man in den Templates Variablen einfügen kann, an deren Stelle z.B. Namen des ursprünglichen Schreibers, Datum oder der Inhalt der Zwischenablage eingefügt werden kann.

Wie funktioniert das?

„Thunderbird-Addons für „Profis“: Quicktext“ weiterlesen

Python 3000 erschienen

Selten wurde das neue Release einer Programmiersprache so kontrovers diskutiert wie bei Python 3000 (auch „Py3K“ genannt). Und das hat seinen Grund, schließlich ist die neue Version in einigen häufig genutzten Bestandteilen inkompatibel zu den Vorgängern. Die Wandlung der „print“-Anweisung hin zur Funktion ist wohl das berühmteste Beispiel, aber darüber hinaus gibt es weitere wichtige Änderungen, u.a.:

  • viele Methoden und Funktionen liefern statt Listen nun Iteratoren oder „Views“ zurück (z.B. map, filter, dict.keys)
  • syntaktische Änderungen, z.B. beim Exception Handling („as“ statt Komma)
  • Unicode ist nun der Standard zur Zeichenkodierung (siehe das „Unicode-Howto“)
  • Divisionen liefern nun Fließkommazahlen, keine abgeschnittenen Integers
  • „old-style-classes“, also Klassen, die nicht von einer Basisklasse abgeleitet wurden, sind nicht mehr erlaubt
  • einige Funktionen und Methoden wurden umbenannt („raw_input“ wurde zu „input“) oder komplett entfernt („has_key“, „file“)
  • neue nützliche Helfer wie die „with“-Anweisung oder das „multiprocessing“-Paket sind hinzugekommen

Eine komplette Liste der Änderungen findet man unter: http://docs.python.org/dev/3.0/whatsnew/3.0.html. Zusätzlich sollte man beachten, dass die kürzlich erschienene Version 2.6 bereits einige Backports von Python 3000 beinhaltete, sofern diese kompatibel mit Python 2.x waren. Die (entsprechend langen) Release Notes zu Python 2.6 findet man unter: http://docs.python.org/dev/whatsnew/2.6.html

Wer seine bestehenden Skripte auf Kompatibilität zu Python 3000 prüfen möchte, kann dies unter Python 2.6 mit dem Kommandozeilenparameter „-3“ tun. Wer seine Skripte automatisch in Python 3000 portieren möchte, kann hierfür das Tool „2to3“ verwenden. Häufig ist manuelles Nacharbeiten aber dennoch erforderlich.

Passwortmanager in Browsern sind unsicher

Heise berichtet über einen Browser-Test mit erschreckenden Ergebnissen. Ich habe den Test selbst mit Safari und Firefox 3 durchgespielt. Wenn man das sieht, sollte man eigentlich auf die Verwendung dieser Manager verzichten. Andererseits verwende ich viele unterschiedliche Passwörter (auch aus Sicherheitserwägungen) und kann mir kaum für jede Website das jeweilige Passwort merken …
Man muss hoffen, dass die Browserhersteller hier reagieren.