Normale Ansicht

Es gibt neue verfügbare Artikel. Klicken Sie, um die Seite zu aktualisieren.
Ältere BeiträgeIntux

VirtualBox 7 auf Ubuntu 22.04

28. Mai 2023 um 11:19

Da die in den Repositories von Ubuntu 22.04 enthaltene VirtualBox 6.1 schon ein wenig eingestaubt ist, möchte ich heute zeigen, wie man die aktuelle Version 7.0 installiert.

VirtualBox 7.0

Paketquelle hinzufügen

Dazu fügt man zuallererst den Schlüssel zur Paketquelle hinzu.

wget -O- https://www.virtualbox.org/download/oracle_vbox_2016.asc | sudo gpg --dearmor --yes --output /usr/share/keyrings/oracle-virtualbox-2016.gpg

Diese wird dann in die Datei /etc/apt/sources.list.d/virtualbox.list eingetragen.

echo "deb [arch=amd64 signed-by=/usr/share/keyrings/oracle-virtualbox-2016.gpg] http://download.virtualbox.org/virtualbox/debian $(lsb_release -cs) contrib" | sudo tee /etc/apt/sources.list.d/virtualbox.list

Installation

Nun werden die Paketquellen aktualisiert und mögliche Upgrades ausgeführt.

sudo apt update && sudo apt upgrade -y

Über den Befehl

sudo apt install virtualbox-7.0

lässt sich nun problemlos VirtualBox 7.0 installieren.

Ein letzter Check nach dem Neustart des Systems zeigt über die Abfrage des Module Service Status der VirtualBox, ob das System korrekt läuft (siehe Grafik).

sudo systemctl status vboxdrv

 

Virtual Linux kernel module

Viel Spaß!

WordPress 6 – Das umfassende Handbuch

06. Mai 2023 um 04:00

WordPress 6 – Das umfassende Handbuch“ von Richard Eisenmenger und Florian Brinkmann ist 2022 in der 2. aktualisierten und erweiterten Auflage im Rheinwerk Verlag erschienen und umfasst 955 Seiten.

Dieses Buch basiert auf der Arbeit von Richard Eisenmenger, der 2021 nach schwerer Krankheit verstarb und mit „WordPress 5 – Das umfassende Handbuch“ den Grundstein zu dieser Neuerscheinung legte. Florian Brinkmann konnte dieses Werk weitgehend überarbeiten, aktualisieren und erweitern. Die Teile dieses Buches bauen didaktisch aufeinander auf und sind somit für Neulinge und Fortgeschrittene gleichermaßen interessant.

Auch in dieser Ausgabe geht der Autor einleitend und ausführlich auf zwei entscheidende Unterschiede zum Betrieb von WordPress ein; will man die Seite selbst hosten oder hosten lassen. Ob Dot-org oder Dot-com entscheidet oft der Preis, aber auch die Frage, wie weit sich der Nutzer auf die Technik und die Vorzüge Freier Software selbst einlassen möchte.

Das Buch ist in vier Teile gegliedert.

TEIL I WordPress installieren und bedienen gibt dem Leser einen Einblick über die Möglichkeit einer lokalen Installation auf dem PC in einer Virtualisierungsumgebung zum Testen, aber auch zur finalen Installation bei einem Webhoster seiner Wahl. Als erste Anlaufstelle wird hier auf den Open-Source-Spezialisten Bitnami verwiesen, von dem man sich ein vorkonfiguriertes Anwendungspaket herunterladen kann, um WordPress auf einem PC oder Notebook auszuprobieren. Begrifflichkeiten, wie Frontend und Backend werden hinreichend besprochen. Weiterhin werden ausreichende Tipps und Hinweise zur Administration, Konfiguration und Absicherung der eigenen Webseite gegeben. Diese Erläuterungen setzt der Autor anhand des Themes Twenty Twenty-Two praxisnah um.

Mit WordPress 5.0 wurde im Jahre 2018 der neue Block-Editor Gutenberg eingeführt, auf den in diesem Teil sehr ausführlich eingegangen wird. Dies dient nicht nur dazu Kritiker dieses Editors zu überzeugen, sondern gibt einen Einblick in die vielfältigen Gestaltungsmöglichkeiten dieses Werkzeugs.

TEIL II WordPress-Website anpassen und erweitern geht auf die neuen Möglichkeiten des mit WordPress 6 eingeführten Full Site Editing ein. Hiermit wird dem Anwender eine Möglichkeit gegeben, die neuen Block-Themes noch freier und umfangreicher zu gestalten als im bekannten Customizer.

Weiterhin zeigt dieser Teil des Handbuches, wie man mit WordPress einen Blog, eine statische Webseite, eine Community-Seite oder einen Online-Shop mit WooCommerce aufbauen kann.

TEIL III WordPress optimieren und warten behandelt Themen wie Updates, Updateverhalten, Backups, Wartung, Suchmaschinenoptimierung und Umzug einer WordPress-Seite auf eine andere. Der Leser findet viele nützliche Tipps und Hinweise rund um die Sicherheit sowie den reibungslosen Betrieb der eigenen Webseite. Themen wie die Optimierung der Zugriffsgeschwindigkeit über Aktivierung eines Caches als Erweiterung, aber auch die Option, die Seite über ein Plugin bei Bedarf in einen Wartungsmodus zu versetzen, sind hinreichend beschrieben.

TEIL IV WordPress für Entwicklerinnen und Entwickler ist für diejenigen interessant, die noch tiefer in das Content Management System einsteigen möchten, um eventuell Plugins oder Themes selbst zu entwickeln bzw. die eigene Webseite noch individueller zu gestalten.

Das Buch umfasst 21 Kapitel.

  • Was Sie mit WordPress vorhaben und wo Sie jetzt weiterlesen
  • WordPress-Installation in wenigen Minuten
  • WordPress-Installation – flexibel
  • Online-Installation beim Webhoster
  • Administration und Konfiguration von WordPress
  • Inhalte veröffentlichen
  • Benutzer und Besucher
  • Design anpassen
  • Neue WordPress-Funktionen mit Plugins hinzufügen
  • Das Blog
  • Die Community
  • Einen Online-Shop mit WooCommerce betreiben
  • WordPress-Wartung und Pflege
  • Migrationen, Synchronisationen und Deployments
  • Sicherheit ausbauen
  • Performance- und Suchmaschinenoptimierung
  • Notfallmaßnahmen
  • Grundwissen für WordPress-Entwicklerinnen und Entwickler
  • Theme entwickeln
  • Plugin und Block entwickeln
  • Rechtliche Aspekte: Newsletter, Datenschutz und Cookies

Leseproben und Downloads

Fazit

„WordPress 6 – Das umfassende Handbuch“ ist, wie der Name schon verrät, ein ideales Nachschlagewerk für Einsteiger und versierte WordPress-Nutzer gleichermaßen. Florian Brinkmann geht in der fast tausendseitigen Überarbeitung dieses Werkes so ziemlich auf jedes Szenario ein und hilft dem Leser beim Auf- bzw. Ausbau der eigenen Webseite mit dem Content Management System WordPress. Zahlreiche Beispiele in Form von Code-Schnipseln helfen, dabei Fehler beim Abtippen zu vermeiden.

Dieses ausführliche Handbuch ist aus den zuvor genannten Gründen eine klare Empfehlung.

Zugang über YubiKey zu WordPress verweigert

20. April 2023 um 19:07

Wer wie ich seine WordPress-Seite über das beliebte Plugin Two-Factor absichert, wird bestimmt bemerkt haben, dass man mit den neuen Versionen 112 von Firefox und Google Chrome über seinen U2F-Token keinen Zugang mehr zum Backend bekommt. Wohl dem, der bei der Einrichtung zusätzlich auf TOTP gesetzt hat und sich vom System Backup-Codes erstellen ließ. Über diese Hintertüren erhält man trotz Verweigerung des Hardware-Keys Zugang zur eigenen Webseite.

