Skip to content

Spamschutz bei S9Y

Im Hintergrund tut Serendipity oder kurz S9Y seinen Dienst. Vor mehr als sieben Jahren stieg ich von Wordpress auf die Software um. Die Software tut im wesentlichen ihren Dienst. Außer, wenn wie heute, ein Plugin merkwürdige Sachen macht.

Ich hatte bis heute abend das Autosave-Plugin installiert. Das speichert die Einträge zwischen und soll eigentlich vor Datenverlust schützen. Bei mir sorgte es dafür, dass die Rezension mehrfach verschwand. Der Grund war, dass ich auf Speichern im Artikelfenster drückte und das Fenster offen liess. Das Plugin wollte einfach alte Werte speichern und löschte so den Beitrag.

Seit dem Jahreswechsel bereitet mir nicht die Blogsoftware Kopfschmerzen, sondern der Spam der eintrudelt. Anfangs hatte ich den Spamschutz aktiviert, den S9Y von Haus aus mitbringt. Dazu setzte ich ein paar Worte auf die Blacklist. Das reichte aus. Nebenan im Datenkanal habe ich noch das Bayes-Plugin im Einsatz. Das wurde von Beginn an angelernt und verrichtet gute Dienste.

Das S9Y Infocamp hat sich nun dem Thema Spamschutz bei S9Y angenommen. In dem Podcast besprechen sie verschiedene Mechanismen. Dabei kommt die Rede auf die SpamBee. Die arbeitet unter anderem mit versteckten CAPTCHAs. Die vier Podcaster sind voll das Lobes. Ich habe den Podcast glücklicherweise zur rechten Zeit gehört. Denn direkt nachdem ich die Biene hier installierte, traf das Blog eine Spamwelle. Von den Lesern hat das vermutlich niemand bemerkt. Die Spambiene hat den Spam wirklich sehr gut abgefangen. Wer also da draußen mit Spam bei S9Y zu kämpfen hat, sollte unbedingt SpamBee probieren. Vermutlich bringt das Plugin Linderung.

Firefox Add-On Ant Video Downloader spioniert Nutzer aus

Ein Add-On für den Firefox, welches 4 von 5 Sternen hat und von mehr als sieben Millionen Nutzer installiert wurde, sollte doch halbwegs vertrauenswürdig sein. Zumindest legt Linus’ Law diese Erkenntnis nahe. Das Add-On Ant Video Downloader straft diese Annahme nun Lügen.

Der Ant Video Downloader soll Videos von Youtube, Facebook und vielen anderen Seiten auf einfache Weise herunterladen. Daneben hat die Software noch einen anderen Zweck. Sie sammelt Daten über jede Seite, die der Benutzer besucht. Dazu wird eine eindeutige Nummer, die so genannte Ant-UID, angelegt. Wenn eine Webseite aufgerufen wird, sendet Ant eine zweite Anfrage mit eben dieser Nummer, der URL der aufgerufenen Seite sowie der Browserkennung an die Adresse rpc.ant.com.  Somit kommt dort jeder Seitenaufruf (also auch interne URLs im privaten Netzwerk) an, den ihr jemals gemacht habt. Damit aber noch nicht genug. Bei der Deinstallation der Software wird die Informationen mit der eindeutigen Nummer, der Ant-UID, behalten. Wenn ihr die Software später neu installiert, wird genau dieselbe Nummer wieder verwendet. Das ist also eine massive Verletzung der Privatsphäre der Nutzer.

Wie ein Witz klingt da die Privacy Policy von Ant.com:

As a responsible member of the community of website owners, Ant.com solutions (Here in after Ant.com) takes the privacy and security of its users with the highest regard.

Insgesamt finde ich in der Policy keinen Hinweis auf diese Spionagemaßnahme. Glücklicherweise haben die Betreiber der Add-On-Seite die Notbremse gezogen. Zunächst wurde der Download der Software komplett deaktiviert und jetzt ist diese als experimentell gekennzeichnet. Damit sollten nur erfahrenere Nutzer diese installieren können.

Das Beispiel zeigt mal wieder, das man sich offensichtlich auf keine Software verlassen kann und insbesondere das die Warnungen bezüglich der Add-Ons sehr ernst zu nehmen sind.

via InterWeb Task Force und The Register

Fehlersuche beim Linux-Kernel (Bootprobleme)

Vor nicht allzu langer Zeit sass ich entspannt bei einem Kaffee und wollte meinen Rechner starten. Einschaltknopf gedrückt und der Bildschirm lächelte mich mit einer Fehlermeldung an:

error: unexpectedly disconnected from boot status daemon
Begin: Waiting for root file system ...

