Lese-Ansicht

Es gibt neue verfügbare Artikel. Klicken Sie, um die Seite zu aktualisieren.

Mozilla veröffentlicht Firefox 125 für Android

Mozilla hat Firefox 125 für Android veröffentlicht. Dieser Artikel beschreibt die Neuerungen von Firefox 125 für Android.

Download Firefox für Android im Google Play Store

Neuerungen von Firefox 125 für Android

Firefox berücksichtigt nun auch in sogenannten „Custom Tabs“, ob ein helles oder dunkles Farbschema genutzt wird. Die Schaltfläche zum Öffnen einer PDF-Datei in einer anderen App wird nicht länger angezeigt, wenn Firefox als Standard-Anwendung für PDF-Dateien konfiguriert ist.

Dazu kommen wie immer neue Plattform-Features der aktuellen GeckoView-Engine, diverse Fehlerbehebungen, geschlossene Sicherheitslücken sowie Verbesserungen unter der Haube.

Der Beitrag Mozilla veröffentlicht Firefox 125 für Android erschien zuerst auf soeren-hentzschel.at.

Sprachmodelle (LLMs) lokal ausführen

ChatGPT, Copilot & Co. verwenden Large Language Models (LLMs). Diese werden auf leistungsstarken Servern ausgeführt und als Cloud-Services angeboten. Das funktioniert wunderbar. Aber nicht jeder will Daten, Text und Code ständig in die Cloud hochladen. Kann man also — mit »gewöhnlicher« Hardware — LLMs auch lokal ausführen?

Tatsächlich ist das verblüffend einfach. Das Tool der Wahl heißt Ollama. Was Docker für Container ist, ist Ollama für LLMs!

Ollama kann ziemlich mühelos unter Linux, macOS und Windows installiert werden. Unter Windows und macOS starten Sie Ollama als Hintergrunddienst mit einer winzigen grafischen Oberfläche (im Prinzip nur ein Icon, das den Status anzeigt). Unter Linux richten Sie den Dienst mit systemctl ein:

systemctl enable --now ollama
Ollama läuft im Terminal, kann aber auch per API genutzt werden (z.B. zur Realisierung einer Web-Schnittstelle).

Ollama anwenden

Jetzt können Sie Ollama mit dem gleichnamigen Kommando im Terminal ausführen. Mit ollama run <llmname> installieren Sie eines der öffentlich verfügbaren Sprachmodelle (mehr dazu im nächsten Abschnitt) und können dann im Textmodus Kommandos ausführen:

ollama run llama2

>>> I need a regex to verify a date in US format. Can you help?

Of course! To match a date in the format of "MM/DD/YYYY" (month-day-year) 
or "MM/DD/YYYY HH:MM AM/PM", you can use the following regular expression:

\b(\d{1,2}/\d{1,2}/\d{4})|(\d{1,2}/\d{1,2}/\d{4} \d{0,2})?\b

Here's a breakdown of how this regex works:

* \b: Matches a word boundary (the start or end of a word) to ensure 
  we're matching the entire date field.

* (\d{1,2}/\d{1,2}/\d{4}): Matches the month/day/year format. The 
  (\d{1,2}) captures the month and day as individual digits (0-2 
  digits for the month and 1-2 digits for the day). The / separates 
  the date components.

* |: Or, used to match the alternative format.

* (\d{1,2}/\d{1,2}/\d{4} \d{0,2})?: Matches the month/day/year with 
  time format. The (\d{1,2}) captures the month and day as individual 
  digits (0-2 digits for the month and 1-2 digits for the day). The / 
  separates the date components. The \d{0,2} matches the time component 
  (0-2 digits representing the hour and minute).

* \b: Matches a word boundary to ensure we're matching the entire date field again.

Note that this regex will match both US and international dates in the 
"MM/DD/YYYY" format, as well as dates in the "MM/DD/YYYY HH:MM AM/PM" 
format. If you need a more specific format (e.g., only US dates), 
feel free to modify the regex accordingly.

Manche Sprachmodelle können auch Deutsch (nochmals llama2), wenngleich die sprachliche Qualität mitunter nur mittelmäßig ist.

>>> Was ist der Dopplereffekt?

Der Dopplereffekt ist ein physikalischer Effekt, der durch die Beugung von
Lichtwellen verursacht wird, wenn diese durch eine mediummässige Materie
passt. In einer bestimmten Umgebung oder Situation kann das Licht, das durch
eine bestimmte Fläche oder ein Objekt passt, sich "verlangsamen" und eine
Dopplereffekthelligkeit erzeugen.

Der Dopplereffekt ist ein spezifischer Effekt, der auf der Beugung von
Lichtwellen basiert. Wenn Licht durch ein Medium passt, wird es durch die Faser
des Mediums beugt und umgestaltet. Die Intensität des Lichts, das durch ein
Medium passt, kann sich durch den Dopplereffekt ändern.

Im Alltag können wir den Dopplereffekt beispielsweise bei der Anähnlichkeit von
Objekten in einer Ferne sehen. Wenn ein Auto oder eine andere Objekte in der
Ferne auf uns zukommt, wird es durch die Luft des Raumes beugt und erscheint
größer und weiter weg, als es tatsächlich ist.

Der Dopplereffekt kann auch in anderen Bereichen wie der Optik, Elektrotechnik
oder Medizin verwendet werden. Zum Beispiel können Dopplereffekte in der
Medizin verwendet werden, um die Blutungen in einem Körperteil zu bestimmen.

Es gibt verschiedene Arten von Dopplereffekten, darunter:

* LichtDopplereffekt: Der Effekt, den das Licht erzeugt, wenn es durch ein
  Medium passt.
* ZeitDopplereffekt: Der Effekt, den die Zeit erzeugt, wenn sie durch ein
  Objekt oder eine bestimmte Umgebung verändert wird.
* Räumliche Dopplereffekte: Der Effekt, den die räumliche Position von Objekten
  oder der Standort eines Beobachters auf die Erscheinung des Dopplereffekts
  ausübt.

Insgesamt ist der Dopplereffekt ein interessanter und wichtiger
physikalischerEffekt, der in vielen Bereichen der Wissenschaft und Technologie
Verwendung findet.

Ollama stellt seine Funktionen über eine REST-API zur Verfügung und kann somit lokal auch durch eigene Scripts und Editor-Plugins (z.B. Continue für VSCode) genutzt werden. Natürlich gibt es auch Module/Bibliotheken für diverse Sprachen, z.B. für Python.

Öffentliche Sprachmodelle

Die bekanntesten Sprachmodelle sind zur Zeit GPT-3.5 und GPT-4. Sie wurden von der Firma openAI entwickelt und sind die Basis für ChatGPT. Leider sind die aktellen GPT-Versionen nicht öffentlich erhältlich.

Zum Glück gibt es aber eine Menge anderer Sprachmodelle, die wie Open-Source-Software kostenlos heruntergeladen und von Ollama ausgeführt werden können. Gut geeignet für erste Experimente sind llama2, gemma und mistral. Einen Überblick über wichtige, Ollama-kompatible LLMs finden Sie hier:

https://ollama.com/library

Noch viel mehr LLMs finden Sie auf HuggingFace, einer öffentlichen Plattform für KI-Forscher und -Anwender:

https://huggingface.co/models

Viele Sprachmodelle stehen in unterschiedlicher Größe zur Verfügung. Die Größe wird in der Anzahl der Parameter gemessen (7b = 7 billions = 7 Milliarden). Die Formel »größer ist besser« gilt dabei nur mit Einschränkungen. Mehr Parameter versprechen eine bessere Qualität, das Modell ist dann aber langsamer in der Ausführung und braucht mehr Platz im Arbeitsspeicher. Die folgende Tabelle gilt für llama2, einem frei verfügbaren Sprachmodell der Firma Meta (Facebook & Co.).

Name.        Parameter     Größe
----------  ----------  --------
llama2           7 Mrd.     4 GB
llama2:13b      13 Mrd.     7 GB
llama2:70b      70 Mrd.    39 GB

Wenn Sie llama2:70b ausführen wollen, sollte Ihr Rechner über 64 GB RAM verfügen.

Bildverarbeitung