Was ist passiert?

Ich vermute, dass die neuen Browserversionen die Nutzung von FIDO verweigern und nur noch den neueren Standard FIDO2 bzw. Webauthn zulassen, was zur Folge hat, dass einige Dienste im herkömmlichen Sinne den aktivierten Zugang über USB-Token, wie u.a. YubiKey verweigern. Ein weiteres Indiz hierfür wäre, die kaputte Webauthn-Anmeldung in Nextcloud 26, welche heute mit Version 26.0.1 gefixt wurde.

Wie kann WordPress nun wieder via YubiKey abgesichert werden?

Eine einfache Lösung wäre vorerst das Plugin WebAuthn Provider for Two Factor zu installieren, welches auf dem Plugin Two-Factor aufsetzt, bis der Entwickler dieses an die neuen Gegebenheiten angepasst hat. Hierbei wird die weitere Auswahlmöglichkeit Webauthn in der Einstellung des Profils hinzugefügt. Der zuvor aktivierte FIDO-Token wird automatisch übernommen und unter FIDO2 genutzt. Somit ist die Webseite wieder über den zweiten Faktor abgesichert.

Eine passwortlose Anmeldung wie in der Nextcloud ist aber leider nicht möglich.

Webauthn in WordPress

Viel Spaß!

VNC-Verbindung mit SSH-Tunnel

08. April 2023 um 18:00

Im Artikel „Remote-Desktop Ubuntu 22.04“ hatte ich erklärt, wie es möglich ist, sich mit einem Ubuntu-Desktop über VNC mit einem anderen Ubuntu-Rechner zu verbinden. Natürlich darf man auch hier die Sicherheit nicht aus dem Auge verlieren, obwohl das Thema Verschlüsselung im heimischen lokalen Netzwerk eher eine untergeordnete Rolle spielen dürfte.

Wenn man allerdings über das Internet auf einen entfernten PC oder ein Notebook zugreifen möchte, sieht das schon anders aus. Das Wiki von ubuntuusers.de schreibt zur Nutzung von VNC über Remmina Folgendes:

Remmina ist eine Fernwartungssoftware, die die Protokolle VNC, NX, RDP, XDMCP, SPICE, HTTP/HTTPS, SSH sowie SFTP unterstützt. Es ist möglich, eine Verbindung durch einen SSH-Tunnel zu leiten, was besonders sinnvoll ist, wenn man normalerweise unverschlüsselte Protokolle wie VNC über das Internet einsetzen möchte.

Was kann man nun tun?

Inspiriert durch einen entsprechenden Hinweis in einem Kommentar, im zuvor erwähnten Beitrag, möchte ich nun eine sicherere Vorgehensweise aufzeigen, um von einem Rechner auf einen anderen über VNC zuzugreifen. Es handelt sich dabei um die Verbindung vom Client zum Server mit einem SSH-Tunnel.

Einstellung am Host

Da der Server über das Internet erreichbar sein soll, muss zuerst die Voraussetzung hierzu über ein Portforwarding im Router geschaffen werden. In diesem Fall ist es der Port 5900 (siehe Beispiel).

VNC Portforwarding – 5900 am Host

Einstellung am Client

Genau wie im Artikel „Remote-Desktop Ubuntu 22.04“ gezeigt, wird am Client in Remmina die IP des Host eingetragen. Da dieser sich nicht im lokalen Netzwerk befindet, tippt man hier nun die öffentliche IP-Adresse in den Tab Grundlegend ein.

grundlegende Einstellungen von Remmina

Im Anschluss wechselt man in den Reiter SSH-Tunnel, aktiviert diesen und trägt die öffentliche IP des Client ein. Damit das alles funktioniert, ist auch am Router des Client ein Portforwarding auf SSH nötig. I.d.R. ist das der Port 22. Wenn dieser jedoch dauerhaft geöffnet bleiben soll, empfehle ich diesen wie hier beschrieben zu ändern, da der bekannte SSH-Port 22 sehr oft für Angriffe aus dem Internet genutzt wird.

Verwendung des SSH-Tunnels in Remmina

Sind alle Einstellungen korrekt, kann man sicher via SSH-Tunneling auf den entfernten Rechner zugreifen.

Bildschirmübernahme am Host

Die richtige IP im Netzwerk finden

03. April 2023 um 16:00

Serveranwendungen sind oft Thema in meinen Vorträgen und Workshops. I.d.R werden diese Anwendungen für den Zugriff aus dem Internet aufgebaut und konfiguriert. Steht die Hardware später an einem anderen Ort, wird diese dann über eine DynDNS-Adresse angesprochen.

Da die erwähnte Software oft keine großen Anforderungen an die Hardware stellt, auf der diese installiert wird, arbeite ich gern mit Mini-PCs oder Einplatinencomputern, wie dem Raspberry Pi.

Auf diese Geräte wird zuerst das Betriebssystem installiert. Geschieht das jedoch in einem fremden Netzwerk, so ist die lokale IP-Adresse dieses Rechners meist unbekannt. Den Zugriff auf den Router verweigert der Admin und an den Server ist i.d.R. auch kein Monitor angeschlossen.

Wie man aber trotzdem die IP-Adresse der im Netzwerk befindlichen Geräte identifizieren kann, beschreibt dieser Beitrag.

arp-scan verrät IP der WordPress-Installation

Ich nutze in solchen Fällen das Netzwerk-Scanning-Tool arp-scan.

Installation

arp-scan ist eine reine CLI-Anwendung (Command Line Interface). Diese kann unter Ubuntu oder Debian recht leicht über das Terminal installiert werden.

sudo apt install arp-scan

Anwendung

Das Netzwerk wird mit dem Befehl

sudo arp-scan -l

gescannt. Die im Netzwerk für arp-scan sichtbaren Geräte werden im Anschluss (siehe Grafik) aufgelistet.

Dieses kleine Tool erleichtert mir die Arbeit ungemein, wenn ich z.B. in einem fremden lokalen Netzwerk etwas über das Content Management System WordPress oder Nextcloud zeigen möchte.

Remote-Desktop Ubuntu 22.04

28. März 2023 um 19:29

Wer via Remote auf den Bildschirm eines anderen PC zugreifen möchte, hat mit Ubuntu bereits ein mächtiges Hilfsmittel dieses Betriebssystems an Bord. Die Rede ist hierbei von Remmina. Remmina ist ein Remote Desktop Client, welcher u.a die wichtigsten Protokolle, wie VNC und RDP beherrscht. Diese Fernwartungssoftware kann, anders als X2Go, den GNOME 3 Bildschirm übertragen. Hierzu muss kein weiterer Desktop auf dem Rechner installiert werden, mit dem sich der Client verbinden soll. Aus diesem Grund ist Remmina das beste Tool, um Verbindungen von Ubuntu zu Ubuntu via VNC zu realisieren. Im folgenden Beispiel zeige ich die Einrichtung anhand einer virtuellen Maschine.

Installation

Auf die Installation von weiteren Paketen kann client- und serverseitig verzichtet werden. Alle nötigen Voraussetzungen erfüllen beide Ubuntu-Rechner schon mit der Grundinstallation des Betriebssystems.

Konfiguration

Zuerst sollte man am Host die IP-Adresse des Rechners ermitteln. Nur über diese lässt sich später eine Verbindung aufbauen. Dazu geht man über Einstellungen -> Netzwerk -> Kabelgebunden -> Einstellungen (siehe Grafik).

Identifizierung der IP am Host

Ist die Adresse bekannt, erteilt man am Host bzw. Server die Freigabe zum Teilen. Dies geht über Einstellungen -> Freigabe.

