Anwendungen
Portal
Forum
Wiki
Ikhaya
Planet
Mehr
Anmelden

20. November 2014

History vom Terminal löschen

Permalink Linux gefällt mir




Die History bzw. der Verlauf ist im Terminal zu sehen, wenn nach dem Öffnen des Terminals die Pfeil-nach-oben-Taste ↑ gedrückt wird.

Du möchtest den kompletten Verlauf der Befehle löschen um einfach mal aufzuräumen oder weil du z.B. ausversehen dein Passwort leserlich eingegeben hast?

Kein Problem. Mit folgendem Befehl ist das schnell erledigt:
history -c

Wer nicht gleich seine komplette History löschen will, sondern nur einen Befehl oder ein im Klartext eingegebenes Passwort, geht wie folgt vor.

Dateimanager öffnen:






Dann alle versteckten Ordner anzeigen lassen, durch die Tastenkombination Strg + H

Nun ist auch folgende Datei zu sehen, in der jeder Befehl gespeichert wird der jemals im Terminal eingegeben wurde:



Doppelklick auf die Datei, dann öffnet sich ein Fenster mit allen gespeicherten Befehlen. Lösche einfach den von dir gewünschten Befehl und speichere die Datei. Öffnest du das nächste Mal das Terminal, wird der von dir gelöschte Befehl nicht mehr angezeigt. :-)


Hier mehr Infos: Bash und Erste Schritte in der Shell

-------
Update, 20.11.2014 19:20h Danke an denjenigen der Anonym, heute um 16:43h, eine noch einfachere Variante schrieb. Den ursprünglichen Blogeintrag habe ich gekürzt und angepasst. Ich liebe die Community. Danke.

Update, 21.11.2014 22:45h Verschiedene Kommentare schilderten das Problem dass das Wort welches mit sed -i '/beispiel/d' ~/.bash_history aus der History zwar gelöscht wird, aber es durch den Befehl trotzdem wieder als Wort in der History auftaucht. Darum habe ich mich entschlossen auch den zweiten Teil meines ursprünglichen Blogeintrags anzupassen.

Firefox verweist Google in die zweite Reihe

Permalink Pinguinzubehör

Man könnte meinen, Mozilla liest Pinguinzubehör. Nachdem wir gerade erst berichteten, dass zu viel finanzielle Abhängigkeit von einem einzigen Geschäftspartner langfristig die Interessen der unabhängigen Firefox-Entwicklung gefährden könnte, hat Mozilla das Ruder für seinen Firefox-Browser herumgerissen.

In den USA wird Yahoo zur Standardsuchmaschine in Firefox, in Russland und China die jeweils dort führenden Suchmaschinen Yandex und Baidu. Letztere ist dort bereits seit Längerem Standard. Google ist auf den US-Firefox-Versionen künftig also nur noch die Nummer 2, Google und Yahoo tauschen die Plätze.


Bisherige Reihenfolge bei Firefox (US-Version)

Die Ergebnistreffer bei Suchvorgängen werden sich damit substanziell ändern, denn die Treffer von Google und Bing, der Microsoft-Suche, auf deren Technik Yahoo aufsetzt, unterscheiden sich meist deutlich voneinander. Im Idealfall für Google werden eine Menge Nutzer der US-Version daher von sich aus wieder auf die Google-Suche umstellen. Dennoch wird durch den Yahoo-Deal auch ein Großteil eben zu dieser Suchmaschine geleitet. Damit dürfte Yahoo, dessen Hochzeiten schon lange her sind (wer etwa hatte zur Jahrhundertwende keine Yahoo-Mailadresse?), das mit dem Aufstieg Googles entsprechend Einfluss verlor und zumindest hierzulande kaum noch Bedeutung hatte, wieder etwas Boden gutmachen.

Das zeigt allerdings auch, dass Google auf Firefox offenbar tatsächlich nicht mehr angewiesen ist, wenn es sich von Yahoo hat überbieten lassen. Womöglich hat Firefox damit aber auch einfach nur in den sauren Apfel gebissen, sollte Google nicht mehr so viel angeboten haben wie in der Vergangenheit, so dass nun Yahoo auf Firefox’ Heimatmarkt an die erste Position aufrückt; Details zur Höhe der Einnahmen sind bislang nicht bekannt.

Google kann es im Grunde egal sein, ob es bei Firefox Standardsuchmaschine ist oder nicht, befindet es sich doch in der komfortablen Situation, das Vorrecht für die Standardsuche im Chrome-Browser zu besitzen – und hier keine konkurrierenden Suchmaschinen dulden zu müssen. Sofern die Nutzer nicht ohnehin schon über Google suchen. Firefox beweist unterdessen mit der Zurückstufung der Google-Suche zweierlei: dass es wirklich ein unabhängiger Browser ist – und dass Google gut daran getan hat, rechtzeitig einen eigenen Browser auf dem Markt zu etablieren.

Für Anwender des deutschsprachigen Firefox ändert sich übrigens nichts, hier bleibt es bei Google für die voreingestellte Suchmaschine; wer die Yahoo-Suche als Standard möchte, muss sich dies selbst einstellen. An den substanziellen Problemen für Firefox ändert eine Modifizierung der Standardsuchmaschinen allerdings noch herzlich wenig. Um den Rückgang der Verbreitung von Firefox zu stoppen, wird man sich noch einiges mehr einfallen lassen müssen, wenn irgendwann nicht nur noch Idealisten und Linux-Anwender Firefox nutzen sollen.

Let’s Encrypt: Neue CA von Mozilla, EFF, Cisco & Akamai bietet kostenlos TLS-Zertifikate ab 2015 an

Permalink Sören Hentzschel

Unter anderem Mozilla, die Electronic Frontier Foundation, Cisco und Akamai haben sich zusammengeschlossen, um Verschlüsselung im Web voranzutreiben. Gemeinsam will man ab 2015 kostenlose TLS-Zertifikate bereitstellen.

Sehr viele Webseiten übertragen ihre Daten über eine unverschlüsselte HTTP-Verbindung und nicht über eine verschlüsselte HTTPS-Verbindung.  Die zwei wichtigsten Gründe hierfür dürften eine oftmals komplizierte Einrichtung sein sowie die Tatsache, dass die notwendigen Zertifikate häufig Geld kosten. Mit StartSSL gibt es auch eine kommerzielle Firma, welche kostenlos TLS-Zertfikate bereitstellt.

Mozilla, die Electronic Frontier Foundation (EFF), Cisco, Akamai, IdenTrust und Forscher der University of Michigan haben sich nun zu einer neuen gemeinnützigen Organisation zusammengeschlossen, der Internet Security Research Group (SRG). Und mit Let’s Encrypt hat die SRG eine Certificate Authority (CA) gegründet, welche ab dem zweiten Quartal 2015 kostenlos TLS-Zertifikate ausstellen möchte.

Die Zertifikate von Let’s Encrypt sollen nicht nur kostenlos, sondern auch einfach einzurichten sein. Wie die EFF in ihrer Ankündigung schreibt, würde es einen Entwickler typischerweise ein bis drei Stunden kosten, zum ersten Mal ein Zertifikat einzurichten. Mit Let’s Encrypt soll dies in 20 bis 30 Sekunden erledigt sein. Zertifikate sollen automatisch erneuert werden können. Auch Transparenz wird groß geschrieben; so soll es ein öffentliches Register mit allen ausgestellten wie auch zurückgezogenen Zertifikaten geben.

Video auf YouTube ansehen

19. November 2014

Yahoo! neue Standard-Suchmaschine in Firefox (USA)

Permalink Sören Hentzschel

Mozilla hat heute bekannt gegeben, den in diesem Jahr auslaufenden Vertrag mit Google als weltweite Standard-Suchmaschine in Firefox nicht verlängert zu haben. In den USA wird Yahoo! die neue Standard-Suchmaschine für die nächsten fünf Jahre.

Vor wenigen Tagen hat Mozilla den zehnten Geburtstag seit Erscheinen von Firefox 1.0 gefeiert. Zehn Jahre mit Google als Standard-Suchmaschine in Firefox. Stand der Geburtstag bereits unter dem Motto Unabhängigkeit, so könnte man meinen, dass Mozilla mit der heutigen Ankündigung genau daran anknüpft, denn den in diesem Jahr auslaufenden Vertrag mit Google, Mozillas bislang größtem Geldgeber, aber auch Konkurrenten im Browsermarkt, als weltweite Standard-Suchmaschine in Firefox hat man nicht verlängert. Wohl aber lässt man dem Nutzer die Wahl und bietet Google weiterhin als zusätzliche Option an. Mit dem Update auf Firefox 33.1 vor wenigen Tagen hat Mozilla bereits DuckDuckGo als zusätzliche Suchoption mit besonderem Fokus auf Datenschutz veröffentlicht.

