Das Mozilla-Projekt Firefox, als experimentelle Abzweigung aus dem Programmpaket Mozilla Applikation Suite initiiert, welches auf dem Quellcode des Netscape Communicators basierte,
gehört heute, nach Google Chrome, zu den beliebtesten Browsern.

Die hier gelisteten Einstellmöglichkeiten müssen im Firefox über den Konfigurationseditor in der Adresszeile (about:config) bearbeitet werden.

Warnung

Das Ändern dieser erweiterten Einstellungen kann unter Umständen das Profil beschädigen oder ungewolltes Verhalten verursachen.
Sie sollten deshalb Änderungen nur dann vornehmen, wenn Sie genau wissen, was Sie tun.

Hinweis

Alle Einstellungen wurden mit Firefox 124 getestet und kontrolliert.
Orange markierte Einstellungen können bei einzelnen Seiten dazu führen, dass einige Inhalte nicht korrekt anzeigt werden oder die Website nicht richtig funktioniert. Wenn eine Website defekt zu sein scheint, sollten Sie diese Einstellungen zurücksetzen und die Seite erneut testen.


Datenschutz und Telemetrie


Firefox kann Trackingparameter beim Wechsel der Top-Level Domain aus den URLs entfernen. Bei Links innerhalb der gleichen Top-Level Domain werden die Parameter nicht entfernt, um Probleme zu vermeiden. Damit wird webseiten-übergreifendes Tracking verhindert. Die Funktion ist aktiv, wenn man in Firefox 102+ den strengen Trackingschutz in den Einstellungen aktiviert oder folgenden Parameter setzt.

privacy.query_stripping.enabled = true


Standardmäßig wird eine interne Liste von Parametern genutzt, die beispw. die Trackingparameter von Facebook aus den URLs entfernt, aber nicht das Kampagnentracking von Google.
Man kann die Liste der URL-Parametern konfigurieren, die entfernt werden sollen. Die folgende Liste mit eindeutigen Tracking-IDs wird vom Librewolf verwendet und wurde mit den UTM-Parametern ergänzt.

privacy.query_stripping.strip_list = __hsfp __hssc __hstc __s _hsenc _openstat dclid fbclid gbraid gclid hsCtaTracking igshid mc_eid ml_subscriber ml_subscriber_hash msclkid oly_anon_id oly_enc_id rb_clickid s_cid twclid vero_conv vero_id wbraid wickedid yclid utm_campaign utm_channel utm_cid utm_content utm_id utm_medium utm_name utm_place utm_pubreferrer utm_reader utm_referrer utm_serial utm_social utm_social-type utm_source utm_swu utm_term utm_keyword utm_userid utm_viz_id utm_product utm_campaignid utm_ad utm_brand utm_emcid utm_emmid utm_umguk


Es werden mehrere Surf-Container bereitgestellt, die man selbst aktiv auswählen muss. Dabei wird der Website-Speicher in Tab-spezifische Container getrennt, wodurch Cookies, die in einem Container heruntergeladen werden, in einem anderen Containern nicht verfügbar sind (Siehe auch Firefox Multi-Account Containers Erweiterung). Nach der Aktivierung findet man unter den Einstellungen "Allgemein" im Bereich "Tabs" die aktivierte Tab-Umgebung.

privacy.userContext.enabled = true
privacy.userContext.ui.enabled = true


Langfristiges Tracking mit Cookies und allen möglichen Varianten von EverCookies verhindert man mit dem Löschen aller angesammelten Daten beim Schließen des Browsers.

privacy.clearOnShutdown.cookies = true
privacy.clearOnShutdown.cache = true


Die "Do-Not-Track" Funktion in den Einstellungen ist politisch gescheitert, es wird von Tracking­diensten vollkommen ignoriert.
Die Aktivierung des DNT Headers schafft aber ein Differenzierungs­merkmal für das Browser Fingerprinting, wie auch die DNT Working Group des W3C in der Spezifikation anmerkt.
Das gleiche gilt auch für den Private Browsing Mode. Im PBM wird der Schutz gegen Aktivitätenverfolgung standardmäßg aktiviert und es wird damit ein DNT Header gesendet, womit das Fingerprinting des Browsers erleichtert wird.
Daher wird Empfohlen diesen komplett zu deaktivieren
.

privacy.trackingprotection.enabled = false
privacy.trackingprotection.pbmode.enabled = false