grml, warum muss das ausgerechnet jetzt passieren? Sehr schnell war klar, dass ich an dieser Stelle nicht weiter komme. Also bootete ich einen alten, funktionierenden Kernel und änderte meine grub-Einstellungen entsprechend. Damit lebte ich einige Zeit gut, bis mir mal wieder der Workaround auffiel. Jetzt wollte ich das Problem mal genauer angehen.

Beispielansicht eines Plymouth-Bootscreen

Die Fehlermeldung, die irgendwas von dem Boot Status Daemon erzählte, schien auf plymouth hinzudeuten. Der Sinn der Software ist es, den Bootprozess zu verschönern. Das heißt, es macht schicke Bildchen anstatt der Kernelmeldungen.

Der Bugtracker von Debian hatte einen Eintrag zu meiner Meldung. Die in dem Bugreport genannten Einstellungen änderten bei mir nichts am Problem. In meinem nächstem Versuch wollte ich plymouth deinstallieren. Aber da gab es eine winzige Abhängigkeit zu mountall(8). Der Zufall führte mich zu einem angepasstem Paket, mit dem plymouth deinstalliert werden kann. In freudiger Erwartung startete ich den Rechner neu. Aber es wäre nur zu schön gewesen, wenn sich das Problem so leicht lösen ließe.

Zu diesem Zeitpunkt kam mir in den Sinn, die Bootoptionen quiet und splash zu entfernen. Siehe da, ein wenig mehr kam zum Vorschein:

Begin: Running /scripts/init-premount ... done.
Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.
Begin: Waiting for root file system ...

Warten, warten und nochmal warten. Oh, nun noch eine BusyBox-Shell:

(initramfs) Gave up waiting for root device. Common problems:
...
ALERT! /dev/disk/by-uuid/.... does not exist. Dropping to a shell!

Nebenbei stellte ich dann fest, dass die Meldung mit dem Boot Status Daemon nur bei einer speziellen Kernelversion auftrat. Die Meldung oben konnte ich mit jeder Standard-Ubuntu-Kernelversion größer als 2.6.32-20 erzeugen. Für mich wäre es viel wichtiger zu erfahren, woher denn diese Meldung stammt!

Ein Hinweis brachte mich dann zu den Mainline-Builds. Das sind spezielle Pakete des Ubuntu Kernelteams, die recht nahe am Original-Kernel sind. Ich versuchte wieder diverse Versionen. Alle brachten mir die Fehlermeldung. Na gut, dann baue ich eben einen eigenen Kernel.

git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
cp /boot/config-2.6.32-24-generic /usr/src/linux-2.6/.config
make oldnoconfig
make deb-pkg
dpkg -i ../linux*.deb
reboot

Beim ersten Reboot startete der Kernel tatsächlich korrekt. Sollte Ubuntu wirklich einen Bug in den eigenen Kernel eingebaut haben? Plötzlich fiel mir ein, dass die Zeile im grub einen kleinen, aber feinen Unterschied zu den restlichen Einträgen aufwies. Ich hatte root=/dev/sda1 angegeben. Alle anderen Einträge trugen root=UUID=.... Also versuchte ich die Änderung bei den anderen Kerneln und es klappte. Jede Kernelversion bootete mit dieser Änderung.

Jetzt muss ich nur noch herausfinden, warum das nicht klappt und ich bin wieder ein glücklicher Mensch. :-)

Das Bild stammt vom Blog Linux und ich

Ubuntu und ext4

Das Dateisystem ext4 ist einer der neuen Stars am Linuxhimmel. Es ist der Nachfolger von ext2/3 und wird seit 2006 entwickelt. Da ich letzte einen Laptop neu installieren wollte, kam ich auf die Idee ext4 zu probieren. Also bei der Installation von Ubuntu 9.04 die Partition mit der entsprechenden Option formatiert und losgelegt. Für vernünftiges Arbeiten brauche ich die Inhalte verschiedener git- bzw. Subversion-Repositorys. Subversion nutze ich dabei mittels git-svn. Während der Rechner dabei ist, verschiedene neue Pakete zu installieren, Repositorys zu clonen etc., bleibt er plötzlich stehen. Keine Reaktion auf Tasten oder auf die Magic SysRq (Magische S-Abf-Taste). Bei der Suche nach dem Fehler war es ganz klar, dass es am Befehl git-svn in Verbindung mit dem Dateisystem ext4 lag. Die Suche in diversen Bug-Datenbanken brachte mich nicht viel weiter. Also fragte ich direkt bei den ext4-Entwicklern. Theodore Tso antwortete mir:

This sounds like the classic Ubuntu Jaunty’s default kernel freezes when deleting large numbers of files. It didn’t occur with stock mainline 2.6.28, nor with stock mainline 2.6.29, and it bisected to one of Ubuntu’s ext4 patch backports. No one was able to debug it further, and I was never able to replicate it on my test systems, so we ultimately just told people to use a mainstream kernel or a Karmic beta kernel for people who wanted to use ext4 with Ubuntu Jaunty.