Eine weltweite Standard-Suchmaschine soll es in Firefox nicht mehr geben. Für die USA hat Mozilla einen Vertrag mit Yahoo! für die nächsten fünf Jahre abgeschlossen, in Russland wird Yandex die neue Standard-Suchmaschine, China hat schon länger eine Sonderrolle mit Baidu, dabei bleibt es auch in Zukunft.

Ist von Yahoo! die Rede, dann allerdings nicht von Yahoo!, wie wir es heute kennen, Yahoo! wird im Dezember für Firefox-Nutzer eine überarbeitete Version seiner Suchmaschine veröffentlichen, die es dann ab 2015 für alle Yahoo!-Nutzer geben wird. Außerdem wird Yahoo! im Rahmen dieser Vereinbarung den Do-not-Track-Header respektieren, den die Nutzer in ihren Firefox-Einstellungen aktivieren können, um den Wunsch auszudrücken, nicht verfolgt zu werden.

Wie Nicolas Nethercote von Mozilla erklärte, wäre auch eine Verlängerung des Vertrages mit Google möglich gewesen, Mozilla hat sich aber gegen die Option der Vertragsverlängerung entschieden.

Weitere Informationen
Yahoo!: Yahoo and Mozilla Partner to Bring Yahoo Search to Firefox
Mozilla: New Search Strategy for Firefox: Promoting Choice & Innovation | The Mozilla Blog
Andreas Gal: Yahoo and Mozilla Form Strategic Partnership

18. November 2014

Xonotic auf Ubuntu

Permalink Intux

Der auf der Darkplaces Engine basierte Ego-Shooter Xonotic ist ein Fork des in in der Linux-Community bekannten Games Nexuiz. Xonotic erinnert stark an den Klassiker Unreal Tounament. Spielmodi wie u.a. Deathmatch und Capture the Flag verlangen flinke Reaktionen, bei der die Grafik auch auf nicht aktuellen Systemen kaum ins Stocken geraten sollte. Xonotic ist sowohl Single- wie auch als Multiplayer fähig.

Installieren lässt sich das Ganze einfach via PlayDeb. Zum Anderen kann man sich aber das Plattform übergreifende Paket Xonotic 0.7.0 für Linux, Windows, und Mac hier downloaden.

Hier eine kleine Vorschau:

Quelle: http://xonotic.org

Games wie Xonotic oder UrT via PlayDeb 2

Permalink Intux

Wer auf der Suche nach interessanten Games für Ubuntu ist, kommt an PlayDeb.net kaum vorbei. Hier findet man eine für Ubuntu zusammengestellte Sammlung von tollen Spielen, die sich via Install-Button ganz einfach installieren lassen. Voraussetzung hierfür ist allerdings, dass Hinzufügen folgender Paketquelle

sudo add-apt-repository 'deb http://archive.getdeb.net/ubuntu utopic-getdeb games'

und des dazugehörigen Schlüssels.

wget -q -O- http://archive.getdeb.net/getdeb-archive.key | sudo apt-key add -

Ist dies erledigt, einfach zu PlayDeb.net wechseln und das Spiel der Wahl über “Install this now” installieren.

Einige Vertreter sind hierbei Xononic oder Urban Terror, welche sich problemlos wieder über das Software-Center deinstallieren lassen.

Viel Spaß!

Whatsapp mit Ende-zu-Ende-Verschlüsselung?

Permalink blog.mdosch.de - Dies & Das

Ich bin gerade per netzpolitik.org über diesen Beitrag gestolpert. Anscheinend soll open whispersystems Ende-zu-Ende-Verschlüsselung in WhatsApp integrieren.

Open whispersystems ist bereits durch ihren verschlüsselnden Messenger TextSecure und RedPhone für verschlüsselte Telefonate ein Begriff. Auch die Funktion per WhisperPush verschlüsselte SMS unter cyanogenmod zu versenden wurde von open whispersystems realisiert.

Wer hätte das gedacht? Ich bin zumindest erstaunt und beobachte mal wie es weitergeht.

Von Zwiebeln und Piraten

Permalink (Mer)Curius

Anonymes surfen ist das möglicherweise schwierigste Unterfangen, das man im Sinne des Datenschutzes anstreben kann. Standardmäßig erzählt unser Webbrowser eine ganze Menge von uns und zu viele Webseiten protokollieren zu viele Informationen. Vollständige Anonymität ist schwer zu erreichen und teilweise auch nicht möglich. Letzteres betrifft vor allem Seiten auf denen wir uns anmelden und teilweise personenbezogene Daten hinterlegen müssen. Ein Account in einem Webshop macht ja schließlich keinen Sinn ohne korrekte Adresse. Anonymität kann deshalb nur partiell erreicht werden.

Der folgende Artikel soll eine nicht auf Vollständigkeit beharrende Übersicht über mögliche Anonymisierungswege im Internet, sowie deren Sicherheit, Probleme und Risiken, darstellen.

Gespaltene Persönlichkeit

Der Einheitsbrowser, mit dem man alle Seiten über eine ausufernde Favoritenliste verwaltet, hat ausgedient. Zu Beginn des Anonymisierungsprozesses muss man analysieren, welche Seiten personenbezogene Daten gespeichert haben und eine eindeutige Identifizierung ermöglichen. In diesem Fall nützt es auch nichts, wenn der Browser der Webseite mitteilt, dass man von den Bahamas kommt. Wie viele Seiten das sind und welche genau liegt beim Benutzer.

Diese Seiten ruft man weiterhin mit einem normalen Webbrowser auf. Am Beispiel von Firefox hatte ich mal gezeigt, welche Addons sinnvoll sein können um aufdringliche Werbeanbieter auf Distanz zu halten.

Theoretisch ließen sich mit Firefox auch Profile verwalten, die einen Wechsel vom öffentlichen in den anonymen Modus erlauben würden. Faktisch provoziert dies jedoch Datenspuren, da man “mal” vergisst umzuschalten. Jemand der sich im Tor Netzwerk bei einem Webshop mit Name und Adresse anmeldet ist in der betroffenen Session einfach nicht mehr anonym. Deshalb ist ist eine Trennung in unterschiedliche Browser sinnvoll.

Das Zwiebelnetzwerk

TOR (The Onion Router) ist eines der bekanntesten und größten Netzwerke zur Anonymisierung im Internet. Die Funktionsweise des Netzwerkes ist relativ simpel. Der Nutzer installiert auf seinem PC einen Client (i.d.R. das Tor Browser Bundle) mit dem er sich mit dem Netzwerk verbindet. Beim Start lädt dieser Client eine Liste aller verfügbaren Tor–Server herunter. Auf Basis dieser Liste wählt der Client eine Route über verschiedene (mindestens jedoch drei) Tor-Server. Jeder Server kennt dabei nur seinen Vorgänger und Nachfolger und die Daten werden verschlüsselt übertragen. Auf diesem Grund können gerade die “Tor-Nodes” genannten Zwischenstellen nichts über den Benutzer wissen. Der letzte Server (Exit-Node) im Glied kennt zwar die aufgerufene Adresse, aber nicht den Nutzer. Der erste Server kennt den Benutzer aber nicht das Ziel.

Tor Arbeitsweise - Grafik von Wikipedia

