Schlagwort: Firefox

Debian Stable und Firefox ESR

· · · 1 Kommentar

Ausgangssituation

Die Debian-Veröffentlichungen gliedern sich in drei Varianten, von denen "stable" für die Verwendung durch den Ottonormalbenutzer empfohlen wird:

The release of Debian called "stable" is always the official released version of Debian. Ordinary users should use this version.
[Quelle]

Stabil bedeutet hierbei

once released, the operating system remains relatively unchanging over time.
[Quelle]

Im Rahmen eines sog. Freeze werden zu einem bestimmten Zeitpunkt Programme in den zu diesem Zeitpunkt aktuellen Versionen eingefroren, welche dann Teil der nächsten "stable"-Veröffentlichung werden. So war zum Beispiel bei der Veröffentlichung von Debian 10 Libreoffice 6 aktuell und ist auch zum jetzigen Zeitpunkt in Debian 10 noch enthalten, der Wechsel zu Version 7 wurde erst mit Debian 11 durchgeführt.

Dies garantiert eine weitestgehend stabile Arbeitsplattform, auf der nicht durch Updates bestehende und funktionierende Prozesse gefährdet werden, da i.d.R. nur sicherheitsrelevante Änderungen in einmal veröffentlichte Programmpakete integriert werden.

Es gibt nur wenige Ausnahmen von diesem Schema, eine davon ist Firefox, welcher von Debian in der  ESR (Extended Support Release)-Version ausgeliefert wird.

Leider reicht aber der verlängerte Support-Zeitraum der ESR-Versionen nicht aus, um die komplette Lebensspanne einer Debian-"stable"-Veröffentlichung zu begleiten, so daß innerhalb einer Stable-Version das Firefox ESR-Paket aktualisiert werden muss. Aktuell steht der Wechsel von Version 78 zu Version 91 an, der sich leider auf Grund einiger Randbedingungen spürbar verzögert.

Die Betreuer des Pakets laden nicht nur das fertige Binärpaket von der Mozilla-Website und verteilen es neu, es wird stattdessen eine eigene Version von Firefox aus dem öffentlich zugänglichen Quelltext gebaut und verteilt, wozu aber erst zahlreiche hierfür verwendete Werkzeugpakete angepasst werden müssen, was Zeit benötigt.

Lösungsmöglichkeiten

Da der Einsatz des nicht mehr aktuellen Browsers auf Grund mehrerer Sicherheitslücken nicht mehr empfehlenswert ist, gibt es verschiedene Möglichkeiten, zumindest temporär auf eine aktuellere Version auszuweichen, bis eine aktualisierte Browserversion bereitgestellt wird.

Flathub / snap

Vorteil (oder Nachteil) der Lösung ist, daß nicht nur die Anwendung heruntergeladen wird, sondern auch alle Bibliotheken, welche die Anwendung zur Laufzeit benötigt und die Anwendung mit "ihren" statt den im System installierten Bibliotheken ausgeführt wird. Somit müssen nicht wie bei einem "normalen" System die passenden Bibliotheken systemweit installiert werden, sondern die Anwendung kann gekapselt mit den für sie zuständigen Bibliotheken laufen, während der Rest des Systems andere Versionen verwenden kann.

Nachteil ist, daß irgendwelche Bibilotheken im Zweifelsfall mehrfach auf dem System vorhanden sind und falls der Ersteller des Pakets z.B. eine Bibliothek, die Sicherheitsprobleme hat, nicht aktualisiert, ist und bleibt das eben so. Mit ein bißchen Pech wird somit durch die Hintertür die Systemsicherheit ausgehebelt. Ob es dann reicht, daß die unsichere Bibliothek in der jeweiligen Umgebung läuft, bleibt im Ernstfall spannend ...

Da es sich um eine temporäre Zwischenlösung handeln soll, ist dieser Ansatz nur dann interessant, wenn aus anderen Gründen sowieso bereits eine der beiden Umgebungen in Betrieb ist.

Direkter Download von Mozilla

Hier wird lediglich die aktuelle Binärversion des Browsers heruntergeladen, entpackt und in das System eingebunden. Für den geplanten Einsatzzweck also perfekt geeignet.

Umsetzung

Als erstes wird die aktuelle ESR-Version von der Mozilla-Website heruntergeladen:

