„Whatsapp bekommt meine Adressen nicht, Google nicht meine Termine und Microsoft nicht meine Passwörter!“. Was so flott formuliert daherkommt, ist im Alltag gar nicht so einfach umsetzbar.
„Privat im Netz“ soll digitale Souveränität(*) für Normalbürger fördern. Der Arbeitstitel stammt von Claudia. Im Prinzip handelt es sich um einzelne Nextcloud-Instanzen auf Kleinstcomputern für Privatleute.
(*): Die Bezeichnung „digitale Souveränität“ ist insoweit ein Modebegriff, dass zwei Leute dazu drei Vorstellungen haben. Siehe: https://netzpolitik.org/2025/interview-wir-muessen-nicht-digital-souveraen-werden/
Designziele für dieses Projekt sind:
Ein wichtiger Aspekt beim Betrieb eines "Mini-Servers" ist die Sicherheit vor Datenverlust. Es soll einerseits immer ein Backup der persönlichen Daten vorhanden sein. Und andererseits soll der Datenzugriff durch Dritte nicht einfach sein. Ein weiterer Aspekt ist der Schutz der Dienste vor missbräuchlicher Nutzung, aber das soll an dieser Stelle nicht ausgeführt werden.
Ein grundsätzlicher Zugriffsschutz soll durch eine verschlüsselte Datenspeicherung erreicht werden. Datenverlusten beugt man mit regelmäßigen Backups vor. Das funktioniert so:
Notiz: Der lesende Dateizugriff auf den verschlüsselten Bereich der SD-Karte oder auf ein Backup-Image kann auch direkt mit einem Linux-Desktop-Rechner erfolgen. Dazu muss natürlich das Benutzerpasswort eingegeben werden. Ein direkter Schreibzugriff kann das tägliche Backup stören, dies wird ggf. erst bei einen der regelmäßigen Backup-Geber-Nehmer-Sync-Termine korrigiert.
Die Auswahl an Kleincomputern (SBC, Single Board Computer) ist einigermaßen groß. Allerdings ist die Preisvorgabe eng, daher:
Ich habe derzeit zwei Orange Pi Zero 2 unter Beobachtung: einen mit 512 Mb RAM und einen mit 1024 Mb RAM. Der kleinere segfaultet gerne mal, wenn man zu häufig neu startet (Temp?). Kühlkörper sind eigentlich optional, einen Kühlkörper aufzukleben schadet aber auch nicht.
Der Online-Lieferumfang ist normalerweise mit (kleiner) Antenne, aber ohne SD-Karte, ohne Gehäuse, ohne Lüfter, ohne Kühlkörper und ohne Netzteil. Mindestens ein USB-C-Netzteil könnte man bei Benutzern voraussetzen, Gehäuse wären vllt. im Lab druckbar.
Der Orange Pi Zero 3 könnte ggf. auch vom SPI-Flash gestartet werden (Notsystem, PXE). Möglicherweise aber nur, wenn keine SD-Karte gesteckt ist. Wahlweise SPI-Flash zur Schlüsselspeicherung. Es gibt einen weiteren USB-2 auf Pins und einen USB-3, unklar ob der schneller ist. Siehe http://www.orangepi.org/orangepiwiki/index.php/OrangePiZero_3
Die Sinovoip Banana Pi sind ebenfalls mit Allwinner-SoC, in der Regel mit 4x32 Bit. Vorteil: oft mit eMMC; Nachteil: nur 32 Bit, weniger Bang-for-the-Buck.
Die Radxa-SBC („Rock Pi“) sind leistungsfähig und die Rockchip SoC sind fast immer mit PCI-Express. Hier wäre NVMe oder SSD möglich. Leider zu teuer. Außerdem habe ich gerade keine Erfahrung damit.
Der Preispunkt gilt auch für die Südkoreaner von Hardkernel. Die Odroid-SBC ursprünglich mit Samsung-Exynos und heute oft mit Rockchip. Eigentlich alle mit steckbaren eMMC. Leider nicht unter €50.
Die meisten zuvor genannten SBC werden von Armbian unterstützt. Mit Armbian steht ein immer ähnlich zu konfigurierendes und aktuelles OS zur Verfügung, bei dem mindestens Boot-fähige Images für SD-Karten herunterladbar sind. Anders als bei Rasperry PI OS mit dem NetzwerkManager erfolgt bei Armbian die Netzwerk-Konfiguration aber über Netplan. Ansonsten sind die beiden OS recht ähnlich. Möglicherweise kann die Netplan-Konfiguration von Armbian auf Raspberry PI OS übertragen werden, dann fiele dieser Unterschied weg.
Ein Armbian-Image kann heruntergeladen und von SD-Karte gestartet werden. In dieser Situation ist eine Erstkonfiguration mit HDMI-Bildschirm und USB-Tastatur möglich. Dazu wird eine Micro-HDMI-Anschlussleitung oder ein Micro-HDMI-Adapter für das normale HDMI benötigt. Wahlweise funktioniert auch UART, wofür allerdings ein 3.3 Volt UART-zu-USB-Adapter benötigt wird.
Auszuprobieren ist, ob das auf dem SBC vorhandene Wifi zuverlässig auch AP-Sta unterstützt, eine Betriebsart die einen Access Point zur Verfügung stellt und dabei gleichzeitig eine Verbindung zu einem anderen Access Point erlaubt. Damit ließe sich ein „Captive Portal“ realisieren, so dass auf einem neu über Wifi verbundenen Benutzergerät automatisch ein Browser startet und eine URL wie "https://www.privat-in.de/cgi-bin/connect" aufruft.
NextcloudPi ist ein Projekt, das bei der Einrichtung einer Nextcloud auf einem SBC unterstützt. NextcloudPi kann von https://nextcloudpi.com/ als Image für 64-Bit SBC heruntergeladen und auf SD-Karte geschrieben werden. Wahlweise kann auch einfach ein Installationsskript auf einem noch weitgehend unkonfigurierten Armbian oder Raspberry Pi OS ausgeführt werden.
Notiz: Nextcloud (eine Firma) und NextcloudPi (ein Projekt) ist nicht dasselbe, aber gibt es ein gewisses Zusammenspiel. Siehe z.B. https://nextcloud.com/de/blog/nextcloud-podcast-all-about-the-nextcloudpi-project/
Im Zusammenspiel mit Armbian erstellt das Installationsskript eine recht ordentlich konfigurierte Nextcloud:
Zum Ende des Installationsskripts müssen auf einer Erstzugangsseite die zwei wichtigsten (langen) Passwörter kopiert und irgendwo memoriert werden.
Dies ist Zukunftsmusik, zeigt aber eine mögliche Weiterentwicklungsrichtung: Unter https://yunohost.org/ kann ein Installationsskript heruntergeladen werden, welches Prinzipiell mit dem hier beschriebenen System kompatibel ist. Yunohost ermöglicht es, sehr unterschiedliche Dienstprogramme unter einer einheitlichen Benutzerverwaltung zu installieren. Der Yunohost-App-Katalog umfasst Titel wie "Nextcloud", aber auch "Home Assistant", "Jitsi Meet", "Peertube", "Wordpress", "Mastodon", "Dokuwiki" um nur einige zu nennen deren Namen ich zuordnen kann. Generell funktioniert die Installation. Welche der Apps auf einem Mini-Server praktikabel sind oder noch zusätzlichen Optimierungsbedarf haben muss ermittelt werden.
Auch wenn niemand gerne ließt, jeder lieber YouTube guckt oder sich besser noch die Hand führen lässt: Das skaliert nur, wenn die Erstinbetriebnahme auf einem Din-A4-Zettel beschrieben werden kann.
Das muss möglicherweise sogar „durchgespielt“ werden: Mit mindestens einem Menschen aus der Zielgruppe sollte man das vorbereitete System bei dem Menschen zu hause ausprobieren lassen. Das ist ggf. nicht nur eine hohe Hürde für die besagten Normalmenschen sondern auch für die Projektbeteiligten.
Auch der weitere Betrieb darf gerne unkompliziert sein: Wie richte ich ein neues Smartphone ein, was ist wenn die SD-Karte kaputt ist, wie stelle ich auf einen anderen Internet-Anschluss um, wie tausche ich defekte Hardware. Das kann gerne im Rahmen von Supportseiten, einer Linkliste, einem Forum, einer Chatgruppe o.ä. passieren.
Ich habe zu Demozwecken eine einfache VPS und eine Domain bei Strato aufgesetzt. Das ist eine 1€/mtl VPS und eine entsprechend teure Domain: https://privat-in.de/ mit:
Notiz: Auf allen diesen Nextcloud-Instanzen gibt es das Account „fablab“, Passwort verrate ich gerne im kleinen Kreis. Die Anmeldung kann ein paar Sekunden dauern, aber der wiederholte Kontakt via Nextcloud-Sync oder DavX5 funktioniert schneller.