Tor Arbeitsweise – Grafik von Wikipedia ( http://de.wikipedia.org/wiki/Tor_(Netzwerk) )

Besonders sensibel sind deshalb der Eintritts- und Austrittsknoten. Tor kann deshalb keine Anonymität garantieren, wenn beide von einem Angreifer kontrolliert werden. Tor versucht das mit einer Vorauswahl der Eintirttspunkte zu verhindern, aber vollständigen Schutz kann auch das Tor Netzwerk nicht garantieren. Mit einem umfangreichen Aufwand und möglicherweise Zugriff auf die wichtigen Internet-Knoten lässt sich jeder Tor-Nutzer deanonymisieren.

Abseits dieses für den Privatanwender eher überschaubaren Risikos – es geht uns ja vor allem um die Anonymisierung gegenüber Werbetreibenden oder sonstiges “Datenstaubsaugern” – hat das Tor-Netzwerk einige gewichtige Nachteile. Erstens ist das Netzwerk, unabhängig von der eigenen Internetverbindung, verhältnismäßig langsam. Surfen auf grafik- oder videolastigen Seiten macht mit Tor keinen wirklichen Spaß. Zweitens ist das Tor Browser Bundle ein portables Paket, das an der Paketverwaltung vorbei auf das System gebracht wird. Für den verwöhnten Linuxnutzer ein ungewohnter Wartungsaufwand.

VPN Dienste

Eine zweite Möglichkeit der Anonymisierung bieten viele VPN (Virtual Private Network) Dienste. Konkrete Anbietervorschläge werde ich hier nicht machen. Bei diesen wählt sich der Anwender mit seiner eindeutigen IP über einen proprietären Client oder ein offenes Protokoll (hängt vom Anbieter ab) in das Netzwerk ein. Man wird dann über einen Server des Netzwerkes geleitet, weshalb man für die aufgerufenen Webseiten nicht eindeutig identifizierbar ist. Der Nutzer ist in sofern anonym, als das er seine öffentlich sichtbare IP-Adressse mit allen anderen Nutzern des Netzwerks bzw. des Anonymisierungsservers teilt.

Im Gegensatz zum Tor Netzwerk basieren jedoch alle derartigen VPN-Dienste auf der Zusicherung des Anbieters, den Anwender nicht zu verfolgen und keine Daten aufzuzeichnen. Es ist somit gewissermaßen eine Vertrauensfrage. Zudem besteht das Problem, dass sich der nicht hinreichend vorsichtige Nutzer durch sein Surfverhalten enttarnen kann bzw. es noch andere Tracking-Methoden, als die IP-Adresse gibt. Tor begegnet diesem Problem mit seinem speziellen Browser-Bundle. Der Vorteil der VPN-Dienste liegt hingegen in ihrer deutlich höheren Surfgeschwindigkeit (je nach Anbieter).

John Doe

Eine Dritte Methode bietet JonDo, ein kostenpflichtiger Dienst der aus Deutschland stammt. Da ich keine persönlichen Erfahrungen hiermit habe möchte ich auf diesen lediglich der Vollständigkeit halber verweisen. Weitere Informationen finden sich (wie immer) bei Wikipedia und über die offizielle Webseite.

Besonders interessant an JonDo ist jedoch die angepasste Version von Firefox, die dort vertrieben wird. Dieser wird auf der Homepage nicht offensiv beworben, findet sich aber in den Paketquellen für Debian/Ubuntu. Diese lassen sich einfach hinzufügen:

$ sudo nano /etc/apt/sources.list.d/jondo.list # Ist eine leere Datei, die wir nun neu anlegen

Dort fügt man ein:

deb https://debian.anonymous-proxy-servers.net DISTRI main

DISTRI ist logischerweise durch die eingesetzte Distribution zu ersetzen. Im Fall von *ubuntu 14.04 LTS wäre dies z.B. trusty.

Als nächstes muss noch die Signatur verifiziert werden:

$ sudo apt-key adv –keyserver pool.sks-keyservers.net –recv-keys 0xF5100840F1305880

Und schlussendlich der Browser installiert werden:

$ sudo apt-get update

$ sudo apt-get install –no-install-recommends jondobrowser-de

Dieser Browser ist derart vorkonfiguriert, dass er die maximale Absicherung bietet, die man ohne dezidierten Anonymisierungsdienst erreichen kann. Das ist kein Hexenwerk, erspart einem aber eine aufwändige Konfiguration der eigenen Firefox-Installation. Zudem kann er auch dazu bewegt werden über das Tor-Netzwerk zu arbeiten. Hierzu muss aber noch Tor auf dem System installiert werden, was jedoch nicht alle Distributionen in den Paketquellen haben.


Artikelbildquelle: Zwiebel von Andreas Hamm unter CC 2.0 auf Flickr

Traffic…

Permalink KopfKrieg

Auch wenn die Debatte rund um „Drosselkom“ und Netzneutralität wohl mittlerweile kaum noch fortgeführt wird, trotzdem von meiner Seite ein paar Gedanken und Fakten dazu. Denn wie der Zufall so will bin ich über das Tool vnStat gestolpert und habe den Datenverkehr (bzw. das Volumen) für den Monat Oktober sowie um eines Experiments Willen noch die ersten zwei Wochen des Novembers mitprotokolliert. Die Ergebnisse waren – wie sollte es auch sonst sein – anders als erwartet.

Der Server

Der Server hat zwar unlimitierten Traffic, trotzdem interessiert es natürlich wie viele Bits und Bytes täglich über die Netzwerkschnittstelle laufen. Und auch wenn neben KopfKrieg noch andere Domains auf diesem Server hausen, so macht der Hauptanteil doch dieser Blog aus. Der vorherige Artikel ist bereits Ende September veröffentlicht worden und ich hatte – naiv wie ich bin – natürlich damit gerechnet, dass der Traffic in irgendeiner Relation zur Aktualität des Artikels steht. Und entweder habe ich den Zeitraum zu klein gewählt oder aber meine These ist falsch, denn: Der Datenverkehr blieb über die letzten 6 Wochen bis auf kleinere Schwankungen konstant, ein Muster lässt sich nicht erkennen. Und auch die täglichen Updates des Servers fallen kaum ins Gewicht. Kurzzeitig dachte ich an all den Traffic welcher von Botnetzen auf den SSH-Port fällt doch auch dieser ist so gut wie nicht vorhanden. Anders gesagt: Gute 600MB Traffic gehen pro Tag alleine für diesen Blog über die Leitung und das trotz des noch sehr jungen Projekts. Da kann man schon fast ein bisschen stolz werden, meine alte Website mit wesentlich mehr Inhalt (wobei diese auch entsprechend mehr Zeit hatte zu wachsen) hatte nicht annähernd so viele Besucher angelockt geschweige denn so viel Traffic erzeugt.

Und zu Hause?

Nun aber zum wichtigen Teil. Ich besitze ein Smartphone, ein Tablet, einen Arbeitsrechner sowie einen reinen Spielerechner. Das Smartphone hatte relativ genau 6GB Datenverkehr, das Tablet lächerliche 230MB welche komplett für Updates des Betriebssystems und die installieren Applikationen verwendet wuden. Mein Arbeitsrechner hatte insgesamt 35GiB (~37,5GB) Datenverkehr, beim Spielerechner kann ich nur schätzen (wobei ich hier mindestens ~10GB für Updates rechnen kann, für andere Dinge braucht das Teil aber auch keine Internetverbindung).

Alles in allem also gute 53GB Datenverkehr. Für eine einzelne Person. Für mich. Und das, obwohl ich mir so gut wie keine Videos auf YouTube ansehe, keine Musik streame, kein Radio höre, keinen Fernseher habe geschweige denn eine sinnvolle Verwendung für diesen finden könnte. 53GB. Das ist eine enorme Datenmenge und ich kann ehrlich nicht sagen, wofür ich das alles gebraucht habe. Eine Familie wird also, gehen wir von zwei Kindern aus, selbst mit 200GB Traffic nicht annähernd auskommen.

Dabei eingerechnet ist natürlich noch nicht, dass die Tochter sich Styling-Tipps über YouTube holt und der pubertierende Junge gewissen Dingen auf diversen Portalen freien lauf lässt während der Vater eine Serie auf den heimischen Fernseher streamt und die Mutter Kochrezepte online ansieht (damit wären dann wohl alle Klischees bedient).

Um also auf den Punkt zu kommen: Ja, ich will Glasfaser und ja, alles unter einem halben Terabyte Traffic ist indiskutabel (ein klein wenig Sicherheit sollte man ja doch miteinrechnen). Das aber wohlgemerkt für den aktuellen Stand. Spiele werden größer (es gibt mittlerweile Spiele welche nicht mehr auf eine Blu-Ray passen), Streaming wird noch mehr Traffic verbrauchen (man denke an Filme in 4K-Auflösung) und auch sonst gibt es keinen vernünftigen Grund, warum der Datenverkehr auf magische Weise abnehmen anstellen von zunehmen sollte.

17. November 2014

Mozilla verschiebt Firefox 34

Permalink Sören Hentzschel

Firefox 33 war die Versionsreihe von Firefox mit den meisten Updates seit Einführung des Rapid Release Modells und nächste Woche sollte bereits Firefox 34 erscheinen. Mozilla hat nun die Verschiebung von Firefox 34 bekannt gegeben.

Normalerweise erscheint alle sechs Wochen eine neue Firefox-Version. In den letzten Wochen gab es ein paar Updates mehr: ein zusätzliches geplantes Update mit neuen Funktionen zum zehnten Geburtstag von Firefox sowie vier außerplanmäßige Updates um auf fehlerhafte Grafikkartentreiber zu reagieren. Mit Firefox 33 hatte Mozilla Off Main Thread Compositing für Windows-Nutzer standardmäßig aktiviert, was auf einigen Systemen zu Probleme führte.

Den für den 25. November geplanten Release von Firefox 34 verschiebt Mozilla nun um eine Woche auf den 2. Dezember, um mehr Zeit zur Stabilisierung von Firefox 34 zu haben. Firefox für Android sowie Firefox ESR sind von der Verschiebung ebenfalls betroffen. Für die Desktop-Version bedeutet dies zwei zusätzliche Betaversionen, für Android gibt es eine Beta mehr.

Keinen weiteren Einfluss hat dies auf die Veröffentlichung von Firefox 35, welcher bereits aufgrund der Weihnachtsfeiertage um eine Woche verschoben werden sollte. Statt einer zusätzlichen Beta-Woche für Firefox 35 erhält Firefox 35 damit eine zusätzliche Aurora-Woche und es bleibt auch für Firefox 35 und darüber hinaus bei insgesamt einer Woche Verschiebung.

16. November 2014

Wochenrückblick 46/2014

Permalink deesaster.org

Der Wochenrückblick lässt das Geschehen der vergangenen Woche rund um Ubuntu, Linux und Open Source Revue passieren.

Rund um Ubuntu

Ubuntu MATE 14.04 Longterm Release veröffentlicht

Etwas später als Ubuntu und seine offiziellen Derivate wurde Ubuntu MATE in Version 14.04 veröffentlicht. Die Besonderheit ist, dass es nach Ubuntu MATE 14.10 erschienen ist und, obwohl es eine kleinere Versionsnummer trägt, nach Aussagen der Entwickler mehr Features enthält und eher ein Nachfolger von 14.10 ist. Ubuntu MATE 14.04 stützt sich dabei auf Ubuntu 14.04 LTS ab, sodass das Basissystem fünf Jahre Unterstützung von Canonical erhält. Die MATE-Paketquellen sollen von den MATE-Entwicklern ebenfalls fünf Jahre gepflegt werden.

Quelle: OMG!Ubuntu!

Neues rund um Linux

Microsoft öffnet .NET

Microsoft öffnet seine .NET-Entwicklungsplattform und veröffentlichte den .NET-Kern auf GitHub unter der MIT-Lizenz. Man will dabei eng mit Miguel de Icaza, dem Entwickler des Mono-Projekts, zusammenarbeiten, um ggf. eine gemeinsame Codebasis teilen zu können. Den Schritt hat Microsoft laut eigener Aussagen gemacht, ob sich mehr zu den Framework-Benutzern hin zu bewegen.

Quellen: heise open, Golem, Linux-Magazin, Pro-Linux

GNOME verteidigt Marke gegen Groupon

Das Rabatt-Unternehmen Groupon wollte mehrere Produkte mit dem Namen „Gnome“ veröffentlichen und markenrechtlich schützen lassen. Die GNOME Foundation zeigte sich überrascht und bat die Open-Source-Community um Unterstützung, um sich rechtlich bei der Namenswahl gegen Groupon durchzusetzen. Heraus kamen über 100.000 US-Dollar an Spendengeldern. Zusätzlich zog Groupon die Anmeldung zurück und will einen anderen Namen für sein Produkt finden.

Quellen: Linux-Magazin, Golem, heise open

Emacs zieht zu Git um

Bisher setzte das Emacs-Projekt als Versionsverwaltungssystem Bazaar ein. Da das System aber laut Eric S. Raymond kaum noch Neuerungen erfährt und zu sehr von Canonical getrieben wird, wechselte man im Laufe des Jahres zu Git, was diese Woche mit der Bereitstellung des neuen Repositories beendet wurde.

Quellen: Pro-Linux, heise open, Linux-Magazin

Copyleft.org erklärt das Copyleft

Die Software Freedom Conservancy und die Free Software Foundation haben gemeinsam eine neue Webseite namens copyleft.org ins Leben gerufen, die Lizenzinformationen und Hintergründe zu Copyleft-Lizenzen erklären soll. Angefangen hat man mit einer Analyse der GPL.

Quellen: heise open, Pro-Linux

buch7.de verlost Preis für Open-Source-Projekte

Der Online-Buchhandel buch7.de, der 75% seiner Gewinne an soziale, kulturelle und ökologische Projekte abgibt, will auch die Open-Source-Community fördern. Insgesamt 3000 Euro Preisgeld gibt es für Projekte, die Open-Source-Software mit einem breiten Nutzen für die Gemeinschaft veröffentlichen und denen das Preisgeld auch etwas bringt. Bewerbungen werden bis zum 31.12.2014 entgegen genommen.

Quellen: Pro-Linux, heise open

Die Helden Freier Software sollen prämiert werden

Die Free Software Foundation hat erneut zu Nominierungen zum Free Software Award aufgerufen. Nur noch bis zum 16.11.2014 (also heute) kann jeder ein Open-Source-Projekt oder eine Person nominieren, die entweder Freie Software voranbringt oder die Freie-Software-Bewegung unterstützt.

Spielen unter Linux

Hardware und Mobiles

Neues Raspberry Pi Modell A+ vorgestellt

Der Kleinstrechner Raspberry Pi erhält ein Update in Form von Modell A+. Wie Modell A besitzt das Update einen Broadcom-ARM11-Prozessor mit 256 MB RAM und Dual Core VideoCore IV Multimedia Co-Processor. Die GPIO-Pinleiste wurde von 26 Anschlüssen auf 40 erweitert. Daneben wurde das Gerät durch ein neues Platinenlayout kleiner und ressourcenschonender. Der Raspberry Pi Modell A+ ist bereits für 20 Euro erhältlich.

Quellen: Pro-Linux, heise open, Golem, Linux-Magazin

Firefox 33.1.1 behebt möglichen Absturz bei Programmstart

Permalink Sören Hentzschel

Mozilla hat vor dem Wochenende ein weiteres außerplanmäßiges Update für Firefox 33 veröffentlicht. Dieses behebt eine mögliche Absturzursache bei Programmstart.

Mozilla hat das vierte außerplanmäßige Update für Firefox 33 veröffentlicht. Wie bereits die ersten drei steht auch dieses Update wieder in Zusamenhang mit dem in Firefox 33 eingeführten Off Main Thread Compositing (OMTC) und fehlerhaften Grafikkartentreibern. Konkret behebt Mozilla mit Firefox 33.1.1 eine durch eine fehlerhafte Treiberblockierung ausgelöste mögliche Absturzursache bei Programmstart.

15. November 2014

Acer C720: Debian Kernel 3.17.3

Permalink blog.mdosch.de - Dies & Das

Der aktuelle Kernel für das C720 steht zum Download.

md5sum linux-image-3.17.3-c720_20141114_amd64.deb 
99b056c21825f0e03c7e550649391ef8  linux-image-3.17.3-c720_20141114_amd64.deb

sha1sum linux-image-3.17.3-c720_20141114_amd64.deb 
be8e9a4a0a7647eebe5816c5200575c065839431  linux-image-3.17.3-c720_20141114_amd64.deb

14. November 2014

Microsoft öffnet .NET

Permalink deesaster.org

heise tituliert, dass die Hölle zufriert, weil Microsoft ihre Entwicklungsplattform .NET als Open Source veröffentlichten will. Natürlich ist das alles gar nicht so schlimm, wenn man den heise-Artikel als Ganzes liest. Die Fakten lesen sich dabei ganz angenehm.

Microsoft hat den .NET-Kern auf GitHub unter der MIT-Lizenz veröffentlicht. Dabei sind laut Veröffentlichung noch nicht alle Libraries auf GitHub enthalten. Zusätzlich arbeitet man mit Miguel de Icaza vom Mono-Projekt zusammen, der in der Vergangenheit mit Mono dafür sorgte, dass C#-Code unter Linux kompiliert werden konnte (zu einem Teil zumindest). Jetzt könnten Mono und .NET die gleiche Codebasis teilen.

Der Schritt von Microsoft ist natürlich konträr zu einigen Aussagen der Microsoft-Chefs aus der Vergangenheit. Aber auch bei Microsoft hat man erkannt, dass man mit Closed Source nur noch wenig verdienen kann. Auf dem Desktop dominiert Microsoft mit Windows immer noch, aber im Mobilbereich sind sie weit abgeschlagen. Die Öffnung von .NET könnte einige Entwickler wieder zur Microsoft-Plattform locken.

Wie auch immer man zu Microsoft steht: Die Veröffentlichung von .NET Core als Open Source ist ein guter Schritt für alle Anwender!

Links:

Siemens veröffentlicht EMB² als Open Source

Permalink deesaster.org

Großen Firmen legen ja sehr viel Wert auf ihren Know-How-Schutz (auch Intellectual Property genannt) und verteidigen diese durch Patentstreitigkeiten und Closed-Source-Software. Umso schöner ist, dass Siemens ihre Eigenentwicklung Embedded Multicore Building Blocks (kurz EMB²) als Open Source bei GitHub veröffentlicht hat.

Es handelt sich dabei um eine C/C++-Bibliothek, der die Parallelisierung von Tasks auf Embedded-Echtzeit-Systemen unterstützen soll. Und gerade bei Embedded Systemen spielt Linux eine große Rolle, sodass ich denke, dass die Software hier einen echten Nutzen haben kann. Veröffentlicht wird das Ganze unter einer BSD-Lizenz, sodass man den Code auch verändern und erweitern darf.

Genau das hofft Siemens mit der Offenlegung zu erreichen. Aber selbst wenn es nicht gelingt, ist es dennoch ein schöner Schritt, wie ich finde.

via heise

Kurztipp: Microsoft-Schriftarten unter Enterprise Linux installieren

Permalink /var/pub/chris_blog

Download PDF

Manche Anwendungen erfordern tatsächlich noch Microsoft-Schriftarten unter Linux. Lizenztechnisch ist das nicht unproblematisch. Zwar stellt Microsoft die Schriftarten kostenlos zur Verfügung, eine Weiterverbreitung ist aber aufgrund der Lizenz untersagt. Debian-basierende Distributionen liefern hierfür ein Paket msttcorefonts-installer, welches während der Paketinstallation die Schriftarten herunterlädt und entpackt.

Das erfordert jedoch einen Zugang zum Internet, was insbesondere in Rechenzentren nicht für alle Server gegeben ist. Abhilfe schafft das manuelle Erstellen eines RPM-Pakets, das die Schriftarten enthält. Auf Sourceforge gibt es hierfür ein Specfile – auf einem System mit Internetzugang lässt sich so komfortabel ein entsprechendes Paket erstellen:

# yum install rpm-build rpmdevtools
# wget http://corefonts.sourceforge.net/msttcorefonts-2.5-1.spec
# rpmbuild -bb msttcorefonts-2.5-1.spec

Anschließend befindet sich unterhalb rpmbuild/RPMS/noarch ein RPM-Paket, welches auf weitere Systeme verteilt werden kann.

Download PDF

[Arch]: top auf alte Default-Einstellung zurücksetzen

Permalink Produnis

Seit dem letzten Arch-Update sieht die top-Ausgabe nicht mehr wie gewohnt aus.
scaled_full_099441bc0fee28ef73e1
Um den Status quo wieder herzustellen geht man wie folgt vor:

  • lösche (falls vorhanden) die Datei ~/.toprc
  • starte “top
  • drücke z (kleines z!)
  • drücke V (großes V!)
  • drücke 1 (die Zahl Eins)
  • drücke y
  • drücke m m
  • drücke t t t
  • drücke W (großes W! …dies schreibt eine neue Config-Datei ~/.toprc).

Danke an procps-ng-sucks

Weblinks

share this

13. November 2014

Mozilla veröffentlicht Firefox Interest Dashboard zur Visualierung der Nutzer-Interessen

Permalink Sören Hentzschel

Mozilla hat das Firefox Interest Dashboard als Add-on für Firefox veröffentlicht. Dieses visualisiert die Nutzer-Interessen basierend auf der Chronik des Anwenders.

Erstmals im August vorgestellt, hat Mozilla eine erste Version des Firefox Interest Dashboards nun als Add-on für Firefox veröffentlicht. Dieses analyisiert die Chronik der letzten 30 Tage des Benutzers und kategorisiert die besuchten Seiten, woraus sich Interessen des Benutzers wie Technologie oder Sport ergeben. Mozilla spricht selbst noch von einer frühen Version und bittet um Feedback für das experimentelle Beta Add-on.

Per Klick auf eine der Kategorien werden alle Webseiten-Zugriffe inklusive Zeitpunkt des Besuches chronologisch aufgelistet. Außerdem können Einträge markiert werden, um Feedback per E-Mail an Mozilla zu mailen, sofern eine Webseite falsch eingeordnet wurde.

Die Analyse geschieht vollständig im Browser des Benutzers, es werden keine Daten an die Server von Mozilla oder einen der Partner von Mozilla gesendet. Wenn Sync mit aktivierter Chronik- und Add-on-Synchronisierung aktiviert ist, dann werden auch die Dashboard-Daten geräteübergreifend synchronisiert. Die Analyse funktioniert derzeit nur für englischsprachigen Content, die Unterstützung für weitere Sprachen soll folgen.

CEWE Fotobuch Programmstarter

Permalink Intux

Symb_Obj_FbStart_mitAssi_01

Ich erstelle meine Fotobücher gern mit der Software von CEWE Fotobuch. Auf meinem neuen System UbuntuGNOME fehlte nach der Installation der Software noch der entsprechende Programmstarter. Mit der Version 14.04 LTS war es mir nicht möglich diesen in Alacarte zu erstellen. Diesen erstellt man jedoch wie folgt manuell:

gksu gedit /usr/share/applications/dm.desktop

Dann ist der folgende Inhalt einzufügen und an den Installationspfad anzupassen.

[Desktop Entry]
Name=CEWE Fotobuch
Terminal=false
X-MultipleArgs=false
Type=Application
Comment=Ein Fotobuch erstellen
Exec="/home/intux/CEWE COLOR/Mein CEWE FOTOBUCH/dm-Fotowelt"
Categories=Graphics;
Icon=/home/intux/CEWE COLOR/Mein CEWE FOTOBUCH/Resources/guiwidgets/icons/Symb_Obj_FbStart_mitAssi_01.png

Nun wird das Ganze gespeichert und der Starter erscheint im Hauptmenü.

news-400

DynDNS mit IPFire, PowerDNS und Poweradmin

Permalink Finns Blog

PowerDNS ist ein autoritativer Nameserver, mit dem man seine DNS Zonen verwalten kann. Da dieser Nameserver seine Zonen auch in Datenbanken wie z.B. PostgreSQL verwalten kann, entsteht zusammen mit Poweradmin eine praktische und mächtige Kombination, mit der man auch seinen eigenen DynDNS Server bauen kann.

Die einzige Voraussetzung ist eine bereits vorhandene Zone bzw. Domain, in meinem Falle ist das

finnchristiansen.de
, die momentan noch bei den Strato DNS Servern gehostet wird. Dort habe ich eine Subdomain angelegt, also z.B.
dyndns.finnchristiansen.de
. Falls man bereits eine Zone mit PowerDNS verwaltet, kann man sich diesen Schritt sparen.

Oft wird ein gewöhnlicher Hostname, für IPv4 also ein A Record, fälschlicherweise als Subdomain bezeichnet. Den Unterschied sieht man deutlich an diesem Beispiel:

dig-Antwort für Hostname www in Domain finnchristiansen.de: also www.finnchristiansen.de

dig www.finnchristiansen.de

; <<>> DiG 9.9.4-P2-RedHat-9.9.4-15.P2.fc20 <<>> www.finnchristiansen.de
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 60264
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.finnchristiansen.de.	IN	A

;; ANSWER SECTION:
www.finnchristiansen.de. 758	IN	A	109.230.236.19

;; Query time: 3 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Do Nov 13 20:41:44 CET 2014
;; MSG SIZE  rcvd: 68

Die Antwort besteht aus einem A Record mit der IP Adresse 109.230.236.19.

dig-Antwort für Subdomain dyndns in Domain finnchristiansen.de: also dyndns.finnchristiansen.de

dig dyndns.finnchristiansen.de

; <<>> DiG 9.9.4-P2-RedHat-9.9.4-15.P2.fc20 <<>> dyndns.finnchristiansen.de
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 60984
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;dyndns.finnchristiansen.de.	IN	A

;; AUTHORITY SECTION:
dyndns.finnchristiansen.de. 3600 IN	SOA	services.finnchristiansen.de. hostmaster.finnchristiansen.de. 2014110703 28800 7200 604800 86400

;; Query time: 32 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Do Nov 13 20:36:21 CET 2014
;; MSG SIZE  rcvd: 100

Als Antwort erhält man keinen A Record mit einer IP Adresse, sondern eine SOA Record, der darauf hinweist, dass der Nameserver services.finnchristiansen.de für diese Zone zuständig ist.

Nun muss man noch die Zone, z.B. 

dyndns.finnchristiansen.de
, in PowerDNS angelegen, einen A Record hinzufügen und die Zone einem User zuweisen.

poweradmin

Dann kann man das Script dynamic_update.php mit den Login-, Hostnamen und IP Parametern aufrufen. Mit curl sieht das z.B. so aus:

MYIP=$(curl -k https://tools.finnchristiansen.de/getip.php)
curl -k -u "username:password" "https://powerdns.finnchristiansen.de/dynamic_update.php?hostname=finn.dyndns.finnchristiansen.de&myip=$MYIP"

Fügt man diese Zeilen an das Ende der Datei 

/etc/ppp/ip-up
ein, hat man quasi einen DynDNS Updater in IPFire implementiert. Da diese Datei aber eventuell bei einem IPFire Update überschrieben wird, bin ich auf der Suche nach einer besseren Methode gewesen und habe mir mal angesehen, wie die großen bzw. bekannten DynDNS-Anbieter in IPFire konfiguriert werden. Die Anbieter werden in der Datei 
/usr/lib/python2.7/site-packages/ddns/providers.py
verwaltet, diese ich um folgendes ergänzt habe:
class DDNSProviderPowerDNS(DDNSProtocolDynDNS2, DDNSProvider):
        handle    = "powerdns.finnchristiansen.de"
        name      = "powerDNS"
        website   = "https://www.powerdns.finnchristiansen.de"
        protocols = ("ipv4",)

        url = "https://powerdns.finnchristiansen.de/dynamic_update.php"

        def _prepare_request_data(self):
                data = {
                        "hostname" : self.hostname,
                        "myip"     : self.get_address("ipv4")
                }

                return data

Das Resultat sieht gut aus, ich kann meinen DynDNS Hostnamen jetzt per IPFire Weboberfläche verwalten:

ipfire-dyndns

Leider hat diese Datei auch den Nachteil, dass sie bei Updates eventuell überschrieben wird. Man müsste die URL zu der Poweradmin Installation in IPFire konfigurieren können, damit die Funktion standardmäßig in IPFire implementierbar ist, aber auch das sollte kein großes Problem sein.

Tipp: awk benutzen (Anwendungsbeispiel)

Permalink coa.cx

Ein Kumpel arbeitet berufsbedingt auch viel mit Linux Umgebungen und kam heute mit einer Frage auf mich zu. Ausgangspunkt ist eine Datei in der Firmware (basierend auf CentOS) die Rückschluss auf die Hardware Version ziehen lässt.
Diese sieht so aus:

/etc/version
 9.280003

Das entspricht dann der Hardware Version w9280.

Mein Kumpel will die Abfrage irgendwo einbauen um das die Version automatisiert ausgelesen werden kann. Er schickte mir dazu seinen Ansatz, die Aufgabe mit Bordmitteln zu lösen:

sed 's/ /w/'  /etc/version | cut -c 1-6 | tr -d '.'

Das funktioniert, es kommt das richtige Ergebnis raus. Seine Frage ist nun:
Wie kriege ich hier den `sed` so hin, dass ich die anderen Sachen hinten nicht brauche?

Mit `awk`

Ich bin ein Freund von awk. Man erspart sich damit unnötige Pipes und verschiedene Tools, `awk` hat einiges drauf.

Ich habe ihm dann Folgendes geschrieben:

awk -F\. '{gsub(/ /, ""); print "w" $1 substr($2,1,3);}' /etc/version

Das ist etwas länger. Vorteil jedoch: Es wird nur ein Mal die Ressource von einem Tool benötigt und es ist einfach sauber.
Erklärung
-F\.
Hiermit wird der Punkt als Trennzeichen definiert. Der Backslash ist in aktuellen Bash Versionen nicht notwenig, manche Shells benötigen ihn jedoch als Escape-Sequenz.

gsub(/ /, "");
gsub dient hier zum Ersetzen aller Leerzeichen / / durch keinen Inhalt "". Möchte man zum Beispiel alle Leerzeichen durch ein H ersetzen, würde es so Aussehen: gsub(/ /, "H");

print
print gibt an, was alles ausgegeben wird.

"w"
Ein Buchstabe in reiner Textform

$1
Hier wird die 1. Position des Trenners ausgegeben. 9.280003. Der Punkt ist der Trenner. $1 entspricht der 9, $2 280003

substr($2,1,3);
Substring. An diesem kurzen awk Ausflug der wohl interessanteste Teil. Man bekommt damit einen Teil einer Zeile ausgegeben, bei der man den Start und das Ende festlegt.
substr(String,Start,Länge): String ist hier die Position des Strings im Bezug auf den Trenner. Also $2, was 280003 entspricht. Der Startpunkt ist das erste Zeichen, das enstpricht der Ziffer 2. Die Gesamtlänge inklusive des Zeichens, bei dem gestartet wird soll drei Zeichen lang sein. Das ergibt die Ziffernfolge 280. Würde man stattdessen substr($2,2,2) benutzen, wäre der Start an zweiter Position vom zweiten Segment aus den durch den Trenner geteilten String der zwei Zeichen lang sein soll. Das ergibt die Ausgabe 80 vom gesamt.

awk ist nicht wirklich schwer und eine umfangreiche, leider oft unterschätzte, Sprache. Ich hoffe das mit diesem kleinen Beispiel einiges klar wird. Es ist einfach mit awk 3 Zeichen aus einer beliebigen Kette zu extrahieren und auszugeben. Das ersetzen von Zeichen, wie in diesem Fall Leerzeichen, ist genau so einfach wie mit sed.
Wenn man ein Mal ein Skript schreiben muss was Tausende von Zeilen auslesen und eine bearbeitete Ausgabe schreiben soll, dann ist man mit awk immer besser bedient, als mehrere verschiedene Anwendungen wild mit Pipes zu kombinieren.


Update:

Björn zeigt, wie es mit sed funktioniert:

sed -r 's/ *(.*)\.(.{3}).*$/w\1\2/' /etc/version

Vielen Dank an der Stelle für den Hinweis!

Ich steige zwar noch nicht durch, aber die Möglichkeit darf möchte ich niemanden vorenthalten.

WordPress: Datenschutz-Plugins für deinen Kommentarbereich

Permalink thomas-leister.de

Im Sommer diesen Jahres habe ich begonnen, mir Gedanken um den WordPress-eigenen Kommentarbereich zu machen im Bezug auf den Datenschutz. Standardmäßig wird beispielsweise die IP-Adresse des Kommentierenden in der WordPress-Datenbank gespeichert. So kann bei Rechtsverletzungen zurückverfolgt werden, wer genau der Autor ist. Bei gut moderierten Blogs ist das aber nicht unbedingt notwendig. Zum einen hat man die Option, Kommentare erst nach einer Durchsicht freizuschalten … oder man kontrolliert jeden Kommentar zeitnah, nachdem er geschrieben wurde und nimmt ihn ggf. heraus.

Eine zweite Standardeinstellung hat mir ebenfalls nicht gefallen: Die Gravatare. Dabei handelt es sich um zentrale Profilbilder, die bei dem kostenlosen WordPress-Dienst „Gravatar” hinterlegt werden. Die Bilder sind mit einer oder mehreren Mailadressen verknüpft. Wenn ein Besucher eine dieser E-Mail Adressen bei einem Blogkommentar angibt, kann das zugeordnete Profilbild von den Gravatar-Servern geholt werden und wird neben dem Kommentar angezeigt. Das ist sehr praktisch – keine Frage. Dennoch ist mir nicht ganz gut bei dem Gedanken, dass geschätzt 90% der Blogs diese Funktion ohne weiteres aktiviert haben. Der Grund ist folgender:

Jeder Besucher des Blogs lädt automatisch die Gravatare von den Gravatar-Servern. Ganz egal ob er einen Kommentar hinterlassen hat oder nicht. Sobald ein Benutzer Daten von einem Gravatar-Server lädt, kann Gravatar einige Informationen zu seinem Browser abfragen und die IP-Adresse protokollieren. Das ermöglicht es Gravatar theoretisch, Benutzerprofile zu erstellen und Besucher sehr genau zu tracken. Bewegungen über verschiedene Blogs hinweg und Aktionen können mitgeschrieben und analysiert werden. Das ähnlich wie beim Facebook Like-Button. Natürlich kann man davon ausgehen, dass Gravatar sorgsam mit den erhaltenen Daten umgeht und sie nicht missbraucht – das wird ja auch in den Datenschutzbestimmungen versprochen. Dennoch traue ich der Sache nicht so ganz. Der Dienst ist sehr mächtig, groß und attraktiv für alle, die gerne Benutzerprofile erstellen. Werbeunternehmen, Geheimdienste, … ?

Es gibt also zwei Probleme, für die ich jeweils eine Lösung entwickelt habe: IP-Adressen sollen nicht in der WordPress-Datenbank protokolliert werden und Gravatar soll nicht feststellen können, welcher Benutzer auf welcher Seite gerade einen Gravatar lädt.

Remove-comment-ip

Remove-comment-IP ist das erste, extrem einfach gestrickte Plugin für WordPress. Sobald es installiert und aktiviert ist, überschreibt es sämtliche IP-Adressen neuer Kommentare durch „127.0.0.1”. Alte Kommentare werden nicht verändert – diese Funktion wird in Zukunft evtl nachgerüstet, sodass man auch rückwirkend IP-Adressen aus seiner Datenbank löschen kann.

Ein ganz ähnliches Plugin gibt es bereits für WordPress. Mein Problem war nur: Es hat zuletzt nicht mehr funktioniert. Obwohl es aktiv war, wurden die IP-Adressen nicht ersetzt. Der Fehler lag darin, dass ein anderes Plugin „Antispam-Bee” ebenfalls IP-Adressen veränderte bzw verändern konnte, aber die höhere Priorität in der WordPress-internen Verarbeitung hatte. Meine Verbesserte Version eines „Remove IP”-Plugins funktioniert auch zusammen mit Antispam-Bee und ersetzt die IP-Adressen zuverlässig.

Gravatar Privacy Proxy

Mein zweites WordPress Plugin „Gravatar Privacy Proxy” soll den Besucher vor Gravatar „schützen”. Wie der Name schon sagt, wird bei Anfragen nach dem Gravatar nicht der echte Gravatar Server genutzt, sondern ein zwischengeschalteter Proxyserver. Gravatar erfährt nur, dass ein bestimmter Server xyz einen Gravatar geladen hat – nicht aber, welcher Benutzer letztendlich den Gravatar vom Proxy erhalten hat. Der Proxyserver ist hier also Mittelsmann und sorgt für vollkommene Anonymität gegenüber Gravatar.

Unsprünglich war geplant, dass das Plugin einen eigenen kleinen Proxy in Form eines PHP Scripts mitbringt. Das hat jedoch nicht so funktioniert, wie ich mir das vorgestellt habe, sodass ich die Strategie geändert habe: Das Plugin bietet an, einen Proxyserver anzugeben, über den die Gravatare umgeleitet werden sollen. Gravatar Privacy Proxy selbst manipuliert dabei nur die URLs der Gravatare im Kommentarbereich. Die Einrichtung eines Reverse Proxys mit Apache oder Nginx ist für den Betrieb des Plugins also unentbehrlich. Wie man einen solchen Proxy mit Apache oder Nginx einrichten kann, ist im README des Plugins erklärt.

Der zu benutzende Proxyserver wird in den WordPress Einstellungen konfiguriert. Erst dann wird Gravatar Privacy Proxy aktiv und schreibt die Gravatar-Adressen im WordPress Kommentarbereich um.

 

Beide Plugins stehen unter einer freien Software-Lizenz, nämlich der MIT License. Ihr findet in meinen GitHub Repos. Viel Spaß damit!

Update: Installieren funktioniert übrigens so: Von GitHub als ZIP herunterladen… und in WordPress hochladen&installieren ;)

Linux: Verzeichnisse werden mit falschem Programm geöffnet

Permalink thomas-leister.de

Seit einigen Tagen verhält sich mein Arch Linux merkwürdig. Sämtliche Adressen zu Verzeichnissen werden auf einmal mit dem Audioplayer Audacious geöffnet, was natürlich in den wenigsten Fällen so gewollt ist. Eigentlich sollte sich ja Nautilus starten – mein Filebrowser. Wenn ich beispielsweise in meiner Gnome-Shell nach einem Ordner suche und diesen öffne, wird er nicht im Dateibrowser geöffnet, sondern Audacious öffnet diesen Ordner und durchsucht ihn nach Musikdateien.

[Update am 14.11.2014: Verbesserte Version]

Die einfachste und beste Lösung ist es, dem Content-Typen inode/directory als Default den ursprünglichen Dateimanager zuzuweisen. Unter der Gnome Desktopumgebung ist mein Dateimanager beispielweise Nautilus. Zum gewünschten Programm muss nun der Name der .desktop-Datei gefunden werden. Dazu wird in das Verzeichnis /usr/share/applications/ gewechselt, und dort nach der passenden .desktop-Datei gesucht. Im Falle von Nautilus lautet die Datei „org.gnome.Nautilus.desktop”.

Nun wird folgender Befehl als normaler Benutzer ausgeführt (ggf. anpassen, wenn nicht Nautilus verwendet wird):

xdg-mime default org.gnome.Nautilus.desktop inode/directory

Nach dieser Änderung muss die Desktopumgebung neu gestartet werden. Das kann entweder durch erneutes Einloggen geschehen oder bei Gnome via ALT + F2 und die Eingabe von „r” [ENTER].

Nautilus ist jetzt wieder die Default-Anwendung, mit der Verzeichnisse geöffnet werden.

Warum es zu dem Fehler mit Audacious kommt, hat Thomas in den Kommentaren kurz erklärt.

 

 

[Erste Version dieses Beitrags – nicht empfohlen, weil die Änderungen durch ein Update rückgängig gemacht werden könnten!]

In der Datei /usr/share/applications/audacious.desktop habe ich dann aber schließlich den Fehler entdeckt: (gekürzt)

MimeType=application/ogg;application/x-cue; [...] audio/x-xm;inode/directory;x-content/audio-cdda;

In der .desktop-Datei für Audacious wird festgelegt, welche Dateitypen Audacious öffnen können soll (durch ein „;” getrennt). Dort ist auch „inode/directory” gelistet, was bedeutet, dass auch Verzeichnisse mit Audacious geöffnet werden sollen. der Teil „inode/directory;” wird aus der Zeile herausgelöscht und die Datei gespeichert. Das reicht so aber noch nicht aus. Der Fehler setzt sich in der Datei „/usr/share/applications/mimeinfo.cache” fort. Dort sind die Zuordnungen zwischengespeichert. Auch hier wird dem Content-Type „inode/directory” das Programm Audacious zum Öffnen zugeteilt:

inode/directory=audacious.desktop;org.gnome.Nautilus.desktop;

Hier muss das „audacious.desktop;” aus der Zeile gelöscht werden. Nach dem Speichern der Datei wird die Gnome Shell (oder jeweils andere Desktopumgebung) entweder durch erneutes Einloggen neu gestartet, oder im Fall von Gnome mit ALT + F2 und der Eingabe von „r” + ENTER.

Die Typenzuordnung ist jetzt wieder korrekt.

DKIM: Verständnis, Konfiguration und Installation von OpenDKIM

Permalink debinux

Dank OpenDKIM funktioniert eine DKIM-Integration in Postfix sehr einfach.
Die Konfiguration ist geradlinig, ich versuche auf einige Details einzugehen.
Verwendet habe ich für diesen Artikel Debian in der Ausführung “stable” und “testing”.

Vorwort zum Einstieg

In Postfix eingebunden wird OpenDKIM als Milter, kurz für “Mail Filter”.
Ein Milter kann Mail auf verschiedene Art und Weisen bearbeiten/verändern.

Zum Unglück des Verständnisses gibt es hiervon zwei Arten: Einen non-SMTP sowie SMTP-only Filter:

Postfix: Milter (via postfix.org/MILTER_README.html)

Postfix: Milter (via postfix.org/MILTER_README.html)


Nachrichten, die ich auf dem klassischen Wege via SMTP-Client – lassen wir es Thunderbird sein – in meinen Mailserver eingespeist habe, wird der SMTP-only Filter übernehmen.
Erreicht die Nachricht das System etwa via Sendmail, was etwa beim lokalen Versand via PHP der Fall sein kann – würde der SMTP Daemon nicht verwendet, hier setzt der non-SMTP Filter ein.
Die Notwendigkeit einer solchen Trennung beschreibt Postfix als technisch un­ab­ding­bar.

Hat die Mail den OpenDKIM Milter durchlaufen, wird diese um ein weiteres Header-Feld bereichert, hier ein Beispiel:

1
2
3
4
5
6
7
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=debinux.de;
    s=default; t=1415013168;
    bh=Vp99QdXdPejs1n1k3tTN2TGAXYycACrLStnOIIFR6Yw=;
    h=Date:From:Subject:To;
    b=fZ20nD1C5BX5bLQBZJZLqa+SGzlyPX7zi4nuP4e3Rcb6veFnrW1rqiPwjab0JbA3k
     DsHCEMnvqttEw77QSbU+olgAknROGXzEZ9zAHCbK+CZLH0dgfC9ZYtJp5c6v8LoBRb
     Qm2wDGKLYU6WKMdiq3O67g5W/f11rfqD5/XFtkSE=

Einige Parameter präsentieren sich selbsterklärend, etwa die Version des DKIM-Standards (“v”), Signaturalgorithmus (“a”) oder Domänenname (“d”). Der Signaturalgorithmus “rsa-sha256″ ist die gängigste Methode.
Ein etwas in die Jahre gekommener Artikel zu DKIM Signaturen von Johannes Endres und Patrick Koetterauf auf heise.de, ist auch 2014 noch empfehlenswert.

Wichtiges Grundwissen für die weitere Konfiguration, sind zudem der Selektor (“s”) und die Kanonisierung (“c”).

Der Selektor (“s”) darf frei gewählt- und weitesgehend als Name des Keys verstanden werden. Er wird dem Key vorangestellt. Üblicherweise wird hierfür “default” verwendet, allerdings unterliegt der Wert keiner Richtlinie. Google verwendet beispielsweise “google” als Selektor für Apps – um noch einmal auf die Banalität hinzuweisen. Auf Sonderzeichen und Umlaute bitte verzichten. :)