Freigabe am Host

Nun kann man sich entscheiden, ob nur der Desktop zum Beobachten oder dieser auch zum Bedienen frei gegeben werden soll. Im konkreten Fall soll der Client komplett am Host arbeiten können. Deshalb werden beide Schalter (Remote Desktop und Remote Control) aktiviert.

Freigabe am Host

Weiterhin wird das VNC-Protokoll angewählt. In den erweiterten Einstellungen kann man nun auswählen, wie sich der Client auf das System zuschalten darf. Ich bevorzuge hier die Variante zur Berechtigung über Benutzername und Passwort. Alternativ kann der User am Host den Remote-Zugriff manuell gewähren.

Freigabe über Passwortabfrage am Host

Damit sind am Host alle nötigen Einstellungen gesetzt. Möchte man allerdings den Desktop aus der Ferne über das Internet erreichbar machen, so muss im Router ein Portforwarding des Host auf den Port 5900 gesetzt werden. Hierbei wird am Client die öffentliche und nicht die interne IP-Adresse des Host verwendet.

Am Client startet man nun die Anwendung Remmina und erstellt ein neues Profil (siehe Grafik).

Erstellung Profil in Remmina (Client)

Dazu wird das Protokoll Remmina-VNC-Plugin gewählt.

Auswahl des Übertragungsprotokolls in Remmina (Client)

Nun gibt man unter Server die IP des Host (im lokalen Netzwerk die interne IP-Adresse) ein. Benutzername und Passwort werden aus den Voreinstellungen des zu übernehmenden Computers gewählt.

Über speichern und verbinden stellt man dann die erste Verbindung her.

Verwendung von VNC in Remmina (Client)

Die Verbindung sollte nun stehen und am Host kann gearbeitet werden.

Desktop des entfernten Computers auf dem Client

Am entfernten Rechner wird im Tray angezeigt, dass auf diesen aus der Ferne zugegriffen wird.

Bildschirmübernahme am Host

Mumble auf dem Raspberry Pi

24. März 2023 um 18:53

In den Zeiten der Pandemie hatte fast jeder den Drang danach, Kontakte weiter aufrecht zu erhalten und zu pflegen. Die meisten traf das Kontaktverbot völlig unvorbereitet. Das man Videokonferenzen abhalten konnte, war bekannt, aber wer nutzte so etwas schon im Alltag. Viele von uns suchten plötzlich nach Möglichkeiten sich irgendwo online zu treffen. Große Softwarekonzerne ermöglichten einem plötzlich diese Funktionen kostenlos zu nutzen, mit dem Hintergrund spätere Kunden zu gewinnen. Zwar war die Nutzung dieser Dienste kostenlos, jedoch nicht umsonst. Nutzer bezahlten für diese Art der Nothilfe mit ihren Daten.

Da ich schon lange zuvor Open-Source-Lösungen dieser Art wie Nextcloud Talk nutzte, brauchte ich nur die Leute mit denen ich mich nicht treffen konnte, dort hin einzuladen. Für kleine Gesprächsrunden eignete sich meine Nextcloud durchaus. Für eine größere Anzahl von Nutzern war dies jedoch problematisch. Deshalb suchte ich nach einer anderen Lösung.

Perfekt für reine Audio-Treffen war Mumble, welches die ganze Pandemie-Zeit auf einem meiner Server lief. Die Nutzung meines Mumble-Servers verhielt sich aber umgekehrt proportional zur Aufhebung der Kontaktbeschränkung. Reale Treffen waren wieder möglich und man traf sich weniger online. Da ich aber die Technik doch hin und wieder nutzen möchte, habe ich den Versuch gewagt, einen Mumble-Server auf einem Raspberry Pi aufzusetzen. Wie das ganze geht, zeige ich in diesem Artikel.

Installation

Als Server dient ein Raspberry Pi 4 mit 4 GB RAM. Auf diesem wurde ein Raspberry Pi OS mit 64-Bit installiert. Der Mumble-Server wird wie folgt aufgesetzt:

sudo apt install mumble-server

Während der Installation wird abgefragt, ob der Server automatisch starten soll. Diese Frage beantwortet man mit „Ja“. Danach wird abgefragt, ob der Mumble-Server mit einer höheren Priorität zu nutzen ist. Diese Frage habe ich in meinem speziellen Fall mit „Nein“ beantwortet. Danach vergibt man noch ein SuperUser-Passwort und widmet sich dann der erweiterten Konfiguration.

Konfiguration

In der Konfigurationsdatei können nun gewünschte Anpassungen vorgenommen werden, wie z.B. Begrüßungstext, Port etc. Hier habe ich aber nur ein Passwort für die Nutzung meines Server vergeben, um die Kontrolle über den Server zu behalten. Weiterhin kann hier die maximale Anzahl der Besucher festgelegt werden.

sudo nano /etc/mumble-server.ini

Damit der Server jedoch aus dem Internet erreichbar ist, muss der Raspberry Pi mit einer DynDNS verbunden sein. Hier ein Beispiel für den Hoster all-inkl.com. Weiterhin muss der Port im heimischen Router freigegeben werden. Ich nutze den voreingestellten Standard-Port „64738“. Für das Forwarding muss TCP und UDP aktiviert werden.

Portforwarding – 64738

Sind diese Voraussetzungen erfüllt, kann der Mumble-Server gestartet werden.

sudo service mumble-server start

Client

Als Client auf dem PC und Notebook verwende ich Mumble.

PrivateBin über MySQL laufen lassen

22. März 2023 um 17:53

Seit längerer Zeit nutze ich als Pastebin-Alternative die Web-Anwendung PrivateBin, um Texte oder Code bei Bedarf zur Verfügung zu stellen. Da ich aber meine Dienste nicht mehr selbst hoste, sondern wieder bei einem renommierten Hoster bin, musste ich PrivateBin umziehen bzw. neu installieren.

Der für mich komfortablere Weg der Nutzung ist die Anbindung an eine MySQL-Datenbank. Wie das geht, erkläre ich im folgenden Artikel.

Installation

Zuallererst habe ich mir die aktuellste Version von PrivateBin (Version 1.5.1) unter dem Punkt Source code (zip) herunter geladen, diese entpackt und via FTP zum Hoster hochgeladen. Um das Verzeichnis aber für mich besser zugänglich zu machen, wurde dieses von /PrivateBin-1.5.1 in /privatebin umbenannt.

Damit ist mein neue Pastebin-Instanz unter https://domain.tld/privatebin verfügbar.

Konfiguration

Um jetzt nicht ins Data-Verzeichnis /privatebin/data zu speichern, sondern in eine MySQL-Datenbank, ändert man einfach den Dateinamen /privatebin/cfg/conf.sample.php in /privatebin/cfg/conf.php.

Nun werden noch die folgenden Zeilen auskommentiert und angepasst.

;[model]
; example of DB configuration for MySQL
;class = Database
;[model_options]
;dsn = "mysql:host=localhost;dbname=privatebin;charset=UTF8"
;tbl = "privatebin_"	; table prefix
;usr = "privatebin"
;pwd = "Z3r0P4ss"
;opt[12] = true	  ; PDO::ATTR_PERSISTENT

Hierzu trägt man den korrekten Datenbank-Namen, den Datenbank-Nutzer und das Passwort der zuvor eingestellten MySQL-Datenbank an entsprechender Stelle ein.

[model]
; example of DB configuration for MySQL
class = Database
[model_options]
dsn = "mysql:host=localhost;dbname=Datenbank-Namen;charset=UTF8"
tbl = "privatebin_"	; table prefix
usr = "Datenbank-Nutzer"
pwd = "Passwort"
opt[12] = true	  ; PDO::ATTR_PERSISTENT