Die Ortungsfunktion wird verwendet um den Aufenthaltsort des Nutzers zu lokalisieren, damit Sie passendere Informationen für ihren Standort erhalten.
Achtung: Nach Deaktivierung dieser Funktion kann weiterhin an Hand der IP-Adresse, das Land und der ungefähre Knotenpunkt (ihres Anbieters) ermittelt werden.

geo.enabled = false


Erfassen von Telemetrie Daten während der Benutzung (nicht personenbezogene) Daten (wie Leistung, Hardware, Nutzung und Anpassungen) oder Crashreports abschalten.
Diese Informationen werden einmal täglich an Mozilla gesendet. 

toolkit.telemetry.enabled = false
toolkit.telemetry.newProfilePing.enabled = false
toolkit.telemetry.firstShutdownPing.enabled = false
toolkit.telemetry.bhrPing.enabled = false

Eine Abschaltung einzelner Telemetriefeatures (toolkit.telemetrie.*.enabled = false) wie anbei, wird oft empfohlen, ist aber unvollständig und überflüssig.
Mit den nachfolgend genannten Einstellungen wird die Übertragung von Telemetriedaten an Mozilla vollständig abgeschaltet.

browser.tabs.crashReporting.sendReport = false
datareporting.policy.dataSubmissionEnabled = false
datareporting.healthreport.uploadEnabled = false

Addons
extensions.experiments.enabled = false


Nachdem viele Nutzer die Übertragung der Telemetriedaten abgeschaltet haben, wurde das Add-on Telemetrie Coverage verteilt. Das Add-on ignoriert die Einstellungen zur Telemetrie und sendet folgende Daten an Mozilla: Firefox Version, Update Channel, Betriebs­system und -version sowie die Information, ob die Über­tragung von Telemetriedaten deaktiviert wurde. 
Um dies Datenübertragung an Mozilla ebenfalls zu deaktivieren (laut Mozilla Doku)

toolkit.coverage.endpoint.base = " "   (String leeren)


Ab Firefox 75 erweitert Mozilla vorhandene Telemetrie Optionen im Browser um einen neuen Dienst namens 'Default Browser Agent'.
Dieser wird standardmäßig auf Windows-Systemen installiert und als geplante Aufgabe ausgeführt.

default-browser-agent.enabled = false

Außerdem sollte unter 'Aufgabenplanung' im Ordner Mozilla die Aufgabe "Firefox Default Browser Agent" deaktiviert werden.


Mit Web-Beacons (Zählpixel) sind kleine Grafiken (meist 1x1 Pixel, transparent)  in eMails oder auf Webseiten gemeint, die eine Logdatei-Aufzeichnung ermöglichen und für statistische Auswertungen verwendet werden.
Diese Daten kann ein Browser beim verlassen einer Webseite zur Analyse an den Webserver senden.
Konkret bedeutet dies:
Wenn ein Anwender auf einen Link klickt, dann wird die Seite geöffnet und gleichzeitig wird ein POST-Request z.B. an eine andere Seite gesendet.
Dadurch kann die Ping-Seite die Klicks auf den eigentlichen Link zählen. Der Sinn dieses Attributs besteht darin, das Klickverhalten von Besuchern auf Webseiten zu analysieren.

beacon.enabled = false
browser.send_pings = false
browser.send_pings.max_per_link = 0


Bei jedem öffnen eines Neuen Tabs wird eine Information (Ping) an den Pocket Server von Mozilla gesendet.

browser.newtabpage.activity-stream.telemetry = false
browser.newtabpage.activity-stream.feeds.telemetry = false


Über verschiedenen API-Schnittstellen werden Informationen über die Hardware gesammelt und ausgelesen.
In Firefox können Berechtigungen auf Standort, Kamera, Mikrofon und Benachrichtigungen kontrolliert werden.
Für die Deaktivierung von Abfragen über Batteriefüllstand und Video-Statistik können folgende Konfigurationen gesetzt werden:

dom.battery.enabled = false
media.video_stats.enabled = false


Ein Referer liefert die Information, von welcher Seite der Surfer zu der aufgerufenen Webseite gekommen ist, oder welche Seite gerade betrachtet wird, diesen sollte man aufs Minimum herabsetzen.
Bei den Werten wird festgelegt ob und was über den Referer an Drittseiten übertragen werden soll.

network.http.sendRefererHeader = 1

steuert, ob ein Referrer unabhängig von der Herkunft gesendet wird oder nicht
  0 = Kopfzeile nie senden
  1 = Kopfzeile nur senden, wenn auf Links und ähnliche Elemente geklickt wird
  2 = (Standard) bei allen Anfragen senden (z.B. Bilder, Links usw.) 


network.http.referer.XOriginPolicy = 1

steuert, ob ein Referrer auch an Drittseiten gesendet werden soll oder nicht 
  0 = (Standard) Kopfzeile immer senden
  1 = Kopfzeile nur senden, wenn der Domainname gleich ist
  2 = Kopfzeile nur senden, wenn Hostname übereinstimmt


network.http.referer.trimmingPolicy = 2

steuert, wie viele Referrer gesendet werden, unabhängig von der Herkunft
  0 = (Standard) sendet die vollständige URL
  1 = Nur Hostnamen und Pfad senden
  2 = Nur Hostnamen senden 



Werbung abschalten


Bezahlte Werbeeinblendungen auf der NewTab Seite deaktivieren. Dadaurch sieht die Oberflächlich besser aus und hat eine Startseite sowie NewTab Page ohne über­flüssigen Schnick­schnack und wird nicht mit hand­verlesenen Empfehlungen belästigt.

browser.newtabpage.activity-stream.showSponsored = false
browser.newtabpage.activity-stream.showSponsoredTopSites = false


Beim Starten kontaktiert Firefox aber weiterhin den 'Contile Tile Server' von Mozilla (für Werbeeinblendungen und Empfehlungen) und holt die aktuellen Empfehlungen ab.
Auch das kann mit folgenden Optionen unterbunden werden.

browser.topsites.contile.enabled = false
browser.newtabpage.activity-stream.feeds.topsites = false
browser.newtabpage.activity-stream.section.highlights.includePocket = false
browser.newtabpage.activity-stream.feeds.system.topsites = false


Wenn Firefox im Private Browsing Mode erkennt, dass man einen öffentlichen Wi-Fi Accesspoint verwendet, wird man mit Werbung für den Mozilla VPN belästigt.

browser.vpn_promo.enabled = false


Seit Firefox 68 gibt es ein Empfehlungsprogramm für besonders gute Erweiterungen, die dem Nutzer eben auf der Erweiterungsseite vorgeschlagen werden.
Dieses kann deaktiviert werden:

extensions.htmlaboutaddons.recommendations.enabled = false


Mit Firefox 110 hat Mozilla begonnen, die "quicksuggestions" als weiteres Empfehlungsfeature in einigen Regionen zu aktivieren. Dabei werden bei Eingabe einer URL nicht-gesponserte und gesponserte Vorschläge angezeigt sowie Vorschläge, die Mozilla aus den Suchanfragen ableitet.

browser.urlbar.quicksuggest.enabled = false
browser.urlbar.quicksuggest.dataCollection.enabled = false
browser.urlbar.suggest.quicksuggest.nonsponsored = false
browser.urlbar.suggest.quicksuggest.sponsored = false



Sonstige Einstellungen


Bei Firefox Translations handelt es sich, ein im Rahmen des von der Europäischen Union geförderten Bergamot-Projekts, gemeinsam mit mehreren Universitäten, um eine vollständig clientseitige Funktion zur maschinellen Übersetzung von Websites für den Browser zu entwickeln. Das bedeutet, dass die Übersetzung vollständig im Browser geschieht und keine zu übersetzenden Inhalte an einen Datenserver übermittelt werden müssen.

browser.translations.enable = true


AVIF steht für AV1 Image File Format und ist ein Bildformat, welches auf dem neuen Video-Codec AV1 basiert.

image.avif.enabled = true


SSD-Festplatten (Speicher-Chips) altern schneller, wenn sie oft mit sehr vielen Daten beschrieben werden. Der Firefox Sitzungs-Manager speichert alle 15 Sekunden geöffnete Inhalte bzw. Tabs auf der Festplatte, als Sicherung, damit diese nach einem Absturz sofort wieder aufgerufen werden können. Das Datenvolumen kann bei stärkeren Surf-Aktivitäten mit vielen geöffneten Tabs, mehrere GB am Tag betragen.
Die Werte werden in Millisekunden verarbeitet, 15000 Millisekunden (Standardeinstellung).

Empfehlung alle 60 Sekunden:
browser.sessionstore.interval = 60000


Einige Websites öffnen bestimmte Links in neuen Fenstern.


Mit dieser Voreinstellung können Sie steuern, wo diese Links geöffnet werden sollen, wodurch normalerweise neue Fenster geöffnet werden
browser.link.open_newwindow = 3

1 = Öffnet Links im aktiven TAB des Fensters
2 = Öffnet Links in einem neuen Fenster
3 = Öffnet Links in einem neuen Tab im aktiven Fenster


Hier kann genau festlegt werden, welche Links von dieser Voreinstellung betroffen sind
browser.link.open_newwindow.restriction = 0

0 = verwende die Einstellungen von open_newwindows
1 = überschreibt die Einstellung open_newwindow und verwendet immer ein neues Fenster
2 = verwendet Einstellung open_newwindows auf normale Fenster an, aber nicht auf Skriptfenster mit Funktionen [Standard]


Öffnet man externe links, z.B. aus dem Mailprogramm heraus, werden diese Standardmäßig in einem neuen TAB im letzten aktiven Browserfenster geöffnet.
browser.link.open_newwindow.override.external = 3

 -1 = verwendet die Einstellung open_newwindow auf externe Links an [Standard]
1 = externe Links in der zuletzt aktiven Registerkarte öffnen, welche die aktuelle Seite ersetzt
2 = externe Links in einem neuen Fenster öffnen
3 = externe Links in einem neuen TAB im zuletzt aktiven Fenster öffnen


Verhindert dass PopUp's beim öffnen die Größe des Browser-Fenster ändern
dom.disable_window_move_resize = true


Standardmäßig öffnet Firefox Lesezeichen im aktiven Tab. Für Nutzer, welche ihren aktiven Tab nie überschreiben wollen, kann dies lästig sein.
Seit Firefox 57 kann mit zwei neuen Einstellungen das Verhalten geändert werden.

Mit folgender Einstellung werden Lesezeichen in einem neuen Tab geöffnet und fokussiert den gerade geöffneten Tab.
browser.tabs.loadBookmarksInTabs = true 

Wird zusätzlich dieser Eintrag gesetzt, dann öffnet Firefox die Lesezeichen im Hintergrund,
so dass das Lesezeichen zwar in einem neuen Tab geöffnet wird, der gerade aktive Tab aber im Vordergrund bleibt.
browser.tabs.loadBookmarksInBackground = true


Die mittlere Maustaste bzw. das Mausrad können unter Firefox hinaus für verschiedene Aufgaben benutzt werden. 

Wenn bei einem Mittelklick in ein Textfeld markierter oder kopierter Text eingefügt werden soll:
middlemouse.paste
= true

oder wenn ein Link bei Mittelklick in einem neuen Tab im Hintergrund geöffnet werden soll
browser.tabs.opentabfor.middleclick = true


Suchergebnisse vom Suchfeld rechts oben (falls nicht deaktiviert), zeigt Firefox standardmäßig in dem Tab an, der sich gerade im Vordergrund befindet.
Sollen die Suchergebnisse stattdessen in einer neuen Registerkarte (Tab) erscheinen, muss folgende Variable geändert werden:

browser.search.openintab = true


Viele Seiten verenden HTML5-Videos, wo ein automatischer Start von Videos und Sound möglich ist.

media.autoplay.default = 5

0 = alle Medien automatisch abspielen 
1 = hörbare Medien blockieren 
2 = Fordert den Butzer auf 
5 = Blockiert alle Medien


Um Seiten schneller zu laden, werden diese zwischengespeichert (Cache) und in bestimmten Zeitabständen auf Aktualität geprüft. Dies hat zur Folge, dass Seiten aus dem Cache zwar schneller laden, jedoch auch einmal eine veraltete Versionen der Webseite anzeigen. Wie oft der Cache geprüft werden soll, lässt sich mit diesem Parameter steuern.

browser.cache.check_doc_frequency = 1

0 = Beim jedem Start von Firefox
1 = Bei jedem Zugriff auf die Seite
2 = Cache nie erneuern
3 = Automatisch (Standart)


Moderne Browser beginnen in einigen Situationen bereits mit dem (Vor-) Laden von Webseiten, wenn sich der Mauszeiger über einem Link befindet, also bevor man wirklich klickt.
Damit soll das öffnen von Webseiten beschleunigt werden. Wenn man Verbindungen mit unerwünschten Webservern vermeiden möchte, sollte das Feature deaktiviert werden.