Nächster Punkt ist die Wahl der Kanonisierung (“c”). Dazu folgende Erklärung…
Header und Nachrichtentext werden getrennt signiert. Bevor OpenDKIM sich nun zuerst an den Header macht, wird es diesen in eine Normalform umsetzen. Dafür benutzt es einen Algorithmus: “simple” oder “relaxed”.
Je nach Algorithmus fällt diese Normalisierung mehr oder weniger Streng aus.

  • “simple” ist die strengere Methode, eine Nachricht oder einen Header zu normalisieren. “simple” wird einen Header “as-is” signieren. Der Header MUSS bei der Verifizierung auf dem entfernten Computer 1:1 dem Zustand vor der Signatur entsprechen.
    Im Falle des Nachrichtentextes werden vor der Signatur etwaige “empty lines” am Ende der Nachricht entfernt.
  • “relaxed” kommt seiner Bezeichnung sehr nahe. Bevor die Signatur stattfindet, werden zum Beispiel alle Felder im Header durch Kleinbuchstaben ersetzt und doppelte Leerzeichen ignoriert. Inhaltlich werden keine Änderungen vorgenommen!
    Ähnlich verhält es sich beim Nachrichtentext. Einige kleinere Änderungen wir doppelte Leerzeichen werden ignoriert, der Inhalt bleibt auch hier unangetastet!