Ist dies getan, sollte PrivateBin kein Data-Verzeichnis /privatebin/data anlegen, sondern gleich in die entsprechende Datenbank schreiben.

Viel Spaß beim Nachbauen!

Optimales Set-up zum Live-Streamen

15. März 2023 um 18:50

Livestreaming wird immer populärer und das vor allem in Deutschland. Seit der Coronapandemie haben etliche Menschen das Streaming für sich entdeckt, sei es selbst als Streamer oder einfach nur als Zuschauer. Die Pandemie kam auch zu einer glorreichen Zeit für Plattformen wie Twitch und YouTube, da sie genau zu dieser Zeit größer und beliebter wurden. Sie befanden sich somit schon auf dem aufsteigenden Ast und wurden gleichzeitig noch durch die Kontaktbeschränkung „beflügelt“.

Obwohl sich viele den Traum als erfolgreicher Streamer wünschen, schaffen es nur die wenigsten. Bei vielen hadert es bereits, wenn es um das PC-Set-up geht. Sie haben entweder keinen leistungsstarken Rechner dafür oder es stimmen andere Umstände nicht. Diese Probleme lassen sich aber in der Theorie einfach beheben, vor allem mit ein wenig Vorwissen.

Leistungsstarker Computer für Streaming

Das Wichtigste ist natürlich der Rechner. Er sollte über genügend Leistung verfügen, um Streaming möglich zu machen. Dabei kommt es natürlich auch darauf an, was gestreamt werden soll. Wenn eine Person lediglich vor dem Computer sitzt und mit Fans reden möchte, dann reicht ein herkömmlicher Computer ohne besondere Hardware aus. Wenn aber ein anspruchsvolles Spiel gespielt werden soll, dann werden die richtigen Komponenten benötigt. Dazu gehören vor allem eine gute Grafikkarte, ein starker Prozessor und ausreichend Arbeitsspeicher. Darüber hinaus kommt es natürlich auch auf das Motherboard, das Netzteil und den Festplattenspeicher an. Wer sich mit dieser Thematik nicht ausreichend auskennt, sollte einfach nach Gaming-Computern schauen, die von Experten empfohlen werden. Zudem sollte man dafür Windows 11 kaufen, um das optimale Betriebssystem zu besitzen.

Zusätzlich werden noch Sachen wie ein deutliches Mikrofon und eine gutauflösende Kamera benötigt. Der Stream soll schließlich professionell und visuell ansprechend wirken. Für diese beiden Elemente reicht ein Budget von knapp 200 Euro aus. Manchmal lassen sich die Produkte aber auch auf eBay Kleinanzeigen oder andere Portalen günstig finden.

Wer noch weiter in die Professionalität gehen möchte, sollte sich um einen Streaming-Raum kümmern. Hier kann der Hintergrund ästhetisch für den Stream ausgerichtet werden. Das gelingt durch eine entsprechende Beleuchtung, Dekorationen etc.

Alles andere am Stream wird durch den Streamer entschieden. Die Person hinter dem Stream ist verantwortlich dafür, wie gut der Stream laufen kann. Prinzipiell kann ein guter Streamer das schlechteste Set-up der Welt besitzen, aber trotzdem erfolgreich sein und andersherum ein schlechter Streamer das beste Set-up der besitzen und trotzdem keine Zuschauer haben.

Besuch bei den Chemnitzer Linux-Tagen 2023

11. März 2023 um 20:25

Am 11. und 12 März 2023 finden nach dreijähriger Zwangspause endlich wieder die Chemnitzer Linux-Tage an der TU Chemnitz statt. Unter dem Motto „Bewusst sein“ treffen sich zahlreiche Aussteller, Vortragende und Besucher zum Thema Linux und freie Software auf dem Uni-Campus.

TU Chemnitz
Chemnitzer Linux-Tage
Halbleiter von Chemnitz

Ich freute mich riesig dieses Event nach 2019 wieder besuchen zu können, um interessante Leute zu treffen und Gedanken auszutauschen. Am ersten Tag verabredete ich mich mit meinem Mitstreiter Andi alias Waldstepper aus Berlin, um gemeinsam einige Vorträge zu besuchen.

Das Highlight war einmal mehr der lebendige Beitrag „Nachhaltiges Computing mit KNOPPIX“ von Prof. Dipl.-Ing. Klaus Knopper. Überlegungen zu CO2-Fußabdrücken des von Knopper entwickelten Betriebssystems sowie Einblicke in das Innenleben dieser Live-Distribution stießen auf reges Interesse.

Vortrag Nachhaltiges Computing mit KNOPPIX

Natürlich konnte ich noch weiteren interessanten Vorträgen lauschen, wie VPN via WireGuard, Programmierung mit Scratch und Ausführungen zur komplexen Thematik Linux-Desktop, wo darüber philosophiert wurde, warum sich das OS bis heute noch nicht im Desktopbereich durchsetzen konnte und was nötig wäre, um ein solches Projekt zu realisieren. Hier gab es natürlich interessante und praxisnahe Ansätze, die zum Nachdenken anregten.

Einige gute Gespräche konnte ich auch an den Ständen von den Ubuntuusers, der FSFE, TUXEDO, Linuxnews, LibreOffice und den CMS Gardeners führen.

Besuch bei den Ubuntuusers
FSFE-Stand

Alles in allem war es heute ein interessanter und informativer Tag an der TU, der morgen seine Fortsetzung findet.

Internetgeschwindigkeit mit dem Raspberry Pi messen

08. März 2023 um 19:15

Über mein Smartphone führe ich hin und wieder einen Speedtest durch, um die Geschwindigkeit meines Internetanschlusses zu ermitteln. Wie das Ganze aber via Terminal unter Linux auf dem Raspberr Pi geht, erkläre ich im folgenden kurzen Artikel.

Speedtest via command-line interface

Ein Test über den RasPi macht bei mir zu Hause Sinn, da dieser fest über ein LAN-Kabel mit dem Router verbunden ist. Derartige Messungen über eine Direktverbindung sind genauer als Messungen über WiFi. Drahlose Prüfungen mit einem mobilen Endgerät wie Smartphone oder Tablet sind hingegen immer verlustbehaftet.

Die Internetgeschwindigkeit lässt sich mit einem Raspberry Pi relativ einfach über die Konsole ermitteln. Große Programmpakete werden hierfür nicht benötigt.

Installation

Zuerst wird das Paket speedtest-cli installiert.

sudo apt install speedtest-cli

Speedtest durchführen

Wenn das Package eingespielt ist, reicht die Eingabe des folgenden Befehls:

speedtest-cli

Hierbei wird der Test über den nächsten Server ausgeführt. Ist man mit dem Resultat nicht zufrieden, kann ein anderer Server angesteuert werden. Dazu lässt man sich die 10 nächsten Standorte anzeigen.

speedtest-cli --list

Retrieving speedtest.net configuration...
53128) WOBCOM GmbH (Wolfsburg, Germany) [132.61 km]
49459) FNOH-DSL (Uetze, Germany) [163.37 km]
47786) WebseitenDesigner.com (Hannover, Germany) [183.20 km]
45664) WEMACOM Telekommunikation GmbH (Schwerin, Germany) [242.14 km]
 8827) Marco Bungalski GmbH (Verden, Germany) [246.12 km]
45822) WEMACOM Telekommunikation GmbH (Hamburg, Germany) [266.29 km]
53256) LWLcom GmbH (Hamburg, Germany) [267.38 km]
 5733) LWLcom GmbH (Bremen, Germany) [279.95 km]
16596) Bremen Briteline GmbH (Bremen, Germany) [279.95 km]
 4556) TNG Stadtnetz GmbH (Kiel, Germany) [339.23 km]