In der Tat seit dem Upgrade auf Kernelversion 2.6.31 gibt es keine Probleme. Solltest du also ähnliches erfahren, versuche einen Upgrade und alles wird gut. ;-)

Verwendete Plugins für Firefox

Beim gestrigen Grillen der LUG Jena kam die Frage auf, welche Plugins ich für den Firefox nutze. Mir wollten zu dem Zeitpunkt nicht alle einfallen und so liefere ich die Liste hier nach:

CookieCuller
Mit CookieCuller kann ich selektiv Cookies vor dem Löschen schützen. Alle anderen angelegten Cookies werden beim Beenden des Browsers immer gelöscht.
DOM Inspector
Zum Betrachten des Document Object Model einer Seite
Download Manager Tweak
Das ist eine Anpassung an den eingebauten Download-Manager. Insbesondere mag ich hier, dass sich dieser in einem neuen Reiter öffnet.
Fasterfox
Das ist zur Verbesserung der Geschwindigkeit des Firefox.
Flashblock
Eine Plugin, welches Flash auf Webseiten blockiert. Dies ist zusätzlich zu NoScript, siehe unten, installiert.
FoxyProxy
Ein Plugin zum Verwalten von Proxys. Damit kann ich nach regulären Ausdrücken oder Wildcards festlegen, für welche URL welcher Proxy benutzt wird. Gerade wenn ich I2P, Tor und anderes nutze, finde ich das ganz sinnvoll.
It’s all text
Damit kann ich einen Texteditor festlegen. Dieser kann gestartet werden, wenn ich Textfelder bearbeite. Gerade wenn man viel bei Wikipedia oder anderen schreibt, ist das recht nützlich.
LinkChecker
prüft die Links einer Webseite und markiert diese entsprechend der HTTP-Statuscodes.
NoScript
NoScript erlaubt es, JavaScript und anderes spezifisch pro URL zu aktivieren oder zu deaktivieren. Das Plugin nutze ich sehr häufig und finde es auch sehr mächtig.
ScrapBook
Das Plugin ist nützlich, um Webseiten zu archivieren. Eine archivierte Webseite sieht immer so aus, wie sie gespeichert wurde. Das eignet sich recht gut zum offline-Lesen.
Tab Mix Plus
Ändert das Standardverhalten der Reiter im Firefox und hat eine Vielzahl an möglichen Einstellungen.
Torbutton
Torbutton schaltet einen Proxy mit einem Klick an oder aus. Die Entwicklerversion bietet noch an, beim Umschalten Cookies, History etc. zu löschen.

Das ist in etwa das, was ich auf verschiedenen Rechner fand. Einige der Erweiterungen nutze ich immer. Andere sind nur Überbleibsel,

Bei der Runde tauchte dann noch die Frage auf, ob es ein Plugin gibt, welches nach einer vorzugebenden Frist die privaten Daten löscht. Ich fand hier nur SecureBrowse, was in etwa in die Richtung geht. Jedoch scheint dort alles fest vorgegeben zu sein. Kennt jemand noch andere, besser Erweiterungen?

Aprilscherz der LUG Jena

Auch wenn der erste Apriltag schon fast eine Woche vorbei ist, muss ich doch meine Worte dazu loswerden. Bei den Stammtischen der LUG Jena werden hin und wieder auch mal verrückte Ideen diskutiert. Im Rahmen der verschiedenen Aprilscherze kam uns mal die Idee, einen eigenen zu kreieren.

In der Prozessliste finden sich u.a. auch Kernelprozesse, deren Name mit “k” beginnt. Dazu gehören beispielsweise kacpid, kjournald, ksnapd sowie einige mehr. Daneben hat auch KDE die Angewohnheit, Programme mit dem Anfangsbuchstaben “k” zu versehen. Man denke an kate, kicker, kopete und andere. Wir wollten nun mit einem Kernelpatch Verwirrung erzeugen, der sich um die Rechte der armen GNOME-Nutzer kümmert und die Prozessnamen umbenennt. Diese Idee wird bei uns regelmäßig nach dem ersten April wieder diskutiert. Jedes Mal stellen wir fest, dass wir das wieder mal vergessen haben. Doch hnaz hat diesmal dran gedacht:

More and more GNOME users (especially Ubuntu) get confused by their process list showing several process names that seem to indicate KDE-related services.

To settle things down a bit on the bugtrackers, this patch renames all offending kernel threads into something that goes better with GNOME-based systems.

Ich fand die Aktion klasse und es schien auf der LKML auch Anklang zu finden. :-)

cronjob