Arch Linux: libvirt mit AppArmor-Unterstützung installieren

Unter Xubuntu bin ich es gewöhnt, dass das libvirt-Paket direkt mit AppArmor-Unterstützung ausgeliefert und installiert wird. Leider ist das bei Arch Linux nicht der Fall. Da ich auf dieses zusätzliche "Sicherheitsnetz" bei der Ausführung meiner QEMU/ KVM-VMs nicht verzichten möchte, verwende ich nicht das von Arch Linux ausgelieferte libvirt-Paket, sondern kompiliere es mit AppArmor-Unterstützung selbst und installiere es dann manuell mit pacman.

Wie das Ganze genau funktioniert, beschreibe ich in diesem Beitrag.

Weiterlesen

GitHub-Actions: Coverage-Badge ohne 3rd-Party-Service mittels Gist erstellen

Für mein aktuelles GitHub-Projekt secbootctl wollte ich den Code-Coverage-Status mittels Badge von Shields.io in der README.md anzeigen lassen. Leider bietet GitHub-Actions so eine Funktion nicht "out-of-the-box" an. Anscheinend hat es sich etabliert dafür Third-Party-Services, wie z.B. Codecov, zu verwenden, um Coverage-Badges zu erstellen und diese dann im eigenen GitHub-Repository einbinden zu können.

Da ich es bevorzuge auf unnötige bzw. zusätzliche Services zu verzichten, habe ich etwas recherchiert und bin auf eine vielversprechende Lösung gestoßen: Mithilfe der GitHub-Action Dynamic Badges Action können die benötigten Coverage-Daten im Rahmen eines GitHub-Actions-Workflow im JSON-Format in einem GitHub-Gist gespeichert werden. Mit diesen JSON-Daten kann dann wiederum die Shields.io-API angesprochen werden und die so generierte Badge in der eigenen README.md eingebunden werden.

Weiterlesen

Virtual Machine Manager & QEMU/KVM: VMs ohne Root-Rechte ausführen

Standardmäßig verbindet sich Virtual Machine Manager (VMM) über die URI qemu:///system mit dem lokalen libvirt-Dienst, der wiederum zur Kommunikation mit QEMU/ KVM dient. Der libvirt-Dienst wird bereits beim Systemstart gestartet und läuft mit Root-Rechten. Alle virtuellen Maschinen (VMs) die unter dieser VMM-Verbindung ausgeführt werden, laufen somit mit Root-Rechten.

Aus Sicherheitsgründen ist es empfehlenswert, VMs bevorzugt ohne Root-Rechte und nur mit Benutzerechten auszuführen. Im folgenden Beitrag erfahrt ihr, wie ihr eure VMs mit VMM über qemu:///session und somit ohne Root-Rechte ausführt.

Weiterlesen

OpenWrt 21.02: WPA3 mit WPA2-Fallback verwenden

Vor einigen Tagen habe ich auf meinem LTE-Router die neue Version 21.02 von OpenWrt installiert. Mit dieser Version wird der Verschlüsselungsstandard WPA3 "out of the box" unterstützt. Dieses habe ich zum Anlass genommen, für mein WLAN-Netzwerk die Verschlüsselung von WPA2 auf WPA3 umzustellen. Da ich derzeit noch diverse Geräte besitze, die WPA3 nicht unterstützen, habe ich den sogenannten WPA3-Transmission/Mixed-Modus eingestellt. Dadurch können zumindestens alle meine Geräte, die bereits WPA3 unterstützen, dies auch verwenden und die nur WPA2 unterstützenden Geräte können weiterhin WPA2 verwenden.

Weiterlesen

Android: Fitnessuhr Amazfit GTS 2e mit Gadgetbridge verbinden und Daten lokal verwalten

Auf der Suche nach einer Fitness-/Trackinguhr musste ich feststellen, dass bei den meisten Uhren die Einrichtung und Synchronisation der Daten nur mit der proprietären App des Herstellers möglich ist. Hinzu kommt, dass die Registrierung eines Accounts vorausgesetzt wird und die Daten beim Synchronisieren nicht lokal auf meinem Android-Gerät verbleiben, sondern direkt auf die Server des Herstellers hochgeladen werden.

Man könnte zwar einen "anonymen" Account erstellen, aber ich hätte trotzdem ein ungutes Gefühl, wenn meine Gesundsheitsdaten, wie z.B. Herzfrequenz und GPS-Daten meiner Lauf- bzw. Radtouren, irgendwo in der Cloud rumliegen würden. Des Weiteren haben mich die Datenschutzerklärungen einiger Anbieter hinsichtlich der (Weiter-)Verarbeitung der hochgeladenen Daten nicht wirklich überzeugt.

Für Android gibt es mit Gadgetbridge glücklicherweise eine quelloffene App, mit der sich die Daten mit dem eigenen Android-Gerät lokal synchroniseren und verwalten lassen.

Letztendlich habe ich mich für die Amazfit GTS 2e entschieden, die von Gadgetbridge unterstützt wird. Ein Wermutstropfen bleibt aber, weil eine einmalige initiale Verbindung mit der propietären App des Herstellers notwendig ist.

Im Folgenden beschreibe ich, welche Schritte nötig sind, um die Amazfit GTS 2e mit Gadgetbridge zu verbinden.

Weiterlesen