Crazy Idee zum Urlaubsbilder teilen

Durch die aktuellen Datenschutzgesetze ist doch nicht ganz zu leicht eine Website für die Urlaubsbilder zu betreiben, die man mit der Familie teilen möchte. Da ich aber trotzdem meinen Eltern, Großeltern und ein paar anderen Familienmitgliedern fast live die Bilder zeigen möchte, habe ich eine kleine Lösung entwickelt. Die Lösung ist als alternative für ein VPN zu betrachten, was bei einer guten Internetverbindung viel einfacher wäre… Doch leider bin ich ein Dorfkind und muss erfinderisch sein.
Ich werde dafür ein paar alte Notebooks und Raspberry PI Computer als lokale Webserver verteilen. Für die weniger gut ausgestatteten Geräte verteile ich gleich einen angesteckten USB-Stick als Speicherlösung. Alle Computer dieser Lösung laufen auf Linux. Auf jeden dieser Systeme läuft die Software Syncthing um eine gemeinsame Freigabe zu erzeugen.

Zur Anzeige der Bilder in einem Browser nutze ich http://sigal.saimon.org. Die Einrichtung möchte ich euch in den folgenden Zeilen etwas erläutern.

Für meine Eltern nutze ich einen Mini-PC, der schon im Haushalt 24/7 läuft. Leider ist die Festplatte sehr klein und ich nutze hier ein externes Festplattengehäuse mit zwei Einschüben. Für den Speicher nutze ich zwei ältere Festplatten, die ich vor der Verwendung mit dem Command „wipe“ von Altdaten bereinige. Dies dauert durchaus mehrere Stunden, da die Software für das sichere Löschen gedacht ist und das ganze über USB läuft. Danach habe ich beide Festplatten in einen BTRFS-Verbund gehoben mit „sudo mkfs.btrfs --csum sha256 --data single --metadata dup --label ExtICEcube /dev/sdb /dev/sdc“. Damit der Mount auch genutzt wird, habe ich einen Eintrag in die /etc/fstab angefügt: UUID=xxxxxxxx /home/user/ExternHDD btrfs autodefrag,compress-force=zstd:15,space_cache=v2,nofail 0 1

Nachdem es nun einen Ort zur Speicherung der Daten gibt, wird es Zeit die Bildergalerie zu erstellen. Dazu ändere ich den Besitzer des Mounts zu meinem aktuellen Nutzer und führe in dem Ordner den Befehl „sigal init“ aus. Damit wird eine Config erstellt, die man bearbeiten kann. In der Datei ist das Quellverzeichnis „pictures“ angegeben, dieses werde ich weiter nutzen und auf der externen Festplatte erstellen. Dafür nutze ich aber kein normalen Ordner, sondern ein Subvolume. Wenn ich später mal Daten sichern möchte, hat dies einen Vorteil. Den Destinationfolder habe ich in der Config auf „web“ geändert und auch für diesen ein Subvolume erstellt. Und zur Sicherheit arbeite ich mit vollen Pfadangaben.

Neben dem Layout und Design, ändere ich die Config auf use_orig = True.
Die Veränderungen der Bilder sind nicht nötig, da ich diese nicht
über das öffentliche Internet ausliefere.

Anschließend erstelle ich einen Share für den Ordner pictures in Syncthing.
Dieser sollte auf den Geräten, die man verteilt als „Nur empfangen“ eingestellt werden.

Als Webserver nutze ich Python. Dieser sollte bei Python3 dabei sein und
kann einfach über Systemd gestartet werden.

Somit hat jeder seine eigene kleine Homepage zuhause.

PS: ich habe die Idee bei der Umsetzung einfach mit notiert, ich kann noch nicht sagen wie gut es laufen wird. Aktuell habe ich schon gemerkt, dass es mindestens ein Bild geben muss.

Das ist ein Interessanter Ansatz. Verstehe ich das richtig, die Rechner sind über das Internet direkt via Syncthing verbunden?

Sie versuchen eine direkte Verbindung wie bei P2P-Netzwerken aufzubauen, sollte das nicht klappen… gibt es noch Vermittlungskonten, welche die verschlüsselten Daten weiterleiten könnten.

Nur nochmal zur Klarstellung: Es ist kein VPN und die Website liegt dann auf jedem dieser Rechner.

möchte kurz berichten, es hat alles super funktioniert.

Super, das freut mich. :smiley: