← ZurĂŒck zur Zentrale

Der digitale Bunker: SouverÀnitÀt per Skript

von Alien Investor

Baue deine eigenen VerschlĂŒsselungs-Tools mit 50 Zeilen Bash.

Echte PrivatsphĂ€re basiert auf Transparenz, nicht auf geheimen Apps oder Blackboxes. Diese Anleitung liefert dir zwei auditierbare Bash-Skripte, um sensible Ordner mit Standard-GPG und AES256 zu verschlĂŒsseln und zu entschlĂŒsseln. Keine Cloud, kein Abo, einfach nur reine Mathematik und Linux.

„Don't trust, verify.“
Wir sagen das ĂŒber Bitcoin-Nodes. Wir sollten es auch ĂŒber unsere Sicherheits-Tools sagen.

Viele Menschen verlassen sich auf komplexe Apps mit glÀnzenden OberflÀchen, um ihre Daten zu verstecken. Aber KomplexitÀt ist der Feind der Sicherheit. Jede Zeile Code, die du nicht geschrieben hast (und nicht lesen kannst), ist ein potenzielles Sicherheitsrisiko.

Die robusteste VerschlĂŒsselung kommt oft von Werkzeugen, die seit Jahrzehnten getestet werden: GPG und Tar.

Im Folgenden findest du zwei Skripte, die ich nutze, um Daten zu sichern. Sie verwandeln jeden Ordner in ein verschlĂŒsseltes .tar.gz.gpg-Archiv. Sie funktionieren auf deinem High-End-Linux-Desktop und sogar auf deinem Smartphone (via Termux).

Warum Skripte nutzen?

1. Das Konzept

Wir erfinden das Rad nicht neu. Wir ketten Standard-Tools aneinander:

OPSEC-Hinweis

Diese Skripte nutzen symmetrische VerschlĂŒsselung. Die Sicherheit hĂ€ngt vollstĂ€ndig von der StĂ€rke deines Passworts ab. Nutze ein langes Passwort mit hoher Entropie (ZufĂ€lligkeit), das du nirgendwo sonst verwendest.

2. Teil 1: Das Schild (VerschlĂŒsselung)

Speichere diesen Code als Datei namens encrypt-folder.sh.

#!/bin/bash
# 🔒 Vereinheitlichtes VerschlĂŒsselungs-Skript (TUXEDO + Termux)
# Ausgabe: ~/VerschlĂŒsselt_<Ordner>.tar.gz.gpg (+ .sha256)
#
# S2K-HĂ€rtung: SHA512 + AES256 + maximale Iterationen (65011712)
# → Brute-Force-Angriffe auf das Passwort werden 100x teurer.

set -Eeuo pipefail
umask 077

read -p "📁 Bitte gib den Ordnernamen ein: " ORDNERNAME
if [ -z "${ORDNERNAME:-}" ]; then
  echo "❌ Kein Name eingegeben. Abbruch."
  exit 1
fi

SRC="$HOME/$ORDNERNAME"
if [ ! -d "$SRC" ]; then
  echo "❌ Ordner nicht gefunden: $SRC"
  exit 1
fi

# Zielpfad unterscheiden (PC vs. Termux)
if [ -d "$HOME/storage/downloads" ]; then
  # Termux-Speicher (Android)
  OUTDIR="$HOME/storage/downloads"
else
  # TUXEDO OS / Linux Desktop
  OUTDIR="$HOME"
fi

ZIEL="$OUTDIR/VerschlĂŒsselt_${ORDNERNAME}.tar.gz.gpg"
if [ -f "$ZIEL" ]; then
  ZIEL="$OUTDIR/VerschlĂŒsselt_${ORDNERNAME}_$(date +%F_%H%M).tar.gz.gpg"
fi

echo "📩 Packe & verschlĂŒssele → $ZIEL"

# Packen und verschlĂŒsseln im Stream (kein Klartext-Zwischenschritt)
# S2K-HĂ€rtung:
#   --s2k-cipher-algo AES256   → SchlĂŒsselableitung mit AES256
#   --s2k-digest-algo SHA512   → SHA512 als Hash (stĂ€rker als Standard SHA1)
#   --s2k-count 65011712       → Maximale Iterationen → Brute-Force 100x teurer
#   --no-symkey-cache          → Passwort wird nicht im GPG-Agenten gecacht
tar -C "$HOME" -cf - -- "$ORDNERNAME" \
  | gzip -9 \
  | gpg --symmetric \
      --cipher-algo AES256 \
      --s2k-cipher-algo AES256 \
      --s2k-digest-algo SHA512 \
      --s2k-count 65011712 \
      --compress-level 0 \
      --no-symkey-cache \
      -o "$ZIEL"

# PrĂŒfsumme mit relativem Namen
( cd "$(dirname "$ZIEL")" && sha256sum "$(basename "$ZIEL")" > "$(basename "$ZIEL").sha256" )

# Optional Desktop-Benachrichtigung (nur unter Linux)
if command -v notify-send >/dev/null 2>&1; then
  notify-send "✅ VerschlĂŒsselt" "Archiv: $(basename "$ZIEL")"
fi

echo "✅ Fertig: $(basename "$ZIEL")"
echo "đŸ§© SHA256-Datei: $(basename "$ZIEL").sha256"