Ollama kann aber auch KI-Modelle zur Bildverarbeitung ausführen, z.B. LLaVA (siehe https://ollama.com/blog/vision-models).

ollama run llava:13b

>>> describe this image: raspap3.jpg 

Added image 'raspap3.jpg' 

The image shows a small, single-board computer like the Raspberry Pi 3, which is 
known for its versatility and uses in various projects. It appears to be connected 
to an external device via what looks like a USB cable with a small, rectangular
module on the end, possibly an adapter or expansion board. This connection
suggests that the device might be used for communication purposes, such as
connecting it to a network using an antenna. The antenna is visible in the
upper part of the image and is connected to the single-board computer by a
cable, indicating that this setup could be used for Wi-Fi or other wireless
connectivity.

The environment seems to be an indoor setting with wooden flooring, providing a
simple and clean background for the electronic components. There's also a label
on the antenna, though it's not clear enough to read in this image. The setup
is likely part of an electronics project or demonstration, given the simplicity
and focus on the connectivity equipment rather than any additional peripherals
or complex arrangements.

Eigentlich eine ganz passable Beschreibung für das folgende Bild!

Auf dem Bild ist ein Raspberry Pi 3B+ mit angeschlossenem USB-WLAN-Adapter und Netzwerkkabel zu sehen. Der WLAN-Adapter ist über einen der USB-Ports verbunden, während das gelbe Ethernet-Kabel in den LAN-Port eingesteckt ist. Der Raspberry Pi wird zusätzlich über ein schwarzes Micro-USB-Kabel mit Strom versorgt.
Raspberry Pi 3B+ mit USB-WLAN-Adapter

Praktische Erfahrungen, Qualität

Es ist erstaunlich, wie rasch die Qualität kommerzieller KI-Tools — gerade noch als IT-Wunder gefeiert — zur Selbstverständlichkeit wird. Lokale LLMs funktionieren auch gut, können aber in vielerlei Hinsicht (noch) nicht mit den kommerziellen Modellen mithalten. Dafür gibt es mehrere Gründe:

  • Bei kommerziellen Modellen fließt mehr Geld und Mühe in das Fine-Tuning.
  • Auch das Budget für das Trainingsmaterial ist größer.

  • Kommerzielle Modelle sind oft größer und laufen auf besserer Hardware. Das eigene Notebook ist mit der Ausführung (ganz) großer Sprachmodelle überfordert. (Siehe auch den folgenden Abschnitt.)

Wodurch zeichnet sich die geringere Qualität im Vergleich zu ChatGPT oder Copilot aus?

  • Die Antworten sind weniger schlüssig und sprachlich nicht so ausgefeilt.
  • Wenn Sie LLMs zum Coding verwenden, passt der produzierte Code oft weniger gut zur Fragestellung.

  • Die Antworten werden je nach Hardware viel langsamer generiert. Der Rechner läuft dabei heiß.

  • Die meisten von mir getesteten Modelle funktionieren nur dann zufriedenstellend, wenn ich in englischer Sprache mit ihnen kommunizieren.

Die optimale Hardware für Ollama

Als Minimal-Benchmark haben Bernd Öggl und ich das folgende Ollama-Kommando auf diversen Rechnern ausgeführt:

ollama run  llama2 "write a python function to extract email addresses from a string" --verbose

Die Ergebnisse dieses Kommandos sehen immer ziemlich ähnlich aus, aber die erforderliche Wartezeit variiert beträchtlich!

Lenovo T16, Linux. 12th Gen Intel i5-1250P cores=12, 32 GiB RAM, Alder Lake-P Integrated Graphics Controller

total duration:       4m7.981004535s
load duration:        979.201µs
prompt eval count:    31 token(s)
prompt eval duration: 3.061771s
prompt eval rate:     10.12 tokens/s
eval count:           478 token(s)
eval duration:        4m4.913456s
eval rate:            1.95 tokens/s

Lenovo P1 (2018), Linux. Intel i8750H 6 cores / 12 threads, 32 GiB RAM, NVIDIA Quadro P1000

Die GPU wurde von Ollama mangels geeigneter Treiber nicht genutzt.

total duration:       1m48.168754835s
load duration:        204.369µs
prompt eval duration: 146.12ms
prompt eval rate:     0.00 tokens/s
eval count:           629 token(s)
eval duration:        1m48.021933s
eval rate:            5.82 tokens/s 

MacBook Air 2020, M1, 8GiB RAM

total duration:       52.303529042s
load duration:        4.741221334s
prompt eval count:    31 token(s)
prompt eval duration: 331.908ms
prompt eval rate:     93.40 tokens/s
eval count:           567 token(s)
eval duration:        47.211456s
eval rate:            12.01 tokens/s

MacBook Air M2 2023, 24 GB

total duration:       35.853232792s
load duration:        5.297790333s
prompt eval count:    32 token(s)
prompt eval duration: 211.272ms
prompt eval rate:     151.46 tokens/s
eval count:           617 token(s)
eval duration:        30.343375s
eval rate:            20.33 tokens/s

MacBook Pro M3 Pro 2023, 36 GB

total duration:       28.392226667s
load duration:        5.532561667s
prompt eval count:    31 token(s)
prompt eval duration: 119.313ms
prompt eval rate:     259.82 tokens/s
eval count:           667 token(s)
eval duration:        22.740198s
eval rate:            29.33 tokens/s 

Grundsätzlich kann Ollama GPUs nutzen (siehe auch hier). Im Detail hängt es wie immer vom spezifischen Modell, von den installierten Treibern usw. ab. Wenn Sie unter Linux mit einer NVIDIA-Grafikkarte arbeiten, müssen Sie auch CUDA-Treiber installieren. Beachten Sie auch, dass große Sprachmodelle sowieso nicht in den Speicher der Grafikkarte passen.

Apple-Rechner mit M1/M2/M3-CPUs sind für Ollama aus zweierlei Gründen ideal: Es gibt keinen Ärger mit Treiber, und der gemeinsame Speicher für CPU/GPU ist vor allem bei der Ausführung großer Sprachmodelle praktisch. Außerdem bleibt der Rechner lautlos, wenn Sie Ollama nicht ununterbrochen mit neuen Abfragen beschäftigen.

Zum Schluss noch eine Bitte: Falls Sie Ollama auf Ihrem Rechner installiert haben, posten Sie bitte Ihre Ergebnisse im Forum!

Quellen/Links

Tor Browser 13.0.14 – Mullvad Browser 13.0.14

Ab sofort kannst Du Tor Browser 13.0.14 herunterladen oder bestehende Installationen aktualisieren. Aktuelle Versionen des Browsers aktualisieren sich selbst. Hier siehst Du, wie das bei mir abläuft. Tor Browser 13.0.14 bringt wichtige Sicherheits-Updates bezüglich Firefox mit sich. Ein Bugfix beschäftigt sich mit Fingerprinting, beziehungsweise ist eine Schutzmaßnahme gegen Fingerprinting. Bei der neuesten Version wurde Tor auf 0.4.8.11 aktualisiert. Für Linux, macOS und Windows basiert Tor Browser 13.0.14 auf Firefox 115.10.0esr. Für Android wurde die Software auf GeckoView 115.10.0esr aktualisiert. Für […]

Der Beitrag Tor Browser 13.0.14 – Mullvad Browser 13.0.14 ist von bitblokes.de.

Mozilla veröffentlicht Firefox 125

Mozilla hat Firefox 125 für Windows, Apple macOS und Linux veröffentlicht. Dieser Artikel fasst die wichtigsten Neuerungen zusammen – wie immer auf diesem Blog weit ausführlicher als auf anderen Websites.

Download Mozilla Firefox für Microsoft Windows, Apple macOS und Linux

Weitere Verbesserungen von Firefox View

Die mit Firefox 106 eingeführte und mit Firefox 119 stark verbesserte Funktion Firefox View hatte mit Firefox 123 eine Suchfunktion sowie verbesserte Performance erhalten. Firefox 124 brachte die Möglichkeit, im Reiter der offenen Tabs diese wahlweise nach der neuesten Aktivität oder nach der Tab-Reihenfolge zu sortieren. Mit Firefox 125 folgen weitere Verbesserungen.

So werden ab sofort auch angeheftete Tabs im Reiter der offenen Tabs angezeigt. Darüber hinaus wurden diverse Indikatoren hinzugefügt. So lässt sich beispielsweise erkennen, ob ein Tab auch als Lesezeichen existiert oder ob in diesem gerade etwas wiedergegeben wird. Über das entsprechende Lautsprecher-Symbol lässt sich der Tab direkt stumm und wieder laut schalten. Auch ein Schließen-Button wurde an dieser Stelle ergänzt, um Tabs direkt aus Firefox View heraus mit einem Klick weniger schließen zu können.

Firefox 125

Einfacheres Navigieren zu URLs in Zwischenablage

Befindet sich eine URL in der Zwischenablage und die Adressleiste wird fokussiert, schlägt Firefox diese jetzt direkt vor. Wird die Seite nicht aufgerufen, schlägt Firefox diese beim nächsten Fokussieren aber nicht erneut vor, sodass nicht die ganze Zeit eine URL vorgeschlagen wird, die nicht besucht werden soll.

Firefox 125

Textstellen in PDF-Dateien hervorheben

Der PDF-Betrachter von Firefox wurde um eine Funktion erweitert, um Textstellen in PDF-Dateien farbig hervorheben zu können.

Firefox 125

Diese Neuerung wird schrittweise im Laufe der kommenden Wochen für alle Nutzer ausgerollt werden.

Sonstige Endnutzer-Neuerungen von Firefox 125

Die Einstellungen können wie bisher auch via about:preferences geöffnet werden, zusätzlich aber auch via about:settings, wie man es aus Chromium-basierten Browsern kennt.

Die lokale Übersetzungsfunktion funktioniert nun besser bei Textstellen mit unsichtbaren HTML-Elementen innerhalb von Sätzen.

Werden Tab-Umgebungen genutzt (beispielsweise über eine Erweiterung) lassen sich über die Adressleiste (Eingabe von „%”) jetzt auch Tabs in anderen Umgebungen durchsuchen.

Nutzern in den USA und Kanada bietet Firefox beim Absenden eines Adressformulars jetzt an, Adressen zu speichern, um diese dann zukünftig in Formularen vorzuschlagen.

Das Setzen von Firefox aus dem Microsoft Store als Standardbrowser für alle relevanten Dateitypen mit nur einem Klick wurde wieder aktiviert.

Mehr Sicherheit für Firefox-Nutzer

Auch in Firefox 125 wurden wieder mehrere Sicherheitslücken geschlossen. Alleine aus Gründen der Sicherheit ist ein Update auf Firefox 125 daher für alle Nutzer dringend empfohlen.

Firefox blockiert jetzt standardmäßig alle Downloads, die über http:// anstelle von https:// erfolgen. Bisher war dies nur bei http://-Downloads auf https://-Websites der Fall. Wie gehabt kann der Nutzer nach expliziter Bestätigung den Download auf Wunsch durchführen.

Außerdem gab es weitere Verbesserungen des Schutzes vor IDN-Spoofing, bei dem bestimmte Zeichen in der Adressleiste vortäuschen, man würde sich auf einer vertrauenswürdigen Domain befinden.

Verbesserungen der Webplattform

Firefox unterstützt AV1 jetzt auch für Encrypted Media Extensions (EME), womit Anbieter von Streaming-Plattformen Gebrauch von diesem modernen Video-Codec machen können.

Die spannendste Ergänzung der Webplattform auf HTML-Ebene ist die Unterstützung des popover-Attributs.

In einer Gruppe von Radio-Buttons ohne aktive Auswahl erreicht die Tab-Taste jetzt genau wie bei einer Gruppe mit aktiver Auswahl nur noch die erste Option statt jede einzelne Option. Zwischen den einzelnen Optionen kann wie gehabt mit den Pfeiltasten navigiert werden.

In CSS funktioniert die Eigenschaft align-content jetzt auch für Block-Elemente und nicht länger nur in Flex- oder Grid-Elementen. Und transform-box unterstützt jetzt auch content-box und stroke-box als Werte.

JavaScript wurde um die Unterstützung für Intl.Segmenter sowie navigator.clipboard.readText() ergänzt.

WebAssembly-Module (Wasm-Module) können nun mehrere unabhängige Linearspeicher verwenden. Mehrere Speicher ermöglichen eine effizientere Interoperabilität zwischen Modulen und bessere Polyfills für kommende Wasm-Standards.

Weitere Neuerungen für Entwickler von Websites lassen sich in den MDN Web Docs nachlesen.

Firefox 125.0.1

Wegen eines Fehlers, der verursachte, dass Nutzer von Apple macOS ohne Administrator-Rechte Firefox nicht aktualisieren konnten, wurde Firefox 125.0 überspringen und durch Firefox 125.0.1 ersetzt, der diesen Fehler behoben hat.

Der Beitrag Mozilla veröffentlicht Firefox 125 erschien zuerst auf soeren-hentzschel.at.

VirtualBox 7.0.16 – anfängliche Unterstützung für Linux 6.8 und 6.9

Die neueste Version der kostenlosen Virtualisierungs-Software VirtualBox 7.0.16 ist eine Wartungs-Version und bringt daher keine allzu großen Neuerungen mit sich. Nennenswert ist allerdings die anfängliche Unterstützung für Linux-Kernel 6.9 (Linux Host und Gast) und 6.8 (Linux-Gast-Erweiterungen). Die Unterstützung für Linux-Kernel 6.8 bedeutet, dass Du ab sofort auch Distributionen innerhalb einer virtuellen Maschine betreiben kannst, die Kernel 6.8 einsetzen. Die anfängliche Unterstützung für Kernel 6.9 bedeutet, dass Du VirtualBox auch auf Computern installieren kannst, die mit Linux 6.9 laufen. Für Linux […]

Der Beitrag VirtualBox 7.0.16 – anfängliche Unterstützung für Linux 6.8 und 6.9 ist von bitblokes.de.

Linux Q&A - Hauke und Jean beantworten Eure Fragen! - Live

💾

Heute Abend klären wieder Hauke und Jean Deine Fragen live! Wenn Du das Video unterstützen willst, dann gib bitte eine Bewertung ab, und schreibe einen Kommentar. Vielen Dank! -------------------- Links: 20. Augsburger Linux-Infotag: https://www.luga.de/static/LIT-2024/ Frage stellen: https://ask.linuxguides.de Forum: https://forum.linuxguides.de/ Haukes Webseite: https://goos-habermann.de/index.php Nicht der Weisheit letzter Schluß: youtube.com/@nichtderweisheit Linux Guides Admin: https://www.youtube.com/@LinuxGuidesAdmin-xw6fd Professioneller Linux Support*: https://www.linuxguides.de/linux-support/ Linux Mint Kurs für Anwender*: https://www.linuxguides.de/kurs-linux-mint-fur-anwender/ Ubuntu Kurs für Anwender*: https://www.linuxguides.de/ubuntu-kurs-fuer-anwender/ Linux für Fortgeschrittene*: https://www.linuxguides.de/linux-kurs-fuer-fortgeschrittene/ Offizielle Webseite: https://www.linuxguides.de Tux Tage: https://www.tux-tage.de/ Forum: https://forum.linuxguides.de/ Unterstützen: http://unterstuetzen.linuxguides.de Twitter: https://twitter.com/LinuxGuides Mastodon: https://mastodon.social/@LinuxGuides Matrix: https://matrix.to/#/+linuxguides:matrix.org Discord: https://www.linuxguides.de/discord/ Kontakt: https://www.linuxguides.de/kontakt/ BTC-Spende: 1Lg22tnM7j56cGEKB5AczR4V89sbSXqzwN Haftungsausschluss: ------------------------------------- Das Video dient lediglich zu Informationszwecken. Wir übernehmen keinerlei Haftung für in diesem Video gezeigte und / oder erklärte Handlungen. Es entsteht in keinem Moment Anspruch auf Schadensersatz oder ähnliches. *): Werbung

Mozilla veröffentlicht Firefox Klar 125 für Android

Firefox Klar ist ein spezialisierter Privatsphäre-Browser. Nun hat Mozilla Firefox Klar 125 für Android veröffentlicht.

Download Mozilla Firefox Klar für Google Android

Mozilla hat Firefox Klar 125 (internationaler Name: Firefox Focus 125) für Android veröffentlicht.

Die Neuerungen von Firefox Klar 125 für Android

Bei Firefox Klar 125 handelt es sich um ein Wartungs-Update, bei welchem der Fokus auf Fehlerbehebungen und Verbesserungen unter der Haube lag. Dazu kommen wie immer neue Plattform-Features der aktuellen GeckoView-Engine sowie geschlossene Sicherheitslücken.

Der Beitrag Mozilla veröffentlicht Firefox Klar 125 für Android erschien zuerst auf soeren-hentzschel.at.

Mozilla Didthis: Webversion von digitalem Tagebuch verfügbar

Didthis von Mozilla ist eine Art digitales Tagebuch für Hobbys und Projekte, deren Fortschritte man entweder für sich persönlich festhalten oder mit anderen Menschen teilen kann. Neben der App für Apple iOS, macOS und visionOS gibt es mittlerweile auch eine Webversion, die auf jeder Plattform funktioniert.

Im Januar hatte ich bereits über Didthis berichtet, eine neue App vom Mozilla Innovation Studio. Nach Aussage von Mozilla geht es bei Hobbys nicht nur um das Endergebnis, sondern auch um den Weg dahin. Mit Didthis können Nutzer die Fortschritte ihres Hobbys in Form von Texten, Bildern und Links festhalten. Es ist also eine Art digitales Tagebuch für persönliche Projekte. Die Fortschritte kann man entweder für sich behalten oder über eine URL mit anderen Menschen teilen. Dabei verzichtet Mozilla ganz bewusst auf die typischen Social Media-Regeln. Beispielsweise sind alle Inhalte standardmäßig privat.

Damals stand die App für Apple iOS, macOS und visionOS noch ausschließlich als Betaversion über Testflight zur Verfügung. Seit Februar gibt es Version 1.0 der App für Nutzer in den USA und Kanada offiziell im Apple App Store. Nutzer in anderen Ländern sowie Android-Nutzer müssen sich noch etwas gedulden.

Mozilla Didthis App Preview

Seit März gibt es über die Website von Didthis aber auch eine Webversion. Damit steht Didthis weltweit auch für Nutzer zur Verfügung, welche ein Android-Smartphone oder -Tablet nutzen, oder für Nutzer, die Didthis gerne am Desktop ganz einfach im Browser verwenden wollen.

Mozilla Didthis

Der Beitrag Mozilla Didthis: Webversion von digitalem Tagebuch verfügbar erschien zuerst auf soeren-hentzschel.at.

Lakka 5.0 – Retro-Spielekonsole – Raspberry Pi 5 unterstützt

Ab sofort gibt es mit Lakka 5.0 die neuste Version der speziellen Linux-Distribution. Es ist eine schlanke Linux-Distribution, die einen kleinen Computer in eine vollwertige Retrogaming-Konsole verwandelt. Seit Version 4.3 gibt es einige nennenswerte Änderungen und Neuerungen. Lakka 5.0 basiert etwa auf dem Build-System von LibreELEC 11.0. Weitere Neuerungen und Änderungen in Lakka 5.0 Das Team hat RetroArch auf Version 1.17.0 aktualisiert. Mesa ist als Version 24.0.4 vorhanden. Ebenso gibt es aktualisierte Linux-Kernel. Das sind: Die entsprechenden Systeme und Emulatoren […]

Der Beitrag Lakka 5.0 – Retro-Spielekonsole – Raspberry Pi 5 unterstützt ist von bitblokes.de.

Viele neue Funktionen für Website-Builder Solo von Mozilla

Solo ist ein Ende des vergangenen Jahres vom Mozilla Innovation Studio angekündigter Website-Builder, der auf Künstliche Intelligenz (KI) und einen maximal einfachen Erstellungsprozess setzt. Mittlerweile gibt es einige Neuerungen.

Im Rahmen der Innovation Week im Dezember 2023 hatte das Mozilla Innovation Studio Solo angekündigt. Dabei handelt es sich um einen sogenannten Website-Builder mit Fokus auf Selbständige, der auf generative Künstliche Intelligenz für einen maximal einfachen Erstellungsprozess setzt.

Jetzt Website-Builder Solo von Mozilla testen

Seit dem Start hat Mozilla einige Funktionen ergänzt, darunter das Hochladen eigener Bilder, eine optionale Verknüpfung mit Google Analytics, die Möglichkeit benutzerdefinierter Links im Header und Footer, Sitemap-Unterstützung für eine bessere Suchmaschinen-Sichtbarkeit, Formatierungsoptionen in weiteren Textbereichen, neue dunkle Themes, eine verbesserte Performance und noch mehr. Die vollständigen Release Notes seit der initialen Ankündigung:

0.8 (Jan 30, 2024)

  • Support for uploading your own images. JPG, GIF, PNG supported. 25 image limit per site. 15MB limit per image
  • Support for uploading a custom logo image
  • Connect a Google Analytics account for tracking website visitors
  • Added ability to zoom and crop images for the Intro and Services sections of the site
  • Fixed some color palette bugs
  • Added a What’s New link to the Account menu
  • Added support for custom header navigation links. Add external or in-page links
  • Added Solo sitemap support for improved Google SEO
  • Fixed numerous other smaller bugs

0.9 (Mar 1, 2024)

  • Rich text support in the Intro, Services and Text Banner sections. You can now add links, bullets, bold or otherwise customize the text in most sections of your site
  • New dark color themes per significant user request
  • Websites have been expanded to full width and simply look prettier
  • Improved page speed and less flickers
  • Image editor now available in the Services section
  • Select Spanish or French as the default language for the Contact form
  • Support for multiple image upload
  • Text banner and Services section now allow you to add buttons
  • Heading section links can now properly link to phone numbers
  • Scale the size of your custom logo
  • Squashed numerous other little bugs

0.91 (Apr 11, 2024)

  • Added support for custom links in the footer of your website
  • New websites generate substantially faster
  • Lots and lots of visual and minor bug fixes

Die Nutzung von Solo ist kostenlos. In Zukunft könnten gegen eine monatliche Gebühr aber auch zusätzliche Funktionen bereitgestellt werden.

Der Beitrag Viele neue Funktionen für Website-Builder Solo von Mozilla erschien zuerst auf soeren-hentzschel.at.

Linux Mint 22 mit sinnvollen Neuerungen, Schleswig Holstein setzt auf Linux & mehr - News

💾

Wenn Du das Video unterstützen willst, dann gib bitte eine Bewertung ab, und schreibe einen Kommentar. Vielen Dank! Links: ------------------------------------- Linux Mint Fast Repositories: https://blog.linuxmint.com/?p=4671 Libre Workspace im April 2024: https://www.youtube.com/live/uk9oSfwhkxg?si=fK8aIbFgliafcmIO Libre Office Writer Crashkurs: https://youtu.be/QyakKLNv7Yg?si=UeTTtSIUzCALep-E Libre Office Calc Crashkurs: https://youtu.be/ioAxN27CIUA?si=TSMfYh81Jll_8NPP Linux-Guides Merch*: https://linux-guides.myspreadshop.de/ Professioneller Linux Support*: https://www.linuxguides.de/linux-support/ Linux-Arbeitsplatz für KMU & Einzelpersonen*: https://www.linuxguides.de/linux-arbeitsplatz/ Linux Mint Kurs für Anwender*: https://www.linuxguides.de/kurs-linux-mint-fur-anwender/ Offizielle Webseite: https://www.linuxguides.de Forum: https://forum.linuxguides.de/ Unterstützen: http://unterstuetzen.linuxguides.de Mastodon: https://mastodon.social/@LinuxGuides X: https://twitter.com/LinuxGuides Instagram: https://www.instagram.com/linuxguides/ Kontakt: https://www.linuxguides.de/kontakt/ Inhaltsverzeichnis: ------------------------------------- 0:00 Willkommen 1:00 xz-Lücke - https://linuxnews.de/debian-12-6-wegen-xz-backdoor-verschoben/ 2:30 Neues Linux Mint 22 - https://blog.linuxmint.com/?p=4660 - https://blog.linuxmint.com/?p=4671 9:00 Schleswig Holstein steigt auf Linux um - https://www.schleswig-holstein.de/DE/landesregierung/ministerien-behoerden/I/Presse/PI/2024/CdS/240403_cds_it-arbeitsplatz.html 12:15 Fedora 42 mit KDE als Standard? - https://linuxnews.de/vorschlag-fuer-fedora-42-plasma-als-standard-desktop/ 13:20 Verabschiedung Haftungsausschluss: ------------------------------------- Das Video dient lediglich zu Informationszwecken. Wir übernehmen keinerlei Haftung für in diesem Video gezeigte und / oder erklärte Handlungen. Es entsteht in keinem Moment Anspruch auf Schadensersatz oder ähnliches. *) Werbung

SD-Karten mit 4 TByte Speicher angekündigt

Western Digital hat auf der NAB 2024 einige neue und spannende Technologien sowie Storage-Lösungen angekündigt. Ziemlich beeindruckend finde ich die Ankündigungen von microSD-Karten mit 2 TByte Speicher und SD-Karten mit 4 TByte Platz. Ein Raspberry Pi 5 mit so viel Speicherplatz ist fast schon ein vollwertiger Computer. Wobei man hier anmerken muss, dass es microSD-Karten mit 1,5 TByte bereits gibt und das ebenfalls ordentlich viel Platz ist. Genügend Platz kann man allerdings nie haben und daher ist die Ankündigung von […]

Der Beitrag SD-Karten mit 4 TByte Speicher angekündigt ist von bitblokes.de.

Nun also doch: Mastodon-App Mozilla Social für Android wird weiterentwickelt

Mozilla hat eine überraschende Korrektur einer erst kürzlich erfolgten Entscheidung vorgenommen: Mit Mozilla Social wird nun doch innerhalb von Mozilla weiter an einer eigenen Mastodon-App für Android gearbeitet.

Bereits seit Sommer des vergangenes Jahres arbeitet Mozilla mit Mozilla Social an einer Android-App für die dezentrale soziale Plattform Mastodon. Im Februar wurde in Zusammenhang mit einer internen Umstrukturierung innerhalb Mozillas beschlossen, die geplanten Mastodon-Apps für Android und iOS nicht fortzuführen. Aus Mozilla Social wurde Firefly – von den gleichen Entwicklern bereitgestellt, aber als privates Nebenprojekt und nicht länger als Teil von Mozillas Portfolio.

Nun scheint ein Umdenken stattgefunden zu haben. Denn die Mastodon-App wird wieder als Projekt von Mozilla fortgeführt. Die Änderungen, welche seit Februar innerhalb des Firefly-Projekts durchgeführt wurden, wurden abzüglich der Branding-Änderungen bereits in das wiedereröffnete Repository von Mozilla Social importiert.

Eine neue Version von Mozilla Social für Android zum Herunterladen gibt es aber noch nicht. Die letzte Version, welche via GitHub zum Download bereitgestellt wird, ist also noch auf dem Stand vom 13. Februar. Wann es neue Builds geben wird, ist zu diesem Zeitpunkt noch unklar. Die automatische Generierung neuer Builds ist aktuell noch deaktiviert.

Update 16.04.2024: Ab sofort gibt es wieder neue Builds auf GitHub.

Bezüglich einer Mastodon-App für iOS deutet sich momentan keine Änderung an. Die Arbeiten an einer ganz eigenen Mastodon-App waren nie so weit fortgeschritten wie bei Android und auch das Repository des Ice Cubes-Forks ist nach wie vor archiviert. Allerdings ist Mozilla auch Hauptinvestor der Mastodon-App Mammoth für iOS.

In eigener Sache: Dieser Blog auf Mastodon

Auch dieser Blog ist auf Mastodon vertreten. Wer mir folgen möchte, findet mich unter dem Namen @s_hentzschel@mozilla.social.

Der Beitrag Nun also doch: Mastodon-App Mozilla Social für Android wird weiterentwickelt erschien zuerst auf soeren-hentzschel.at.

ClamTk nach über 20 Jahren eingestellt

Der Entwickler von ClamTk hat angekündigt, dass er das Projekt nach über 20 Jahren Pflege einstellt. Um es gleich vorwegzunehmen. ClamTk wurde als benutzerfreundliches Frontend für ClamAV entwickelt. ClamAV wird weiter entwickelt und auch gewartet, nur das unabhängig davon entwickelte Frontend wird nicht mehr gepflegt. Der Entwickler gibt einige Gründe an, warum er das Projekt nicht weiterführen möchte und die hören sich ziemlich frustriert an, wenn ich ehrlich bin. Hier eine grobe Übersetzung davon: Laut eigenen Aussagen könnte er noch […]

Der Beitrag ClamTk nach über 20 Jahren eingestellt ist von bitblokes.de.

Raspberry Pi: Umzug von SD-Karte auf SSD in wenigen Schritten

Der Raspberry Pi hat sich in den letzten Jahren von einem kleinen Minicomputer für Bastler und Nerds zu einem vollwertigen und verhältnismäßig leistungsfähigem Rechner entwickelt. Nicht wenige Anwender freuen sich darüber, für wenig Geld einen vollwertigen Miniserver zu bekommen. 

Beim Einsatz des Raspberry Pi für den produktiven Einsatz als Server ist zu beachten, dass auch die angeschlossene Hardware hierfür geeignet sein sollte. Ein Gehäuse, bei dem er Pi überhitzt, ist genau so schädlich wie eine SD-Karte als Festplatte, da diese nicht für den Dauerbetrieb geeignet ist.

Durch den Einsatz rund um die Uhr gibt es sehr viele Schreib- und Lesevorgänge auf der SD-Karte. Hierfür sind diese Karten aber nur bedingt geeignet. Bei den ersten Raspberry Pi Generationen hatte ich sehr häufig Datenverlust, weil die SD-Karte den Geist aufgegeben hat. 

Inzwischen läuft auf dem Pi bei mir eine Instanz von Home Assistant. Hier werden rund um die Uhr Daten aufgezeichnet und Automationen ausgeführt. Auch andere Dienste laufen hier, von denen ich keinen Ausfall erleiden möchte. 

Außerdem sind die Lese- und Schreibgeschwindigkeiten einer SD-Karte sehr limitiert. Eine moderne SSD ist um ein Vielfaches schneller. Das wird vor allem dann deutlich, wenn man in Home Assistant Datenmengen abfragt, z.B. Diagramme anzeigt. Ladezeiten von mehreren Sekunden sind dann keine Seltenheit.

Die Konsequenz daraus ist, dass ich den Raspberry von einer SD-Karte auf eine SSD-Karte umziehen möchte. Dadurch, dass hier ein Produktivsystem läuft, möchte ich alle Installationen, Daten und Einstellungen möglichst verlustfrei auf das neue Medium umziehen. Wie ich das gemacht habe, erfahrt hier in folgendem Tutorial.

Schritt 0: Geschwindigkeit testen (optional)

Um einen Geschwindigkeitsvorteil in messbare Größen zu fassen, kann man als Referenz einen Geschwindigkeitstest der SD-Karte machen. Mit dem folgenden Befehl werden Beispieldateien geschrieben. Der Befehl gibt aus, wie schnell die Geschwindigkeit dabei war. 

$ dd if=/dev/zero of=/tmp/speedtest1.img bs=20MB count=5
5+0 records in
5+0 records out
100000000 bytes (100MB, 95 MiB) copied, 11.9403 s, 8.4 MB/s

Wenn der Umzug fertig ist, kann man diesen Test wiederholen. Bei mir kam ich von ca. 8,4 MB/s Schreibgeschwindigkeit auf 168 MB/s. Das hat sich mal gelohnt!

Schritt 1: SSD erstmals anschließen

In meinem Fall handelt es sich um eine externe SSD, die über USB 3.0 angeschlossen wird. Nachdem ich sie angesteckt habe, prüfe ich ob sie rechtmäßig erkannt wird, indem ich den folgenden Befehl eingebe und in der Ausgabe nach der SSD suche.

$ lsblk

Schritt 2: Installation von RPi-clone

Auf Github gibt es ein kleines Projekt, das viele Funktionen beinhaltet. Das Programm kopiert den Inhalt der SD-Karte auf die SSD, sodass von ihr gebootet werden kann und alle Einstellungen vorhanden sind.

$ git clone https://github.com/billw2/rpi-clone.git
$ cd rpi-clone
$ sudo cp rpi-clone /usr/local/sbin/sys-clone
$ sudo cp rpi-clone-setup /usr/local/sbin/sys-clone-setup

Schritt 3: Services stoppen und Kopiervorgang starten

Am besten ist es, wenn kein Service mehr läuft und der Kopiervorgang ungestört durchlaufen kann. Daher erst prüfen, was alles läuft, danach einzeln beenden

$ sudo systemctl stop cron
$ sudo systemctl stop nginx
$ sudo systemctl stop docker usw.

Schritt 4: Kopiervorgang starten

Aus dem Check von Schritt 1 kennen wir bereits die Bezeichnung der Festplatte. Auf diese müssen wir nun verweisen mit dem Befehl:

$ rpi-clone sda

Der Wizard hält zunächst an und berichtet uns über den Zustand des Systems. Wenn alles korrekt ist, kann der Vorgang mit der Eingabe von „yes“ gestartet werden.

Schritt 5: Raspberry Pi herunterfahren und von SSD booten

Nach Ende des Kopiervorgangs fährt man den Raspberry Pi herunter.

$ sudo shutdown now

Anschließend von der Stromversorgung trennen, die SD-Karte entfernen, und die Spannungsversorgung wieder herstellen. Jetzt bootet der Raspberry von SSD und ist sehr viel schneller.

The post Raspberry Pi: Umzug von SD-Karte auf SSD in wenigen Schritten first appeared on bejonet - Linux | Smart Home | Technik.

Fedora 40 & Gnome 46 vorgestellt - Hier spielt die Zukunft

💾

Wenn Du das Video unterstützen willst, dann gib bitte eine Bewertung ab, und schreibe einen Kommentar. Vielen Dank! Links: ------------------------------------- Fedora: https://fedoraproject.org/de/ Linux-Guides Merch*: https://linux-guides.myspreadshop.de/ Professioneller Linux Support*: https://www.linuxguides.de/linux-support/ Linux-Arbeitsplatz für KMU & Einzelpersonen*: https://www.linuxguides.de/linux-arbeitsplatz/ Linux Mint Kurs für Anwender*: https://www.linuxguides.de/kurs-linux-mint-fur-anwender/ Offizielle Webseite: https://www.linuxguides.de Forum: https://forum.linuxguides.de/ Unterstützen: http://unterstuetzen.linuxguides.de Mastodon: https://mastodon.social/@LinuxGuides X: https://twitter.com/LinuxGuides Instagram: https://www.instagram.com/linuxguides/ Kontakt: https://www.linuxguides.de/kontakt/ Inhaltsverzeichnis: ------------------------------------- ### Musik: ------------------------------------- Elektronomia - Sky High [NCS Release] Music provided by NoCopyrightSounds. Video Link: https://youtu.be/TW9d8vYrVFQ Download Link: https://NCS.lnk.to/SkyHigh Haftungsausschluss: ------------------------------------- Das Video dient lediglich zu Informationszwecken. Wir übernehmen keinerlei Haftung für in diesem Video gezeigte und / oder erklärte Handlungen. Es entsteht in keinem Moment Anspruch auf Schadensersatz oder ähnliches. *) Werbung

Ubuntu 24.04 LTS Beta ist verfügbar & Derivate

Das Ubuntu-Team hat die Beta-Version von Ubuntu 24.04 LTS Noble Numbat zur Verfügung gestellt. Sie hat sich wegen des xz-Problems bekanntlich etwas verzögert. Die Beta-Version bietet wie üblich nicht nur Abbilder für Ubuntu Desktop, Server und Cloud, sondern es gibt auch Images für die zahlreichen Derivate. Die Beta-Abbilder sollten keine sogenannten Showstopper haben und eine normale Nutzung sollte möglich sein. Allerdings ist es eine Beta-Version, die sich möglicherweise nicht für den produktiven Einsatz eignet. Noble Numbat bietet Linux-Kernel 6.8, GNOME […]

Der Beitrag Ubuntu 24.04 LTS Beta ist verfügbar & Derivate ist von bitblokes.de.

Slay the Spire 2 angekündigt – mit neuer Spiele-Engine

Ich bin ein ziemlicher Fan des Deckbau-Roguelike Slay the Spire. Ich habe das Spiel in einem Humble Bundle erworben und bereue es nicht. Das macht ziemlich Spaß. Das Entwickler-Team von Mega Crit hat nun Slay the Spire 2 angekündigt. So groß die Vorfreude auch ist, Du wirst Dich in Geduld üben müssen. Veröffentlichungsdatum für Slay the Spire 2 ist 2025. Auf Steam schreibt das Team, dass das Spiel komplett neu in einer neuen Spiel-Engine programmiert wurde. Mega Crit ist Sponsor […]

Der Beitrag Slay the Spire 2 angekündigt – mit neuer Spiele-Engine ist von bitblokes.de.

Formulaic: Mozilla arbeitet an Community-Plattform für KI-Prompts

Formulaic ist das neueste Projekt vom Mozilla Innovation Studio. Dabei handelt es sich um eine Community-Plattform, auf der man sogenannte KI-Prompts zu bestimmten Themen finden und mit anderen Nutzern teilen kann.

Ob der KI-basierte Website-Builder Solo, innovative KI-Technologien wie llamafile oder MemoryCache, das Tagebuch-Projekt Didthis oder der Mozilla AI Guide – das Mozilla Innovation Studio hat in den letzten Monaten einige interessante Projekte gestartet. Das neueste Projekt ist Formulaic.

Formulaic ist eine Plattform, auf der Nutzer wiederverwendbare Skripte für die gängigsten generativen KI-Sprachmodelle erstellen und mit anderen Nutzern teilen können. Mozilla spricht hierbei von Formeln. Diese können auch direkt auf der Plattform ausgeführt werden. Die Verwendung von Eingabefeldern und Variablen macht die Verwendung für den Benutzer sehr einfach.

Mozilla Formulaic 

Sämtliche auf Formualic veröffentlichten Formeln stehen unter einer Creative Commons CC-BY-Lizenz und können damit sowohl in privaten als auch kommerziellen Anwendungen verwendet werden. Erklärtes Ziel von Mozilla ist es, Wissen und Kompatibilität zu fördern und Entwicklern das Vertrauen zu geben, sich für Open Source zu entscheiden.

Derzeit befindet sich das Projekt noch im Aufbau und ist als Beta-Version gekennzeichnet. Daher ist die Auswahl bereits bestehender Formeln auch noch sehr gering und die Anmeldung, welche sowohl zum Erstellen neuer als auch Ausführen bestehender Formeln notwendig ist, noch nicht offen. Interessierte Nutzer können sich aber auf eine Warteliste setzen lassen.

Mozilla Formulaic

Mozilla Formulaic

Mozilla Formulaic

Der Beitrag Formulaic: Mozilla arbeitet an Community-Plattform für KI-Prompts erschien zuerst auf soeren-hentzschel.at.

Podcast über xz-Backdoor und worüber wir reden müssen

Seit 1,5 Jahren produziere ich den Podcast Risikozone, in dem es um Themen der IT-Sicherheit und Open-Source-Software geht. Die xz-Backdoor ist natürlich ein heißes Thema, weswegen es in der heute veröffentlichten Episode 45 genau darum geht.

Die knapp einstündige Podcastepisode ist für alle interessant, die nochmals einen technisch orientierten Überblick über die Geschehnisse suchen. Da die Thematik recht komplex ist und aus verschiedenen Blickwinkeln beobachtet werden kann, können weitere Podcastepisoden hierüber noch folgen. Ich möchte aber darauf eingehen, dass man diese Backdoor nicht nur auf den Code beschränken sollte. Es gibt es viele verschiedene Ebenen, die allesamt jeweils Beachtung finden sollten:

  • die technische "Exploit"-Ebene
  • die zwischenmenschliche Ebene
  • die Ökosystem-Ebene

Technisch ist der Exploit ausgeklügelt: Die Backdoor beschränkt sich nicht nur auf die bloße Möglichkeit einer Remote-Code-Execution, sondern verwendet darüber hinaus noch ein eigenes Protokoll, mit dem die Befehle signiert und verschlüsselt innerhalb des unscheinbaren N-Wertes im Zertifikat eines SSH-Handshakes übermittelt werden. Durch die Signatur können nur Befehle ausgeführt werden, die mit einem (wahrscheinlich nur dem Angreifer bekannten) ED448-Schlüssel signiert wurden. Die Verschlüsselung erfolgt zwar mit einem statischen Schlüssel, der aus dem ED448-PubKey abgeleitet wird, erfüllt jedoch trotzdem seinen Zweck: Obfuskierung. Mit anderen Worten: wäre die Lücke nie aufgefallen, hätte man sie in der freien Wildbahn nahezu unmöglich durch Traffic-Analysen finden können.

Das ist allerdings nur die erste von drei Ebenen: die Art und Weise, wie die Lücke hereingeschummelt wurde, weist Komponenten des Social Engineering auf. Die Mühe, über mehrere Jahre eine Identität in verschiedenen Projekten mit teils anfangs legitimen Beiträgen aufzubauen, zeugt auch von einem Plan und Ausdauer.

Schlussendlich sollte man auch nicht vergessen, dass hier eine besondere Konstellation im Ökosystem ausgenutzt wurde. Am einfachsten (und auffälligsten) wäre es, eine solche Lücke in OpenSSH unterzubringen. Es wurde aber auf eine deutlich unbeachtetere und einfacher zu infiltrierende Variante ausgewichen. Die xz-Bibliothek wurde zudem nicht zum Einfallstor, weil OpenSSH darauf zurückgreift (das tut es nämlich nicht), sondern weil einige Distros systemd-notify reinpatchen, was wiederum auf die xz-Lib zurückgreift. Außerdem rüttelt dieser Fall an einem Grundpfeiler der IT-Sicherheits-Praktiken: Updates. Diese Hintertür fand geradezu durch die (häufigen) Updates der Rolling-Release-Distros Einzug - die stabilen Versionen waren noch verschont geblieben. Ist also (zu) häufiges Updaten nun auch nicht mehr richtig? Bringen bald Updates mehr Lücken als sie schließen?

Das alles macht es vor allem noch schwieriger, solche Angriffe zuverlässig zu erkennen. Zudem ist davon auszugehen, dass die Angreifer sich die Verteidigungsstrategie jetzt ganz genau anschauen. Die zukünftige Diskussion sollte sich also darauf konzentrieren, wie man diese Art von Angriffen detektiert und frühzeitig eindämmt.

Ausgewählten Text mit Firefox übersetzen – selbst getestet

Das Team von Mozilla Firefox arbeitet an einer schicken neuen Übersetzungsfunktion. Damit kannst Du ausgewählte Texte schnell und lokal in andere Sprachen übersetzen. Firefox-User wissen, dass es seit Version 118 eine datenschutzfreundliche Funktion zur Übersetzung von Websites gibt. Die Übersetzung findet lokal statt. Vielleicht kommt es aber vor, dass Du nur einen kleinen Teil einer Website übersetzen möchtest, was den Vorgang natürlich auch entsprechend beschleunigt. Künftig wirst Du Textabschnitte mit dem Cursor markieren und sie gezielt übersetzen lassen können. Du […]

Der Beitrag Ausgewählten Text mit Firefox übersetzen – selbst getestet ist von bitblokes.de.

Beta-Tester für schnellere Repos bei Linux Mint gesucht

Mehr Geschwindigkeit und höhere Reaktionszeiten? Da bin ich dabei. Das Team von Linux Mint möchte so viele Beta-Tester wie möglich für die neuen und schnelleren Repositories haben. Daher ruft das Team so viele Community-Mitglieder wie möglich auf, die neuen Repos zu testen. So testest Du die neuen, schnelleren Repos Zunächst startest Du das Tool Anwendungspaketquellen und stellst die Standardeinstellungen wieder her. Damit stellst Du sicher, dass Du den offiziellen Mirror benutzt. Im Anschluss bearbeitest Du die Datei /etc/apt/sources.list.d/official-package-repositories.list mit dem […]

Der Beitrag Beta-Tester für schnellere Repos bei Linux Mint gesucht ist von bitblokes.de.

Firefox 126 kann markierten Text übersetzen

Firefox besitzt eine Funktion für die vollständige Website-Übersetzung, welche im Gegensatz zu Cloud-Übersetzern wie Google Translate lokal arbeitet, die eingegebenen Texte also nicht an einen fremden Server sendet. Ab Firefox 126 wird es auch möglich sein, nur markierten Text zu übersetzen.

Firefox wird seit Version 118 standardmäßig mit einer lokalen Funktion zur maschinellen Übersetzung von Websites für den Browser ausgeliefert. Das bedeutet, dass die Übersetzung vollständig im Browser geschieht und keine zu übersetzenden Inhalte an einen Datenriesen wie Google oder Microsoft übermittelt werden müssen. Seit kurzem werden weitere Sprachen unterstützt.

Die nächste größere Verbesserung steht mit Firefox 126 an. Ab dann wird es nicht mehr nur möglich sein, Websites als Ganzes zu übersetzen, sondern nur markierte Textstellen.

Textauswahl-Übersetzung in Firefox 126

Ob die neue Funktion in der finalen Version von Firefox 126 standardmäßig aktiviert sein wird, ist zu diesem Zeitpunkt noch nicht bekannt. Zunächst wird die Funktion in Nightly- und frühen Beta-Versionen standardmäßig aktiviert werden. Eine manuelle Aktivierung ist über about:config möglich, indem der Schalter browser.translations.select.enable per Doppelklick auf true gesetzt wird. Anschließend steht nach dem Markieren von Text ein neuer Kontextmenüeintrag zum Übersetzen zur Verfügung.

Auch wenn der Schalter bereits in Firefox 124 existiert, funktioniert das Feature erst ab Firefox 126. Firefox 126 wird nach aktueller Planung am 14. Mai 2024 erscheinen. Nutzer einer Nightly-Version von Firefox können die Neuerung bereits jetzt testen.

Der Beitrag Firefox 126 kann markierten Text übersetzen erschien zuerst auf soeren-hentzschel.at.

Proof of Concept: Mit Ansible das Advanced Intrusion Detection Environment (AIDE) steuern

Dies ist der Folgeartikel, den ich in der Einführung in das Advanced Intrusion Detection Environment (AIDE) versprochen hatte. Es handelt sich hierbei um einen Proof of Concept (PoC), der zeigt, wie AIDE mithilfe einer Ansible-Rolle ferngesteuert werden kann. Die Einführung wird als bekannt vorausgesetzt.

Grundlegende Ansible-Kenntnisse, wie die Verwendung von Ansible-Rollen und das Ausführen von Playbooks werden ebenfalls als bekannt vorausgesetzt. Wer Ansible nicht kennt, sei an die offizielle Dokumentation verwiesen.

Welche Aufgaben sind mit Ansible zu lösen?

  • Das Paket aide ist auf den Zielsystemen installiert
  • Die optionale Generierung und Verteilung der Konfigurationsdatei aide.conf
  • Die Initialisierung der AIDE-Datenbank
  • Zentrale Speicherung der AIDE-Datenbanken aller verwalteter Hosts auf dem Ansible Control Node (ACN)
  • Durchführung von Integritäts-Checks
  • Aktualisierung der AIDE-Datenbanken und erneute Speicherung auf dem ACN

Durch die Speicherung der AIDE-Datenbanken und -Konfigurationsdateien auf dem ACN sind diese gegen Veränderung auf einem kompromittierten Host geschützt. Gegen Veränderungen auf dem ACN selbst sind die Dateien nur mit Unix-Dateiberechtigungen geschützt. Doch wenn der ACN kompromittiert ist, hat man eh ein ganz anderes Problem, als sich um AIDE Sorgen zu machen.

Labor-Umgebung

Meine Labor-Umgebung für diesen PoC besteht aus den vier Hosts:

  • ansible-ctrl (RHEL 8 mit installiertem ansible-core)
  • rhel7
  • rhel8
  • rhel9

Der ACN kann sich via SSH zu den Zielsystemen (rhel{7,8,9}) verbinden und dort Programmcode mit erhöhten Rechten ausführen.

Die von mir für diesen PoC entwickelte Ansible-Rolle gibt es unter der URL: https://github.com/Tronde/aide

Beschreibung der Ansible-Rolle aide

Die Rolle ist nicht idempotent. Sie ruft das Programm aide auf den Zielsystemen mit verschiedenen Optionen auf und verarbeitet deren Ausgabe. Dazu macht die Rolle Gebrauch des Moduls ansible.builtin.command.

Gesteuert wird die Rolle über Ansible-Tags. Wird die Rolle in einem Playbook ohne Angabe von Tags ausgeführt, werden keinerlei Veränderungen an den Zielsystemen vorgenommen.

Der folgende Code-Block zeigt ein Beispiel-Playbook zum Aufruf der Rolle. Die Tags und die Variable aide_db_fetch_dir werden im Anschluss erläutert.

# SPDX-License-Identifier: MIT
---
- name: Example aide role invocation
  hosts: targets
  tasks:
    - name: Include role aide
      tags:
        - install
        - generate_config
        - init
        - check
        - update
      vars:
        aide_db_fetch_dir: files
      ansible.builtin.include_role:
        name: aide
  • install – Bei Angabe dieses Tags stellt die Rolle sicher, dass das Paket aide auf den Zielsystemen installiert ist
  • generate_config – Generiert die Datei /etc/aide.conf unter Nutzung von templates/aide.conf.j2; das Template ist an die individuellen Bedürfnisse anzupassen; Details siehe nächster Abschnitt
  • init – Hiermit wird die AIDE-Datenbank initialisiert, welche als Referenzdatenbank für zukünftige Checks dient
  • check – Führt einen Integritäts-Check unter Verwendung der Referenzdatenbank durch
  • update – Führt einen Integritäts-Check durch und erzeugt eine neue AIDE-Datenbank, welche zukünftig als Referenz dient

Die Variable aide_db_fetch_dir erwartet im Auslieferungszustand das Verzeichnis files parallel zum Playbook. In diesem Verzeichnis werden Unterverzeichnisse für jeden Host erstellt, in denen die AIDE-Datenbank der verwalteten Systeme gespeichert wird. Soll ein anderer Speicherort verwendet werden, ist der Wert dieser Variablen entsprechend anzupassen. Die AIDE-Datenbanken werden mit dem Ansible-Module ansible.builtin.fetch von den verwalteten Systemen geholt.

Nutzung für die verschiedenen Anwendungsfälle

In diesem Abschnitt beschreibe ich die fünf Anwendungsfälle für den PoC. Alle Anwendungsfälle wurden gegen RHEL 7, RHEL 8 und RHEL 9 getestet. Für diesen Blog beschränke ich mich jedoch auf Tests gegen RHEL 9, um die Übersichtlichkeit der Ausgaben zu verbessern.

Es wird stets das Playbook aus dem Abschnitt Beschreibung der Ansible-Rolle aide verwendet und mit unterschiedlichen Tags ausgeführt.

Anwendungsfall 1: Installation von AIDE

Um AIDE nutzen zu können, muss es zuerst installiert sein. Dies wird mit folgendem Playbook-Aufruf festgestellt:

[root@ansible-ctrl ansible]# ansible-playbook aide.yml --tags install

PLAY [Example aide role invocation] ********************************************

TASK [Gathering Facts] *********************************************************
ok: [rhel9]

TASK [Include role aide] *******************************************************

TASK [aide : Ensure required packages are installed] ***************************
changed: [rhel9]

PLAY RECAP *********************************************************************
rhel9                      : ok=2    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

Für diesen Anwendungsfall arbeitet die Rolle idempotent. Bei einer zweiten Ausführung werden keine weiteren Änderungen am System vorgenommen:

[root@ansible-ctrl ansible]# ansible-playbook aide.yml --tags install

PLAY [Example aide role invocation] ********************************************

TASK [Gathering Facts] *********************************************************
ok: [rhel9]

TASK [Include role aide] *******************************************************

TASK [aide : Ensure required packages are installed] ***************************
ok: [rhel9]

PLAY RECAP *********************************************************************
rhel9                      : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

Anwendungsfall 2: Generierung der Datei /etc/aide.conf

Zusammen mit der Rolle wird die Datei templates/aide.conf.j2 ausgeliefert. Dabei handelt es sich um die Standardkonfigurationsdatei aus einer RHEL9-Installation, in welcher zusätzlich der Pfad /root/.ansible* von der Überwachung ausgenommen wurde, um falsch positive Ergebnisse zu vermeiden.

Diese Datei ist an die individuellen Bedürfnisse anzupassen. Wer Hilfe zum Templating mit Jinja2 benötigt, findet in der Ansible-Dokumentation einen Einstieg.

Ausgerollt wird die Konfigurationsdatei dann wie folgt:

[root@ansible-ctrl ansible]# ansible-playbook aide.yml --tags generate_config

PLAY [Example aide role invocation] ********************************************

TASK [Gathering Facts] *********************************************************
ok: [rhel9]

TASK [Include role aide] *******************************************************

TASK [aide : Generate /etc/aide.conf] ******************************************
changed: [rhel9]

PLAY RECAP *********************************************************************
rhel9                      : ok=2    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

Auch mit diesem Tag arbeitet die Rolle idempotent.

Wird dieser Schritt ausgelassen, wird in allen folgenden Anwendungsfällen die Standardkonfigurationsdatei verwendet, welche bei der Installation des Pakets aide mitinstalliert wurde.

Anwendungsfall 3: Initialisierung der AIDE-Datenbank

Um Integritäts-Checks durchführen zu können, muss zuerst die AIDE-Datenbank initialisiert werden. Dies geschieht mit dem folgenden Aufruf:

[root@ansible-ctrl ansible]# ansible-playbook aide.yml --tags init

PLAY [Example aide role invocation] ********************************************

TASK [Gathering Facts] *********************************************************
ok: [rhel9]

TASK [Include role aide] *******************************************************

TASK [aide : Initialize AIDE database] *****************************************
changed: [rhel9]

TASK [aide : Fetch AIDE database] **********************************************
changed: [rhel9]

TASK [aide : Remove remote AIDE database file] *********************************
changed: [rhel9]

PLAY RECAP *********************************************************************
rhel9                      : ok=4    changed=3    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

Nach der Initialisierung der AIDE-Datenbank wird diese auf den ACN kopiert und von den verwalteten Systemen entfernt. Dies hat den Hintergrund, dass es sich beim ACN um ein sehr gut gesichertes System handelt und die Datenbanken hier am besten vor einer Kompromittierung geschützt sind.

Wird der Standardwert der Variable aide_db_fetch_dir verwendet, findet sich die AIDE-Datenbank jetzt im Pfad files/rhel9/var/lib/aide/aide.db.new.gz. Dabei entspricht rhel9 in der Pfadangabe dem inventory_hostname des jeweiligen Zielsystems.

Dieser Teil der Rolle ist nicht idempotent. Wird das Playbook erneut ausgeführt, wird eine neue AIDE-Datenbank erstellt, auf den ACN heruntergeladen und vom Zielsystem gelöscht.

Anwendungsfall 4: Ausführung einer Integritätsprüfung

Der nun folgende Code-Block zeigt den Playbook-Aufruf zur Integritätsprüfung. Hier wird zuerst die AIDE-Datenbank auf das Zielsystem kopiert, anschließend ein AIDE-Check ausgeführt. Da im folgenden Beispiel keine Änderungen detektiert wurden, besitzt der Task „[aide : Check against AIDE reference database]“ den Status „ok“.

[root@ansible-ctrl ansible]# ansible-playbook aide.yml --tags check

PLAY [Example aide role invocation] ********************************************

TASK [Gathering Facts] *********************************************************
ok: [rhel9]

TASK [Include role aide] *******************************************************

TASK [aide : Copy AIDE reference database to remote] ***************************
changed: [rhel9]

TASK [aide : Check against AIDE reference database] ****************************
ok: [rhel9]

PLAY RECAP *********************************************************************
rhel9                      : ok=3    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

Dieser Teil der Rolle ist nicht idempotent. Bei jedem Aufruf wird ein neuer Integritäts-Check ausgeführt.

Ich habe die Datei /etc/hosts auf dem Zielsystem manipuliert, um auch den Fall zu zeigen, wenn eine Änderung erkannt wurde.

Zu Beginn der folgenden Ausgabe ist zu erkennen, dass der Task „[aide : Copy AIDE reference database to remote]“ den Status „ok“ besitzt. Ansible hat erkannt, dass die AIDE-Datenbank bereits in unverändertem Zustand auf dem Zielsystem existiert, und hat sie deshalb nicht erneut übertragen. Der Task „[aide : Check against AIDE reference database]“ schlägt nun allerdings fehl (Status: „fatal“), da Veränderungen erkannt wurden. Die zugegeben etwas unübersichtliche Ausgabe enthält die Nachricht, dass die Datei /etc/hosts verändert wurde.

[root@ansible-ctrl ansible]# ansible-playbook aide.yml --tags check

PLAY [Example aide role invocation] ********************************************

TASK [Gathering Facts] *********************************************************
ok: [rhel9]

TASK [Include role aide] *******************************************************

TASK [aide : Copy AIDE reference database to remote] ***************************
ok: [rhel9]

TASK [aide : Check against AIDE reference database] ****************************
fatal: [rhel9]: FAILED! => {"changed": true, "cmd": ["aide", "--check"], "delta": "0:00:27.177397", "end": "2024-03-29 05:16:50.682795", "msg": "non-zero return code", "rc": 4, "start": "2024-03-29 05:16:23.505398", "stderr": "", "stderr_lines": [], "stdout": "Start timestamp: 2024-03-29 05:16:23 -0400 (AIDE 0.16)\nAIDE found differences between database and filesystem!!\n\nSummary:\n  Total number of entries:\t45541\n  Added entries:\t\t0\n  Removed entries:\t\t0\n  Changed entries:\t\t1\n\n---------------------------------------------------\nChanged entries:\n---------------------------------------------------\n\nf   ...    .C... : /etc/hosts\n\n---------------------------------------------------\nDetailed information about changes:\n---------------------------------------------------\n\nFile: /etc/hosts\n  SHA512   : YobgpcvAMPey0QX1lK4K+5EFySF1xrB/ | 7nIivvNa5ozfhOqSFLmPIiu6g04Wbx1n\n             9FRzTCPNC93+13Y5/lm2inC4x4rydlf2 | iGNf0/QTgFjaMGug8HywxTiO2PREZRNS\n             EcvonCf3pHuXj6lEmAjBnw==         | 3qNEi4Qm6an5inSY72sjfA==\n\n\n---------------------------------------------------\nThe attributes of the (uncompressed) database(s):\n---------------------------------------------------\n\n/var/lib/aide/aide.db.gz\n  MD5      : gMgRyMOExVAdOAvdgt4QDA==\n  SHA1     : w7tmPKNvRYggY/JZ5wv+7ZdcSZM=\n  RMD160   : CO0pK5tfg66MaO17YB8eaRuyyMw=\n  TIGER    : n8UbZJNt9gL672+pR9IPjoyhpAsUJ46O\n  SHA256   : k8UHnv2CK4zYrfZN+bDp6SCcLkx21px6\n             GNZlwySPKcY=\n  SHA512   : DFw5wlBoJQOBCrs0ulvVxaMvoQk/oBEQ\n             TkOmhfHAdevUWNAgCJ0KH0q26LsynEMj\n             MWQpsGf7v12iACc4SP9ANA==\n\n\nEnd timestamp: 2024-03-29 05:16:50 -0400 (run time: 0m 27s)", "stdout_lines": ["Start timestamp: 2024-03-29 05:16:23 -0400 (AIDE 0.16)", "AIDE found differences between database and filesystem!!", "", "Summary:", "  Total number of entries:\t45541", "  Added entries:\t\t0", "  Removed entries:\t\t0", "  Changed entries:\t\t1", "", "---------------------------------------------------", "Changed entries:", "---------------------------------------------------", "", "f   ...    .C... : /etc/hosts", "", "---------------------------------------------------", "Detailed information about changes:", "---------------------------------------------------", "", "File: /etc/hosts", "  SHA512   : YobgpcvAMPey0QX1lK4K+5EFySF1xrB/ | 7nIivvNa5ozfhOqSFLmPIiu6g04Wbx1n", "             9FRzTCPNC93+13Y5/lm2inC4x4rydlf2 | iGNf0/QTgFjaMGug8HywxTiO2PREZRNS", "             EcvonCf3pHuXj6lEmAjBnw==         | 3qNEi4Qm6an5inSY72sjfA==", "", "", "---------------------------------------------------", "The attributes of the (uncompressed) database(s):", "---------------------------------------------------", "", "/var/lib/aide/aide.db.gz", "  MD5      : gMgRyMOExVAdOAvdgt4QDA==", "  SHA1     : w7tmPKNvRYggY/JZ5wv+7ZdcSZM=", "  RMD160   : CO0pK5tfg66MaO17YB8eaRuyyMw=", "  TIGER    : n8UbZJNt9gL672+pR9IPjoyhpAsUJ46O", "  SHA256   : k8UHnv2CK4zYrfZN+bDp6SCcLkx21px6", "             GNZlwySPKcY=", "  SHA512   : DFw5wlBoJQOBCrs0ulvVxaMvoQk/oBEQ", "             TkOmhfHAdevUWNAgCJ0KH0q26LsynEMj", "             MWQpsGf7v12iACc4SP9ANA==", "", "", "End timestamp: 2024-03-29 05:16:50 -0400 (run time: 0m 27s)"]}

PLAY RECAP *********************************************************************
rhel9                      : ok=2    changed=0    unreachable=0    failed=1    skipped=0    rescued=0    ignored=0

An dieser Stelle wurde gezeigt, dass sowohl unveränderte Systeme als auch Systeme mit Veränderungen erkannt und gemeldet werden. Dabei muss natürlich niemand die Standardausgabe beobachten. Stattdessen kann Logging für Ansible Ausgaben konfiguriert werden.

Anwendungsfall 5: Update der AIDE-Datenbank

Dieser Anwendungsfall nimmt an, dass erfolgte Änderungen legitim sind und in die AIDE-Referenzdatenbank aufgenommen werden sollen. Dies geschieht wie folgt:

[root@ansible-ctrl ansible]# ansible-playbook aide.yml --tags update

PLAY [Example aide role invocation] ********************************************

TASK [Gathering Facts] *********************************************************
ok: [rhel9]

TASK [Include role aide] *******************************************************

TASK [aide : Update AIDE database] *********************************************
changed: [rhel9]

TASK [aide : Fetch AIDE database] **********************************************
changed: [rhel9]

TASK [aide : Remove remote AIDE database file] *********************************
changed: [rhel9]

PLAY RECAP *********************************************************************
rhel9                      : ok=4    changed=3    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

Nachdem die Referenzdatenbank aktualisiert wurde, wird diese wieder auf den ACN kopiert und vom Zielsystem entfernt.

Das folgende Beispiel zeigt, dass auf dem Zielsystem der AIDE-Check nun ohne Fehler absolviert wird:

[root@ansible-ctrl ansible]# ansible-playbook aide.yml --tags check

PLAY [Example aide role invocation] ********************************************

TASK [Gathering Facts] *********************************************************
ok: [rhel9]

TASK [Include role aide] *******************************************************

TASK [aide : Copy AIDE reference database to remote] ***************************
changed: [rhel9]

TASK [aide : Check against AIDE reference database] ****************************
ok: [rhel9]

PLAY RECAP *********************************************************************
rhel9                      : ok=3    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

Ansible hat erkannt, dass die AIDE-Datenbank auf dem Zielhost nicht mit der aktuellen Referenzdatenbank übereinstimmt und hat letztere daher auf das Zielsystem übertragen. Die Überprüfung endet mit dem Status „ok“. Das System entspricht dem Soll-Zustand.

Zusammenfassung

Der Proof of Concept hat gezeigt, dass AIDE mit der verwendeten Ansible-Rolle ferngesteuert genutzt werden kann. AIDE-Datenbank und Konfigurationsdatei werden dabei getrennt von den verwalteten Systemen gespeichert und sind daher gegen Veränderung bei Kompromittierung der Zielsysteme geschützt. Bei Bedarf, wenn Ansible Abweichungen des Ist- zum Soll-Zustand erkennt, werden diese Dateien auf die Zielsysteme übertragen.

Der größte Arbeitsaufwand steckt in der Erstellung einer oder mehrerer AIDE-Konfigurationsdateien, die optimal zur eigenen Umgebung passen und möglichst keine falsch positiven Ergebnisse erzeugen. Dieser Aufwand besteht jedoch auch, wenn man AIDE ohne Ansible einsetzt.

Einen Punkt hat dieser PoC unberücksichtigt gelassen. Es nützt natürlich nichts, wenn man die Ausgaben der Playbooks nur protokolliert, die Protokolle jedoch nicht analysiert, um entsprechende Alarme in Monitoring- oder Ticket-Systemen zu erzeugen. Dies sei den Anwendern zur selbstständigen Übung überlassen. ;-)

❌