Der Test über einen anderen Server wird dann mit dem Befehl

speedtest-cli --server 49459

angestoßen. In diesem Fall habe ich mich für den Server FNOH-DSL (Uetze, Germany) entschieden.

Grafische Ausgabe

Möchte man noch eine grafische Ausgabe des Ergebnis, setzt man einfach den entsprechenden Schalter (share) und bekommt am Ende der Ausgabe den Link zum Ergebnis (PNG-Datei).

speedtest-cli --share

Speedtest über OOKLA

Docker und Docker-Compose auf dem RaspberryPi

03. März 2023 um 16:00

Heute möchte ich zeigen, wie man Docker und Docker-Compose auf dem RaspberryPi installiert, um WordPress als Testumgebung im heimischen Netzwerk zu betreiben. Docker-Container haben durchaus einen gewissen Reiz, wenn man nicht allzu intensiv in die Auswahl und Konfiguration von Server-Anwendungen eintauchen möchte. Man muss jedoch ein gewisses Vertrauen gegenüber des Maintainers mitbringen.

Eine gute Basis, um Docker auf einem Raspberry Pi laufen zu lassen, bietet das Raspberry Pi OS Lite (64-bit). Dieses ist schnell mit dem Raspberry Pi Imager auf die MicroSD geflasht.

Installation Docker und Docker-Compose

Nach dem ersten Start des Betriebssystems führt man nun ein komplettes Upgrade durch. Dies sollte man tun, um alle Pakete auf dem neuesten Stand zu bringen, damit es keine Probleme während der Installation gibt und alle Anwendungen richtig miteinander arbeiten.

sudo apt update && sudo apt upgrade

Raspberry Pi 4

Nach dem Upgrade installiert man Docker.

curl -fsSL test.docker.com -o get-docker.sh && sh get-docker.sh

Nun muss der aktuelle User der Gruppe Docker hinzugefügt werden, i.d.R. ist das der User pi. In meinem Fall ist es der Benutzer intux.

sudo usermod -aG docker ${USER}

Ein erster Test checkt, ob dies funktioniert.

groups ${USER}

Nun wird der Raspberry Pi neu gebootet, damit die Installation und die Konfiguration umgesetzt werden kann.

sudo reboot now

Im nächsten Schritt wird Python 3 mit den entsprechenden Abhängigkeiten eingespielt.

sudo apt install libffi-dev libssl-dev python3-dev python3 python3-pip

Jetzt kann Docker-Compose aufgesetzt werden.

sudo pip3 install docker-compose

Der Dienst Docker wird aktiviert

sudo systemctl enable docker

und mit dem Image hello-world kann getestet werden, ob Docker läuft.

docker run hello-world

Installation WordPress

Nun erstellt man das Verzeichnis wordpress

mkdir wordpress

und wechselt dort hinein.

cd wordpress

Mit dem Editor Nano wird nun eine docker-compose.yml erstellt

nano docker-compose.yml

und mit folgendem Inhalt befüllt.

version: '3.6'

services:
  wordpress:
    image: wordpress:5.7.2
    ports:
      - 80:80
    environment:
      - "WORDPRESS_DB_USER=root"
      - "WORDPRESS_DB_PASSWORD=vFvpKjJ7HUbkD3wyLDp4"
    restart: always
    dns: 8.8.8.8
    volumes: 
      - /srv/wordpress:/var/www/html

  mysql:
    image: jsurf/rpi-mariadb
    volumes:
    - /srv/wordpress-mysql:/var/lib/mysql
    environment:
    - "MYSQL_ROOT_PASSWORD=vFvpKjJ7HUbkD3wyLDp4"
    - "MYSQL_DATABASE=wordpress"
    restart: always

  phpmyadmin:
    image: phpmyadmin:apache
    environment:
     - PMA_ARBITRARY=1
    restart: always
    ports:
     - 9999:80
    volumes:
     - /sessions

Zum Schluss wird das Image geladen und die Container gestartet.

docker-compose up -d