network.http.speculative-parallel-limit = 0
network.dns.disablePrefetch = true
network.prefetch-next = false



Sicherheit 


Mixed Content nennt man die Elemente in HTTPS Webseiten, welche über einen unverschlüsselten HTTP Link referenziert werde. Mit folgender Option erzwingt das Upgrade auf HTTPS auch für alle Inhalte der Webseite wie Bilder, Fonts, usw.
Das Laden von aktiven Inhalten wie Javascript via unverschlüsseltem HTTP ist beim Aufruf von Webseiten via HTTPS im Browser standardmäßig verboten!

security.mixed_content.upgrade_display_content = true

Mit dem HTTPS-First-Mode kann man das Standardverhalten ändern. Wenn man diesen Mode aktiviert, wird Firefox bei Eingabe einer verkürzten URL zuerst die HTTPS Seite probieren und bei einem Fehler automatisch auf die HTTP Version wechseln.

dom.security.https_first = true

Websites, die auf eine verschlüsselte Datenübertragung verzichten, in der Adressleiste mit dem Text "Nicht sicher" erkennbar machen.

security.insecure_connection_text.enabled = true

Als Schutz gegen SSL-Stripe Angriffe sendet der Webserver beim Aufruf einer Webseite einen zusätzlichen HSTS-Header, um dem Browser mitzuteilen, dass diese Website für eine bestimmte Zeit immer via HTTPS aufgerufen werden soll. Das verhindert ein Downgrade auf unverschlüsselte HTTP-Verbindungen. Beim Schließen des Browsers sollte man jedoch alle gespeicherten HSTS-Werte wieder löschen, um die Sicherheit zu erhöhen.

privacy.clearOnShutdown.siteSettings = true


Durch JavaScript ist es möglich bei Webseiten den Rechtsklick zu unterbinden, um nicht an den Quelltext zu kommen.
Jedoch verhindert es auch nützliche Funktionen (wie z.B. Kopieren), gleichzeitig kann über diese Funktion ein spezielles Menü dargestellt werden, welches nach dem deaktivieren nicht mehr angezeigt wird.

dom.event.contextmenu.enabled = false

Standardmäßig nutzt Firefox seinen eigenen Zertifikatsspeicher und bietet damit eine erhöhte Sicherheit gegenüber anderen Browsern.
Unter bestimmten Umständen oder im Unternehmensumfeld ist es jedoch häufig gewünscht, dass Zertifikate aus dem Zertifikatsspeicher des Betriebssystems genutzt werden.
Dieses Feature ist in der ESR Version standardmäßig aktiviert.

security.enterprise_roots.enabled = true

Die Einstellungen kann in den neueren Firefox Versionen unter den "Einstellungen" unter dem Reiter "Allgemein" ganz unten im Menüpunkt "Verbindungs-Einstellungen" vorgenommen werden.
Am Ende über das Häckchen 'DNS über HTTPS aktivieren' kann der jeweilige Anbieter gewählt oder per 'Benutzerdifiniert' angepasst werden.
Als Standard wird Cloudflare vorgeschlagen, welcher mit kooperation von Mozilla einen eigenen DNS-Query (https://mozilla.cloudflare-dns.com/dns-query) zu Verfügung stellt.
Dieser hat eine andere (strengere) Datenschutzrichtlinie als der allgemeine Cloudflare-DoH-Server (https://developers.cloudflare.com/1.1.1.1/commitment-to-privacy/privacy-policy/firefox)


Weitere DNS-over-HTTPS Server

SecureDNS, Foundation for Applied Privacy, Quad9, AdGuard, CleanBrowsing, Cloudflare 



Update


Firefox bietet dem User die Möglichkeit jederzeit zwischen den einzelnen Updatekanälen hin und her zu wechseln:  
Release - Extended Support Release (ESR) - Beta - Nightly

Bei den Versionen (Beta, Aurora und Nightly) handelt es sich um Testversionen, die teilweise nicht stabil laufen

Im Installationspfad von Firefox
\ Program Files \ Mozilla Firefox \ defaults \ pref
liegt die Datei channel-prefs.js, in welcher man den Eintrag 'pref("app.update.channel", "release");' auf den gewünschten Kanal setzen kann.
Firefox selbst sollte dabei geschlossen sein!