Möchte ich Header und Nachrichtentext “relaxed” normalisieren, bevor ich sie signiere, reicht ein einziger Parameter “c=relaxed” aus. Entscheide ich mich für die “relaxed” Normalisierung des Headers und die “simple” Normalisierung des Nachrichtentextes, definiert dies der Parameter “c=relaxed/simple”.

Die Nachricht wird niemals verändert, der Text oder Header durchläuft lediglich intern den ausgewählten Algorithmus. Die Ausgabe wird anschließend signiert.
Auf dem Weg einer Mail durch die Server ist es sehr gut möglich, dass doppelte Leerzeichen oder “line-endings” etc. in der Nachricht verändert werden. Häufig wird daher zur “relaxed” Normalisierung gegriffen, um sich den Aufwand des Debuggings zu ersparen, der eher in keinem Verhältnis steht.

OpenDKIM wird beim Empfang einer Nachricht mit Signatur, die vom Sender vorgegebene Normalisierung durchführen und das Ergebnis gegenprüfen.
Das Resultat wird ebenfalls als Header-Feld angefügt: “Authentication-Results”.

Das Feld “Authentication-Results” könnte in OpenDKIM durch “RemoveARAll yes” unterdrückt werden. Spamassassin führt eine eigene Bewertung durch und braucht dieses Header-Feld hierfür nicht.