Die fertige WordPress-Installation ist nun über die IP (http://IP-Adresse) des Raspberry Pi erreichbar. Die Einrichtung von WordPress erfolgt über das Webinterface.

Viel Spaß beim Nachbauen!

Elektronischer Zugriff auf Informationen im Internet

21. Februar 2023 um 04:45

Internet- bzw. Webseiten-Besitzer brauchen einen sicheren Zugang auf all Ihre Informationen im Internet. Dies wird unter den Herausforderungen der aktuellen Zeit aus IT-Sicht immer bedeutender. Man denke nur an unbefugte Zugriffe auf Ihre Webseite oder einen Hackerangriff, bei dem heikle Daten gestohlen werden könnten. Aus diesen Gründen ist es wichtig, auf das richtige Webhosting vertrauen zu können. Auf dem Computersystem können all diese Informationen sicher verwahrt werden, wenn bestimmte Kriterien eingehalten werden. Der Kern des Hosting-Programms ist das Computersystem auf dem die Webseiten gehostet werden. Als Internetbenutzer müssen Sie Ihre Webseite unter Ihrem Browser suchen bzw. verwenden. Das ermöglicht Ihnen den Zugriff auf die eigene Webseite. Wenn eine sichere Verbindung gefunden worden ist, wird der Computer diese manifestieren. Steht diese Verbindung erst einmal, dann lässt sich über diese Verbindung ein Datenfenster zum Webserver herstellen. Bei der Auswahl einer sicheren Verbindung ist man stark von der Wahl des Hosting-Anbieters bzw. des Servicepakets abhängig. Man unterscheidet zwischen verschiedenen Hosting-Modellen auf die wir im folgenden Unterkapitel kurz näher eingehen möchten.

Welche Arten von Hosting-Services werden heute angeboten

Sie werden es kaum glauben, aber es wird auch heute noch kostenloses Hosting dem Kunden angeboten. Von diesem Paket dürfen Sie sich allerdings nicht allzu viel erwarten. Es gilt aber als Basisversion, die durchaus als Einstiegspaket gedacht ist. Ein kostenloser Webhosting Dienst bietet diesen Service unter Einschränkungen für eine eingeschränkte Anzahl an Webseiten an. Ein bedeutender Service ist das sogenannte virtuelle Webhosting. Bei diesem Service können verschiedene Webseiten auf einem einzigen Webserver gehostet werden. Eine Voraussetzung ist die Verbindung zum Internet.

Wenn viel Traffic gemanagt werden muss

Damit lässt sich bereits der Start einer Influencer Karriere aufbauen. Der Vorteil liegt vor allem bei einem sehr günstigen Preis. Für einen erschwinglichen Preis erhalten Sie inzwischen gute Leistungspakete. Ebenso bieten viele Anbieter einen technischen Kundendienst an. Interessant dürfte vielleicht auch ein sogenanntes dediziertes Hosting sein. Dieser Service wurde speziell für Webseiten mit einem hohen Traffic-Volumen hergestellt. Hier wird ein kompletter Webserver angemietet und die sichere Internetverbindung läuft über ein Hosting-Unternehmen. Vor allem Unternehmen mit einem starken Wachstum werden auf diesen Service zurückgreifen. Große Webseiten mit einem hohen Datenaufkommen sind bei diesem Service bestens aufgehoben.

Betriebssysteme im Vergleich: Windows, MacOS und Linux

19. Februar 2023 um 08:00

Betriebssysteme sind das Herzstück jedes Computers. Sie fungieren als Vermittler zwischen Hardware und Software, ermöglichen den Zugang zu Anwendungen und sorgen für die effiziente Nutzung der Systemressourcen. Die drei am häufigsten verwendeten Betriebssysteme sind Windows, MacOS und Linux. Jedes dieser Systeme hat seine eigenen Stärken und Schwächen, die es für bestimmte Anwendungsbereiche besser oder schlechter geeignet machen. Bevor man sich für ein Betriebssystem entscheidet, sollten man sich über die Bedürfnisse im Klaren sein und sicherstellen, dass das ausgewählte System den eigenen Anforderungen gerecht wird.

Windows

Windows ist das weitverbreitetste Betriebssystem für Personalcomputer, darunter Windows 10. Es bietet eine benutzerfreundliche Oberfläche, zahlreiche integrierte Anwendungen und eine große Community, die bei Problemen unterstützt. Die bekanntesten Funktionen sind der Windows Explorer für Dateiverwaltung und der Internet Explorer für das Surfen im Internet. Darüber hinaus gibt es auch viele Anwendungen aus Microsoft Office Suite. Einer der größten Vorteile von Windows ist seine Verfügbarkeit und Kompatibilität mit einer großen Anzahl von Hardware- und Softwarekomponenten. Es ist auch einfach zu bedienen und hat eine große Community, die bei Problemen unterstützt. Ein Nachteil ist jedoch, dass es anfälliger für Viren und Malware ist als andere Betriebssysteme. Es ist auch weniger anpassbar und bietet weniger Freiheit bei der Konfiguration.

MacOS

MacOS ist das Betriebssystem für Apple-Computer wie MacBooks und iMacs. Es ist bekannt für seine intuitive Benutzeroberfläche und die Integration mit anderen Apple-Produkten. Einige der bekanntesten Funktionen sind der Spotlight-Suchindex und der Safari-Webbrowser. MacOS bietet auch eine große Auswahl an kreativen Anwendungen wie Final Cut Pro und Logic Pro X. Einer der Vorteile von MacOS ist seine Stabilität und Sicherheit. Es ist weniger anfällig für Viren und Malware als Windows und bietet eine große Auswahl an kreativen Anwendungen. Ein Nachteil ist jedoch, dass es weniger kompatibel mit anderen Geräten und Softwarekomponenten ist als Windows. Es ist auch teurer als andere Betriebssysteme und hat eine geringere Auswahl an Spiele und Anwendungen.

Linux

Linux ist ein freies und offenes Betriebssystem, das auf einer großen Anzahl von Geräten eingesetzt wird, einschließlich Servern, Desktops, Laptops und Mobilgeräten. Es bietet eine Vielzahl von Distributionen, die jede für unterschiedliche Anwendungen und Benutzer optimiert sind. Einige der bekanntesten Funktionen sind die Terminal-Kommandozeile und die Gnome-Oberfläche. Einer der Vorteile von Linux ist seine Anpassbarkeit und Freiheit bei der Konfiguration. Es ist auch stabiler und sicherer als andere Betriebssysteme und hat eine große Community, die bei Problemen hilft.

Wahl des richtigen Betriebssystems

Es gibt viele verschiedene Betriebssysteme zur Auswahl, aber welches ist das Richtige für die eigenen individuellen Bedürfnisse? Während Windows eine große Nutzerbasis und breite Anwendbarkeit hat, bietet MacOS eine intuitive Benutzeroberfläche und Integration mit Apple-Geräten. Linux ist bekannt für seine Anpassbarkeit und Open-Source-Natur. Die Wahl des richtigen Betriebssystems hängt von den eigenen, spezifischen Anforderungen ab. Ein Designer könnte beispielsweise MacOS bevorzugen, weil es eine leistungsstarke Suite von Kreativwerkzeugen bietet, während ein Entwickler Linux bevorzugen könnten, weil es eine Vielzahl von Programmierwerkzeugen und Ressourcen bereitstellt.

 

Vom Code zur Elektronik: Wie Software-Anwendungen funktionieren

17. Februar 2023 um 07:30

Software-Anwendungen sind Programme, die auf Computern, mobilen Geräten oder im Internet ausgeführt werden, um bestimmte Aufgaben auszuführen. Sie sind ein integraler Bestandteil unseres digitalen Lebens und ermöglichen es uns, Aufgaben auszuführen. So kann man Software wie Microsoft Office kaufen oder Google Workspace für Kommunikation und Organisation nutzen, Betriebssysteme wie Windows, MacOS oder Linux installieren, soziale Medien-Apps wie Facebook oder Instagram und Spiele-Apps zur Unterhaltung runterladen.

Die Funktionsweise von Software-Anwendungen basiert auf Code, der von Programmierern geschrieben wird und von einem Computer ausgeführt wird, um die gewünschte Aufgabe auszuführen. Der Code kann mit verschiedenen Programmier- und Markup-Sprachen erstellt werden und die Ausführung erfolgt auf einem Computer, der über die notwendige Hardware-Unterstützung verfügt. Ein wichtiger Aspekt bei der Funktionsweise von Software-Anwendungen ist die Interaktion mit dem Benutzer, die über eine grafische Benutzeroberfläche realisiert wird.

Der Code hinter Software-Anwendungen

Der Code hinter einer Software-Anwendung ist eine Art von Programmierung, die es ermöglicht, ein Computerprogramm zu schreiben, das eine bestimmte Funktion ausführen kann. Dieser Code wird in einer bestimmten Programmiersprache geschrieben und verwendet Befehle und Algorithmen, um bestimmte Aktionen auszuführen. Bevor eine Software-Anwendung verwendet werden kann, muss sie in eine ausführbare Form übersetzt werden, die auf einem Computer ausgeführt werden kann. Die Art und Weise, wie eine Anwendung ausgeführt wird, hängt von verschiedenen Faktoren ab, wie der Art des Betriebssystems, auf dem die Anwendung ausgeführt wird, und der Art der Hardware, die verwendet wird.

Wie Daten verarbeitet und gespeichert werden

Die Verbindung zwischen Code und Elektronik ist entscheidend für die Funktionsweise von Software-Anwendungen. Der Code, der die Funktionalität einer Anwendung definiert, kommuniziert mit den elektronischen Komponenten des Computers, um Daten zu verarbeiten und zu speichern. Die Elektronik, einschließlich der CPU, RAM und Festplatte, verarbeitet die vom Code bereitgestellten Anweisungen und führt die erforderlichen Berechnungen und Datenspeicherungen aus. Der Code bestimmt, wie die Daten verarbeitet und gespeichert werden, während die Elektronik die Daten aktiv bearbeitet und speichert. Diese enge Zusammenarbeit zwischen Code und Elektronik ermöglicht es uns, Software-Anwendungen für eine Vielzahl von Aufgaben einzusetzen.

Interaktion von Software-Anwendungen mit anderen Geräten und Systemen

Elektronik spielt eine entscheidende Rolle bei der Interaktion von Software-Anwendungen mit anderen Geräten und Systemen. Ohne elektronische Komponenten wie Netzwerkkarten, Grafikkarten und andere Peripheriegeräte könnten Software-Anwendungen nicht mit anderen Geräten und Systemen kommunizieren. Diese Komponenten ermöglichen es, Daten zu übertragen und zu empfangen, die für eine reibungslose Interaktion erforderlich sind. Ein Beispiel hierfür ist, dass eine Anwendung wie ein Online-Banking-System Daten an eine Bank-Server übertragen muss, um die Überweisungen und Abrechnungen durchzuführen. Ohne die Verbindungen, die von elektronischen Komponenten bereitgestellt werden, wäre dies nicht möglich.

Trends und Entwicklungen in der Integration von Elektronik und Software-Anwendungen.

In der Zukunft werden Elektronik und Software-Anwendungen noch enger miteinander verknüpft sein. Die fortschreitende Digitalisierung führt zu neuen Trends wie dem Internet of Things (IoT), bei dem Geräte und Systeme untereinander vernetzt werden. Auch künstliche Intelligenz und maschinelles Lernen spielen eine immer größere Rolle in der Integration von Elektronik und Software-Anwendungen. Diese Entwicklungen ermöglichen es, Daten effizienter zu sammeln, zu analysieren und zu nutzen, was wiederum neue Anwendungsmöglichkeiten für Unternehmen und Verbraucher schafft.

Die Zukunft des Speicherns: Was wir von Terabyte-Laufwerken und anderen Technologien erwarten können

15. Februar 2023 um 05:30

Datenspeicherung ist ein kritischer Aspekt für Unternehmen und Organisationen jeder Größe. Die ständig wachsenden Datenmengen erfordern immer größere Speicherkapazitäten und höhere Übertragungsgeschwindigkeiten. Eine Herausforderung bei der Datenspeicherung heute ist die Verwaltung der hohen Kapazitäten und hohen Verfügbarkeitsanforderungen, die durch den Betrieb von Unternehmensanwendungen und Datenbanken erforderlich sind. Darüber hinaus ist es wichtig, Daten sicher und kontinuierlich zu speichern, um eine ununterbrochene Verfügbarkeit sicherzustellen und Datenverlust oder Datenkorruption zu vermeiden. In diesem Zusammenhang spielen Technologien wie Cloud-Speicher eine wichtige Rolle bei der Überwindung dieser Herausforderungen, indem sie skalierbare, zuverlässige und sichere Speicherlösungen bereitstellen.

Die Vorteile von Terabyte-Laufwerken im Vergleich zu herkömmlichen Speichermedien

Terabyte-Laufwerke bieten eine Vielzahl von Vorteilen im Vergleich zu herkömmlichen Speichermedien wie Festplatten oder USB-Sticks. Einer der wichtigsten Vorteile ist die Kapazität. Terabyte-Laufwerke bieten eine enorme Speicherkapazität, die es ermöglicht, große Datenmengen effizient und sicher zu speichern, sie sind sehr zuverlässig und bieten eine lange Lebensdauer. Ein weiterer Vorteil ist die Geschwindigkeit. Terabyte-Laufwerke nutzen modernste Technologien, um eine schnelle Datenübertragung zu ermöglichen. Dies ist besonders wichtig für Anwendungen, die große Datenmengen bearbeiten müssen, wie Videobearbeitung oder 3D-Modellierung.

In Bezug auf die Sicherheit bieten Terabyte-Laufwerke eine Vielzahl von Schutzfunktionen wie Passwort-Schutz, verschlüsselte Übertragung und Backup-Optionen, um sicherzustellen, dass wichtige Daten geschützt sind.

Die Entwicklung und Zukunftsaussichten von Terabyte-Laufwerken

Sie stellen eine bedeutende Weiterentwicklung in der Datenspeicherung dar und bieten enorme Kapazitäten und hohe Übertragungsgeschwindigkeiten im Vergleich zu herkömmlichen Speichermedien wie HDDs. Die Technologie basiert auf SSDs und nutzt moderne Controller- und Speicher-Technologien. Die Kapazität von Terabyte-Laufwerken kann durch die Verwendung von 3D-NAND-Speicherzellen und anderen Technologien wie QLC-Speicher erhöht werden. Die Entwicklung von Terabyte-Laufwerken geht weiter und es werden kontinuierlich neue Fortschritte erwartet, wie z.B. die Verwendung von NVMe-Protokollen und erhöhte Kapazitäten.

Cloud-Speicher als alternative Lösung für die Datenspeicherung

Durch die Nutzung von Serverinfrastrukturen in Rechenzentren bieten Cloud-Speicher auch eine vielseitige Lösung zur Datenspeicherung. Diese Technologie ermöglicht es Benutzern, ihre Daten von jedem Gerät aus zu speichern und zu übertragen, solange sie eine Internetverbindung haben. Die Datensicherheit ist durch die Verwendung von Verschlüsselung und Backup-Systemen gewährleistet.

In Bezug auf Büroanwendungen, wie LibreOffice, Zoho Office Suite, WPS Office und Microsoft 365 Single, bieten sichere Cloud-Speicherdienste eine bequeme Möglichkeit, Dateien zu speichern und zu teilen. Es ermöglicht den Benutzern, auf ihre Dateien von jedem Gerät aus zuzugreifen, was für mobiles Arbeiten und die Zusammenarbeit mit anderen Teammitgliedern sehr praktisch ist. Auch das Risiko eines Datenverlusts durch fehlerhafte Geräte oder Systemausfälle wird minimiert.

Terabyte-Laufwerken vs. Cloud-Speicher

Terabyte-Laufwerke und Cloud-Speicher sind beide wichtige Optionen für die Datenspeicherung. Terabyte-Laufwerke sind eine lokale Lösung, die eine hohe Kapazität und Geschwindigkeit bieten, aber auch gegenüber physischen Schäden und Datenverlust anfällig sind. Cloud-Speicher hingegen bieten die Möglichkeit, Daten über eine Netzwerkverbindung zu speichern und von überall auf der Welt auf sie zuzugreifen. Allerdings hängt die Zugänglichkeit von einer stabilen Internetverbindung ab und es kann eine Gebühr für den Zugang zu den Diensten erhoben werden. Unternehmen benötigen möglicherweise mehr Kapazität und Kontrolle über ihre Daten, während Privatanwender die Flexibilität und Kosteneinsparungen von Cloud-Speicher bevorzugen könnten.

PHP7.4-fpm auf PHP8.1-fpm für Nextcloud

08. Januar 2023 um 17:00

Einige Leser haben eine Nextcloud nach meinen Anleitungen und Vorgaben auf einem Raspberry Pi installiert, um ihre Daten nicht in fremde Hände zu geben, sondern diese in den eigenen vier Wänden zwischenzuspeichern. Seit Ende November verhangenen Jahres besteht hier jedoch ein Sicherheitsrisiko, da PHP 7.4 nicht mehr mit Sicherheits-Updates versorgt wird. Im Artikel „PHP 8.2 auf Raspberry Pi OS“ hatte ich bereits darauf hingewiesen.

Quelle: https://www.php.net/supported-versions.php

Da sich PHP 8.2 nicht mit der aktuellen Version Nextcloud 25 verträgt, möchte ich heute zeigen, wie man PHP7.4-fpm mit PHP8.1-fpm ersetzen kann. Dabei gehe ich auch noch auf die spezifische Konfiguration der Nextcloud auf dem Raspberry Pi ein.

Installation

Zuerst wird der Key für die neu einzubindende Paketquelle heruntergeladen.

sudo wget -qO /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg

Danach wird diese in das System eingebunden.

sudo echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list

Es erfolgt ein Upgrade.

sudo apt update && sudo apt upgrade -y

Ein erster Check zeigt die neue PHP-Version.

php -v

Hier wird im Moment noch PHP 8.2 ausgegeben. Um jedoch auf PHP 8.1 downzugraden, lädt man die entsprechenden Pakete nach.

sudo apt install php8.1 php8.1-mbstring php8.1-gd php8.1-curl php8.1-imagick php8.1-intl php8.1-bcmath php8.1-gmp php8.1-mysql php8.1-zip php8.1-xml php8.1-apcu libapache2-mod-php8.1

Mit folgendem Befehl muss nun die Version 8.1 manuell als aktuelle Version gesetzt werden.

sudo update-alternatives --config php

in meinem Fall ist das die Option 3.

php -v

Ein erneuter Check zeigt die gesetzte PHP-Version.

Nun wird PHP7.4-fpm deaktiviert, PHP8.1-fpm heruntergeladen und aktiviert.

sudo a2disconf php7.4-fpm
sudo apt install php8.1-fpm
sudo a2enconf php8.1-fpm

Ein nachfolgender Restart des Webservers führt die Änderungen abschließend aus.

sudo service apache2 restart

Nextcloud-Konfiguration

Jetzt muss die Nextcloud noch an die neue PHP-Version angepasst werden, um alle internen Checks zu bestehen. Dazu öffnet man die neue php.ini

sudo nano /etc/php/8.1/fpm/php.ini

setzt das memory_limit hoch auf 512MB

memory_limit = 512M

und fügt folgende Einträge am Ende für den Zwischenspeicher OPchache ein.

opcache.enable=1
opcache.interned_strings_buffer=64
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1

Zur Optimierung von PHP8.1-fpm werden speziell für das Modell Raspberry Pi 4 mit 4GB RAM in der Datei www.conf mit

sudo nano /etc/php/8.1/fpm/pool.d/www.conf

folgende Einträge angepasst.

pm = dynamic
pm.max_children = 120
pm.start_servers = 12
pm.min_spare_servers = 6
pm.max_spare_servers = 18

Ein Restart des Dienstes aktiviert diese anschließend.

sudo service php8.1-fpm restart

Jetzt wird in der apcu.ini

sudo nano /etc/php/8.1/mods-available/apcu.ini

noch am Ende diese Zeile eingetragen

apc.enable_cli=1

und abschließend der Webserver ein letztes Mal neu gestartet.

sudo service apache2 restart

Fazit

Mit ein wenig zeitlichem Aufwand lässt sich die eigene Cloud seitens der Skriptsprache wieder absichern. Auf das neue Release von Raspberry Pi OS zu warten, welches wieder eine mit Sicherheitspatches unterstützte PHP-Version mitbringt, wäre nicht ratsam.

Fingerprint auf XPS 13 unter Ubuntu 22.04

30. Dezember 2022 um 09:23

Seit letztem Jahr bin ich im Besitz eines XPS 13 9310. Dieses Gerät hatte ich in der Developer-Edition mit Ubuntu 20.04 erworben. Nach einem knappen haben Jahr wurde jedoch die aktuelle Long Term Support Version Ubuntu 22.04 veröffentlicht, für die das Gerät leider seitens Canonical noch keine Zertifizierung erhalten hat. Trotzdem war es mir wichtig die neue LTS produktiv auf diesem Gerät einzusetzen. Im Artikel „Erfahrungen mit Ubuntu 22.04“ habe ich darüber ausführlich berichtet.

Eine Quelle für Version 20.04 zu OEM-Erweiterungen war allerdings bis jetzt noch eingebunden. Fast alle Pakete wurden jedoch mit dem neuen OEM-Kernel obsolet, sodass ich diese aus der Paketverwaltung deaktivieren konnte. Ein Feature, auf welches ich ungern verzichtet hätte und welches als einziges nicht mehr zur Verfügung stand, war die Nutzung des Fingerabdrucksensors zur Anmeldung.

Das benötigte Paket konnte ich nun manuell heruntergeladen und einbinden.

Installation

Das Paket libfprint-2-tod1-goodix_0.0.4-0ubuntu1somerville1_amd64.deb wurde aus den Quellen von Canonical geladen

wget http://dell.archive.canonical.com/updates/pool/public/libf/libfprint-2-tod1-goodix/libfprint-2-tod1-goodix_0.0.4-0ubuntu1somerville1_amd64.deb

und im Anschluss installiert.

sudo dpkg -i libfprint-2-tod1-goodix_0.0.4-0ubuntu1somerville1_amd64.deb

Fehlende Abhängigkeiten mussten noch mit

sudo apt install -f

aufgelöst werden.

In der Benutzerverwaltung können nun wieder Fingerprints zur Anmeldung auf dem XPS hinterlegt werden.

Fingerabdrucksensor in der Benutzerverwaltung

PHP 8.2 auf Raspberry Pi OS

28. Dezember 2022 um 14:23

Wer einen Raspberry Pi zu Hause als Webserver betreibt, wird sicher schon bemerkt haben, dass die Skriptsprache PHP 7.4 nur noch bis zum 28.11.2022 mit Security-Updates versorgt wurde. Das heißt konkret, PHP 7.4 ist End of Live (EOL). Das ist natürlich unschön, da die nächste Version des Raspberry Pi OS der Raspberry Pi Foundation auf Basis von Debian GNU/Linux 12 wahrscheinlich erst im Sommer 2023 veröffentlicht wird.

Quelle: https://www.php.net/supported-versions.php

Was kann man nun tun?

Eine Möglichkeit wäre zu warten und zu hoffen, dass Sicherheitslücken, die sich noch auftun, nicht auf dem Home-Server für Einbrüche sorgen. Eine andere und weitaus sicherere Alternative ist, das Raspberry Pi OS mit der aktuellen PHP-Version 8.2 zu versorgen.

Es folgt eine kleine Anleitung.

Installation

Zuerst lädt man den Key für die neu einzubindende Paketquelle herunter.

sudo wget -qO /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg

Danach wird diese ins System eingetragen.

sudo echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list

Nun liest man die neue Quelle ein und führt das Upgrade durch.

sudo apt update && sudo apt upgrade -y

Ein abschließender Check zeigt die neue PHP-Version im Terminal.

php -v

Viel Spaß!

Nachtrag für Nextcloud-User

Nextcloud 25 ist leider noch nicht kompatibel mit PHP 8.2. Dies ist aber ab Version 26 vorgesehen.

Chemnitzer Linux-Tage 2023

05. Dezember 2022 um 15:30

Unter dem Motto „Bewusst sein“ finden am 11. und 12. März 2023 endlich wieder die Chemnitzer Linux-Tage statt. Nach zwei Jahren als Online-Veranstaltung ist die Freude riesengroß, die CLT wieder im Hörsaalgebäude der Technischen Universität Chemnitz abhalten zu können.

Auch 2023 haben sich die Chemnitzer Linux-Tage einen Platz an einem März-Wochenende gesucht. Also Kalender gezückt und den 11. und 12. März 2023 dick einkreisen! Es lohnt sich bestimmt.

Wir wünschen uns sehr, euch vor Ort wiederzusehen und hoffen, dass die Lage im März es zulässt, dass wir Linux- und Open-Source-Freunde Anfang 2023 nach Chemnitz einladen können. Aktuell planen wir für eine Präsenzveranstaltung iN gewohnter Umgebung. Über unsere Pressemitteilungen, Sozialen-Median und Themenseite könnt ihr euch diesbezüglich auf dem Laufenden halten.

Lokale Google Fonts in WordPress

06. Dezember 2022 um 17:30

In letzter Zeit rollt wieder eine Abmahnwelle übers Land, die den ein oder anderen Betreiber eigener kleiner WordPress-Seiten kalt erwischen dürfte. Dieses Mal ist der Stein des Anstoßes die mögliche Einbinung von Google Fonts. Nicht, dass die Verwendung dieser Schriftarten nicht erlaubt wäre. Nein, es geht darum, dass diese Schriftarten von Google beim Aufruf der Seite i.d.R. erst heruntergeladen werden und es hierbei zu einem Austausch von IP-Adressen kommt, was kritisch bewertet wird.

Ob die eigene Webseite nun tatsächlich Google Fonts verwendet, welche temporär herunter geladen werden, kann man hier checken: https://www.e-recht24.de/google-fonts-scanner

Lösung

Abhilfe schafft hier das Plugin Local Google Fonts. Dieses aktiviert man und setzt das Häkchen „Schriften automatisch laden“ (siehe Grafik). Danach besucht man die eigene Seite und klickt sich durch die Inhalte. Die entdeckten Google-Schriftarten werden nun lokal auf die Webseite geladen. Der Besucher bekommt diese dann nun direkt von der Webseite ausgeliefert und tauscht somit keine IP-Adressen mit Dritten (Google) aus.

Einstellungen – Local Google Fonts
❌
❌