$ wget 'https://download.mozilla.org/?product=firefox-esr-latest-ssl&os=linux64&lang=de' -O "$HOME/Downloads/firefox-esr.tar.bz2"

und dann nach "/opt" entpackt:

$ cd /opt
$ sudo tar xfvj "$HOME/Downloads/firefox-esr.tar.bz2"

Theoretisch gäbe es auch die Möglichkeit, die Dateien innerhalb des "$HOME"-Verzeichnisses zu entpacken und zu verwenden, aus Sicherheitsaspekten ist davon aber abzuraten: der Browser hat standardmäßig Schreibrechte im kompletten "$HOME"-Verzeichnis und könnte somit im Schadensfall auch die eigenen Programmdateien modifizieren.

Als letzter Schritt muß noch die ".desktop"-Datei angepasst werden. Unter GNOME kann dies wie folgt erledigt werden:

$ cp /usr/share/applications/firefox-esr.desktop ~/.local/share/applications/

Anschließend die soeben kopierte Datei bearbeiten

$ vi ~/.local/share/applications/

und den Pfad in der Zeile

Exec=/usr/lib/firefox-esr/firefox-esr %u

in

Exec=/opt/firefox/firefox %u

ändern. Nach einmal ab- und wieder anmelden wird von der kompletten Oberfläche die neu installierte Version verwendet. Da sich Firefox 78 und 91 auch optisch deutlich unterscheiden, ist die Ausführung des neueren Browsers jederzeit klar erkennbar und man braucht nicht panisch nach jedem Browserstart die Version zu kontrollieren.

Der so installierte Browser läuft hier seit einiger Zeit problemlos, lediglich beim ersten Start musste das richtige Profil gewählt werden.

Sobald Firefox 91 ESR in Debian integriert ist, reicht es, den Ordner "/opt/firefox" sowie die Datei "~/.local/share/applications/firefox-esr.desktop" zu löschen.


Neues Firefox-Profil nach Aktualisierung

· · · 0 Kommentare

Nachdem es aktuell beim Wechsel von Firefox 78esr zu 91esr innerhalb der Debian-Repositories zu Verzögerungen kommt, habe ich den Firefox 91esr direkt von der Mozilla-Seite heruntergeladen und nach "/opt" entpackt. Der Plan ist, die parallel installierte Version so lange zu benutzen, bis die Debian-Version erfolgreich aktualisiert wurde und dann wieder den Browser aus dem Repository zu verwenden.

Der erste Start des neuen Browsers sorgte allerdings für eine Schrecksekunde: statt des gewohnten Anblicks mit Lesezeichenleiste und Erweiterungen präsentierte sich ein Firefox im Auslieferungszustand. Ein Blick in den ".mozilla"-Ordner innerhalb des Benutzerverzeichnisses beruhigte, denn das alte Profil war noch vorhanden und Firefox hatte ein neues Profil angelegt.

Die Erklärung hierfür liefert "Ein gesondertes Profil für jede Firefox-Installation" mit dem sachdienlichen Hinweis, daß es sich hierbei um ein Feature und keinen Bug handelt:

Wenn Sie eine neue, zusätzliche Installation von Firefox installieren, wird ein neues Profil erstellt. Ihre persönlichen Daten oder Anpassungen bleiben dabei erhalten, denn Ihre bisherigen Profildaten werden gesichert und der vorherigen Firefox-Installation zugeordnet.D

Da die Version 78esr aus den Repositories sowieso nicht mehr verwendet werden sollte, half ein erneuter Start des Browsers mit angehängtem "-p", welches den Profilmanager aufruft. Das neue Profil löschen, das alte als Standard definieren und schon war wieder alles wie gewünscht.


Gnome ohne Firefox-ESR

· · · 0 Kommentare

Selbst wenn mit gnome-core lediglich das Minimalpaket gewählt wird, wird bei der Installation von Gnome unter Debian der Browser Firefox in der ESR-Version 52 zwangsweise mitinstalliert.

Spätestens wenn parallel eine aktuelle Version von Firefox installiert wurde, wird die ESR-Version nicht mehr benötigt und könnte deinstalliert werden. Leider quittiert die Paketverwaltung ein

# apt remove firefox-esr

nicht nur damit, daß sie auch "gnome-core" deinstallieren will, zusätzlich wird die Installation von chromium mit eingeplant:

...
Die folgenden Pakete werden ENTFERNT:
  firefox-esr gnome-core
Die folgenden NEUEN Pakete werden installiert:
  chromium
...

Nach einigen ergebnislosen Versuchen fand sich schließlich bei reddit der entscheidende Fingerzeig: die Installation eines mit equivs selbstgebastelten Fake-Pakets, welches dem System einen vorhandenen firefox-esr vorgaukelt.

Ein passendes Muster für eine Control-Datei findet sich in Kapitel "15.2.1. Meta-Pakete oder vorgetäuschte Pakete" des Debian Adminstrator Handbuchs und ist schnell angepasst:

Package: fakefox-esr
Version: 0.1
Maintainer: Andreas Thul <ab@c.de>
Provides: firefox-esr (=52)
Architecture: all
Description: Fake package - Firefox ESR
 This is a fake package to let the packaging system
 believe that Firefox ESR is installed.

Die wichtigste Zeile hierbei ist "Provides: ...", welche vorgaukelt, daß das Paket tatsächlich Firefox in der ESR-Version bereitstellt.

Nachdem das Paket  mittels

# equivs-build fakefox-esr

erstellt wurde, kann es über

# sudo dpkg -i fakefox-esr_0.1_all.deb

installiert werden. Anschließend führt die Entfernung des "firefox-esr"-Pakets zum ursprünglich beabsichtigten Ergebnis:

sudo apt remove firefox-esr
...
Die folgenden Pakete werden ENTFERNT:
firefox-esr
0 aktualisiert, 0 neu installiert, 1 zu entfernen und 0 nicht aktualisiert.

Automatischer Redirect bei Firefox

· · · 0 Kommentare

Im lokalen Netz werkelt eine virutelle Linux-Spielkiste, welche auf Grund ihres Einsatzzwecks auf den Namen "sandbox" hört. Der auf dieser Maschine laufende Webserver ist aus dem lokalen Netz über die Adresse "http://sandbox" erreichbar.

Wenn die Kiste ausgeschaltet ist, führt ein Versuch, die URL in Google Chrome zu öffnen wie erwartet zu einer Fehlerseite mit dem Hinweis

Die Server-IP-Adresse von sandbox wurde nicht gefunden.

Firefox hingegen versucht ebenfalls - logischerweise ergebnislos - die URL zu öffnen und führt den verdutzten Anwender letztendlich zur Adresse "http://www.rotoworld.com/?ref=sandbox", eine Vorgehensweise, welche auf den ersten Blick unschöne Methoden wie DNS-Hijacking (oder Schlimmeres) als Ursache vermuten lässt, letztendlich aber einen trivialen Grund hat, welcher bereits vor rund 7 Jahren Thema des Beitrags "Firefox fügt automatisch 'www.' und '.com' an" war:

Wenn Firefox zu einer eingegebenen URL keine Verbindung bekommt, beginnt ein Verwirrspiel durch Anhängen einer Domainendung - in diesem Fall der Endung ."com", die aus der ursprünglichen Adresse "http://sandbox" dann "http://sandbox.com" macht - welche zum gleichen Betreiber wie "http://www.rotoworld.com" gehört und letztendlich den Redirect erklärt.

Manchmal frage ich mich ernsthaft, was sich ein Programmierer bei der Implementierung solch sinnbefreiter Automatismen denkt: Wegen jedem Krimskrams wird irgendwo eine Leiste eingeblendet, die darauf hinweist, daß Firefox dieses, jenes oder noch was ganz viel tolleres könnte. Und bei sowas? Da wäre ein Hinweis "Address not found - redirecting to potentially unwanted site" wirklich hilfreich.


Firefox tötet Plugins

· · · 0 Kommentare

Beim Update von Mozilla Firefox auf die aktuelle Version 7 kann es passieren, daß installierte Plugins nach dem Update nicht mehr vorhanden sind. Auslöser scheint ein anstehendes Plugin-Update zu sein, das beim Update des Firefox schlicht und einfach nicht sauber durchgeführt wird.

Dieses Problem, bereits am 21.August 2011 als Bug #680802 gemeldet, wurde aber unverständlicherweise nicht als allzu schwerwiegend klassifiziert und vor Veröffentlichung der endgültigen Version auch nicht mehr behoben.