Am Beispiel einer Mail, die von einer GMail-Adresse empfangen wurde:

1
2
3
Authentication-Results: mail.domain.tld; dkim=pass
    header.d=gmail.com header.i=@gmail.com header.b=sgoLK7PA;
    dkim-adsp=pass; dkim-atps=neutral

Wie in obiger Notiz erwähnt, wird Spamassassin in das Feld “X-Spam-Status” reporten, unabhängig vom Ergebnis des OpenDKIM Milters:

1
2
3
X-Spam-Status: No, score=-0.1 required=5.0 tests=DKIM_SIGNED,DKIM_VALID,
    DKIM_VALID_AU,FREEMAIL_FROM,HTML_MESSAGE,URIBL_BLOCKED autolearn=ham
    version=3.3.2

Weitere Informationen findet ihr hier.

Wie wird die Signatur überprüft?
Vorab eine Grafik zum besseren Verständnis.
DKIM Prozess
Die Kurzform: Eine Signatur wird mit Hilfe eines von uns erzeugten Keys erstellt. Der Key wird in dem für unsere Domäne zuständigen Nameserver als TXT-Record hinterlegt. Mein Gegenüber kann beim Empfang meiner Mail, den Key vom Nameserver abholen und die Signatur nachvollziehen. Entspricht der Hash dem aus unserer Nachricht, kann davon ausgegangen werden, dass keine Manipulation der Nachricht stattfand.

Und wie schützt mich das vor Spam?
Tjoa, ernüchternde Antwort: Eigentlich gar nicht.
Allerdings kann ich bei einer korrekt (!) signierten Mail fast immer davon ausgehen, dass es sich nicht um Spam handelt. Spammer benutzen häufig offene Relays und versenden unter Angabe falscher Domänennamen. Solche Versuche sollten vom eigenen Mailserver schon während des Verbindungsaufbaus abgelehnt werden.
Ausnahmefälle sind gekaperte Freemail Accounts, etwa von GMail, die blöderweise natürlich signiert werden. So ein Account wird allerdings sehr schnell gesperrt und schon der Nachrichtentext einer solchen Mail, fällt dem lokalen Spamfilter zum Opfer.
Kurzum dient DKIM der Validierung der Echtheit und Integrität einer Nachricht, um Manipulation auf dem Weg auszuschließen.

Installation und Konfiguration von OpenDKIM

Nachdem “alle so in etwa” wissen, was in den nächsten Schritten passiert, startet die Installation von OpenDKIM inkl. nützlicher Werkzeuge via “apt-get”:

1
apt-get install opendkim opendkim-tools

Dank der Werkzeuge lässt sich schnell ein Key für die Signatur erstellen. Diesen Key lege ich in “/etc/dkim” ab.
Weiterhin wird die Verwendung des Keys auf die Signatur von Mail beschränkt (“-r”), der Selektor festgelegt (“-s default”) und der öffentliche Domänenname definiert (“-d domain.tld”):

1
2
mkdir /etc/dkim/ ; cd /etc/dkim
opendkim-genkey -r -s default -d domain.tld

Abgesehen vom Key “default.private”, befindet sich im Verzeichnis nun auch eine Datei “default.txt”, dazu später mehr…
Ein Blick in die Konfiguration:

1
nano /etc/opendkim.conf

Diese gestaltet sich relativ simpel. Nur wenige Werte müssen explizit angepasst werden.
Ich habe das Logging eingeschaltet, allerdings nicht zu ausführlich.
“Domain” und “Selector” bitte entsprechend anpassen, ebenso “Canonicalization”, falls gewünscht.

1
2
3
4
5
6
7
8
9
Syslog              yes
LogResults          yes
LogWhy              yes
SyslogSuccess       yes
UMask               002
Domain              domain.tld
KeyFile             /etc/dkim/default.private
Selector            default
Canonicalization    relaxed/relaxed

Nun noch den gewünschten Socket in der Datei “/etc/default/opendkim” auskommentieren. Der Port darf auch verändert werden:

1
SOCKET="inet:12345@localhost" # listen on loopback on port 12345

Anschließend die Datei “/etc/postfix/main.cf” erweitern:

1
2
3
4
milter_protocol = 6 # Da Postfix >= v2.6
milter_default_action = accept # Auch Mail annehmen, wenn Filter defekt
non_smtpd_milters=inet:127.0.0.1:12345
smtpd_milters=inet:127.0.0.1:12345

Der Port muss dem Wert aus der Datei “/etc/default/opendkim” entsprechen.
Im Anschluss die zwei Dienste in dieser Reihenfolge neustarten:

1
2
service opendkim restart
service postfix restart

Nameserver Konfiguration

Zum Abschluss komme ich auf die Datei “/etc/dkim/default.txt” zurück.
Der Inhalt dieser Datei sieht etwa so aus:

1
default._domainkey IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDUDuo7AbW7AigTWt4Mh9pK8BlZxyPhCZnZzuq2t+uxXxkEhT+RFCfllpBe2cnlz/mQA6Ksm30B7vLxXZm81YZ5s0na2BInYc1y7y0gYlY5vyjDj8QUP2J5L/yKDv0jySIju46QsCylXoMAJBIGnvofvYqRmZ9nnjgvhZTx/YlJJQIDAQAB" ; ----- DKIM key default for domain.tld

Den Anhang ” ; —– DKIM key default for domain.tld” könnt ihr euch sparen, der Rest muss von euch oder eurem ISP in den zuständigen Nameserver eingetragen werden.
Etwa so:

Typ: TXT
Name: default._domainkey
TTL: 14400
Data: “v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDUDuo7AbW7AigTWt4Mh9pK8BlZxyPhCZnZzuq2t+uxXxkEhT+RFCfllpBe2cnlz/mQA6Ksm30B7vLxXZm81YZ5s0na2BInYc1y7y0gYlY5vyjDj8QUP2J5L/yKDv0jySIju46QsCylXoMAJBIGnvofvYqRmZ9nnjgvhZTx/YlJJQIDAQAB”