3. Teil 2: Der SchlĂŒssel (EntschlĂŒsselung)

Das EntschlĂŒsselungs-Skript bietet drei Modi — je nachdem was du brauchst:

Speichere diesen Code als Datei namens decrypt-folder.sh.

#!/usr/bin/env bash
# decrypt-folder.sh – EntschlĂŒsselt <NAME>[.tar.gz].gpg aus ~ oder ~/Downloads.
# Modi: SHA256-Check, Loopback-Fallback, Entpacken (E), Liste (L), Standard: TAR schreiben (T)

set -Eeuo pipefail
umask 077
export GPG_TTY="${GPG_TTY:-$(tty 2>/dev/null || true)}"

die(){ printf "❌ %s\n" "$*" >&2; exit 1; }

# --- Eingabe: Name oder Pfad, mit/ohne .gpg ---
NAME="${1-}"
if [ -z "$NAME" ]; then
  printf "Wie heißt die verschlĂŒsselte Datei (ohne .gpg)? "
  IFS= read -r NAME
fi
[ -n "$NAME" ] || die "Kein Name."

# Falls Nutzer doch .gpg mitgegeben hat → abstreifen
NAME="${NAME%.gpg}"

# Kandidaten-Pfade fĂŒr die .gpg finden
CAND=(
  "$HOME/${NAME}.gpg"
  "$HOME/Downloads/${NAME}.gpg"
  "$PWD/${NAME}.gpg"
)
INPUT=""
for p in "${CAND[@]}"; do
  [ -f "$p" ] && INPUT="$p" && break
done
[ -n "$INPUT" ] || die "Nicht gefunden: ${NAME}.gpg (in ~ oder ~/Downloads)."

# Ziele
OUT_TAR="$HOME/${NAME}"                                # z.B. ~/VerschlĂŒsselt_SAP.tar.gz
STAMP="$(date +%F_%H%M%S)"
RESTORE="$HOME/Restore/${NAME}_${STAMP}"
mkdir -p "$HOME/Restore"

# Optionaler SHA-Check (pfadunabhÀngig vergleichen)
if [ -f "${INPUT}.sha256" ]; then
  echo "🔎 PrĂŒfe SHA256 ..."
  exp="$(awk '{print $1}' "${INPUT}.sha256")"
  act="$(sha256sum "$INPUT" | awk '{print $1}')"
  if [ "$exp" = "$act" ]; then
    echo "✅ SHA256 OK"
  else
    echo "⚠  SHA256 Mismatch! Weiter mit Vorsicht."
  fi
fi

# Modus abfragen
printf "Modus: [T]AR schreiben (Standard) / [E]ntpacken / [L]iste: "
read -r -n1 MODE || true; echo
MODE=${MODE:-T}

# Helfer-Funktionen (mit Loopback-Fallback)
decrypt_to_tar() {
  gpg --decrypt "$INPUT" | tar -xz -C "$RESTORE" && return 0
  echo "⚠  Versuch mit loopback 
"
  gpg --pinentry-mode loopback --decrypt "$INPUT" | tar -xz -C "$RESTORE"
}
decrypt_to_file() {
  gpg --output "$OUT_TAR" --decrypt "$INPUT" && return 0
  echo "⚠  Versuch mit loopback 
"
  gpg --pinentry-mode loopback --output "$OUT_TAR" --decrypt "$INPUT"
}

case "$MODE" in
  L|l)
    gpg --decrypt "$INPUT" | tar -tz || \
    gpg --pinentry-mode loopback --decrypt "$INPUT" | tar -tz
    ;;
  E|e)
    mkdir -p "$RESTORE"
    echo "📩 Entpacke nach: $RESTORE"
    decrypt_to_tar
    command -v notify-send >/dev/null && notify-send "✅ Entpackt" "$RESTORE"
    echo "✅ Fertig: $RESTORE"
    ;;
  T|t|*)
    # Standard: entschlĂŒsselte .tar.gz im HOME schreiben
    [ -f "$OUT_TAR" ] && rm -f "$OUT_TAR"
    echo "📝 Schreibe: $OUT_TAR"
    decrypt_to_file
    command -v notify-send >/dev/null && notify-send "✅ EntschlĂŒsselt" "$OUT_TAR"
    echo "✅ Fertig: $OUT_TAR"
    ;;
esac

🧰 Tools fĂŒr echte EigentĂŒmer (Werbung/Affiliate)

Tools, die ich selbst nutze – fĂŒr Bitcoin-Selbstverwahrung und digitale SouverĂ€nitĂ€t:

Hinweis: Bei einigen Links handelt es sich um Affiliate-Links. Wenn du sie nutzt, unterstĂŒtzt du meine Arbeit, ohne dass es dich mehr kostet. Danke!

Quellen (Auswahl)

Diese Anleitung basiert auf der offiziellen Dokumentation von GNU Privacy Guard (GPG) und GNU Tar sowie gĂ€ngigen Best Practices fĂŒr Bash-Scripting und Datensicherheit unter Linux.


Energie aufladen (Spenden)

Treibstoff fĂŒr das Mutterschiff senden

Danke fĂŒr deine UnterstĂŒtzung – fĂŒr freie Inhalte, FinanzsouverĂ€nitĂ€t und den außerirdischen Widerstand!