Sonntag, 30. März 2025

Slackware 15 | XFCE4 | Conky | Custom Tools

Slackware begleitet mich seit 30 Jahren privat & beruflich und ist für mich längst mehr als nur ein Betriebssystem geworden. Es verkörpert genau das, was ich an Linux so schätze: 

Minimalismus, Kontrolle und maximale Freiheit.

Ich nutze bewusst keine Anwendungen von Drittanbietern, denn Slackware gibt mir die Möglichkeit, die Tools und Mechanismen, die ich brauche, selbst zu entwickeln. Statt mich den Gefahren von Fehlprogrammierungen und Hintertüren auszusetzen, verbringe ich meine Zeit lieber damit, eigene Scripte zu schreiben, individuelle Lösungen zu entwickeln und genau jene Funktionen umzusetzen, die ich tatsächlich benötige.

Jede Anwendung, die bei mir läuft, ist genau auf meine Bedürfnisse zugeschnitten - keine unnötigen Features, kein Ballast. Das Schöne an Slackware ist für mich gerade dieses Gefühl der Unabhängigkeit: Es zwingt mich nicht in ein bestimmtes Schema, sondern inspiriert mich dazu, selbst kreativ zu werden. So bleibt mein System schlank, schnell und genau so funktional, wie ich es mir wünsche.

Slackware bedeutet für mich: weniger Abhängigkeit von externen Anwendungen, dafür mehr eigene Kreativität und echte Freiheit am Rechner. Und genau diese Philosophie möchte ich mit meinem Blog teilen - denn echte Linuxer nehmen die Dinge selbst in die Hand.





Samstag, 22. März 2025

vaultCLI 5.9 - Sicherheit auf einem neuen Niveau

vaultCLI 5.9 - Whitepaper & Tool-Dokumentation

vaultCLI

Version 5.9.1 - Projektübersicht & Entwicklungsstadium

Minimalistisches CLI-Tool für Dateiverschlüsselung, TOTP und Keymanagement

Autor: Triplum

Datum: 22. März 2025

Status: Entwickler-Dokumentation & Projektbeschreibung

Willkommen auf meinem kleinen Blog. Hier dokumentiere ich meine Projekte, Ideen und Werkzeuge rund um Sicherheit, Automatisierung und Kontrolle unter Linux - speziell Slackware.

Inhaltsverzeichnis

  1. Motivation und Hintergrund
  2. Zielsetzung
  3. Technische Neuerungen
  4. Zusatzfunktionen in Version 5.9.1
  5. Alle Unterbefehle

0. Motivation und Hintergrund

vaultCLI entstand nicht aus einem Experiment oder Spieltrieb, sondern aus echtem Misstrauen und Erfahrung mit existierenden Passwort-Tools. Trotz der Vielfalt an Open-Source-Lösungen blieb stets ein ungutes Gefühl:

  • Hintergrundprozesse
  • Temporäre Speicherung im Klartext
  • Unklare RAM-Verwendung
  • Fehlende Kontrolle über Editor und Speicherverhalten

Als jemand, der sicherheitsbewusst und gleichzeitig tief im Linux-Ökosystem verwurzelt ist, reichte mir das nicht.
Ich wollte ein Werkzeug, das nur das tut, was es soll - ohne Kompromisse, ohne Blackbox, ohne Nebenwirkungen.
Daraus entstand vaultCLI.

1. Zielsetzung

vaultCLI ist ein minimalistisches, rein terminalbasiertes Werkzeug zur sicheren Verwaltung und Verschlüsselung sensibler Dateien. Der Fokus liegt auf maximaler Kontrolle über Speicher, Dateisystemzugriffe und Editor-Integrität - ohne versteckte Prozesse, Daemons oder externe Abhängigkeiten.

2. Technische Neuerungen in Version 5.9

a) Speichersicherheit

  • Integration von securemem: RAM wird aktiv per memzero() gelöscht.
  • mlockmod: Verhindert Auslagerung sensibler Daten.
  • Verwendung von bytearray für veränderliche Speicherbereiche.

b) Editor-Integrität

  • Editor-Hash (SHA-256) wird geprüft und muss exakt mit Konfiguration übereinstimmen.
  • Nur explizit als vertrauenswürdig eingestufte Editoren sind zugelassen.

c) Temporäre Dateiverarbeitung

  • Alle temporären Dateien entstehen ausschließlich in /dev/shm.
  • Sichere Löschung erfolgt direkt nach der Verwendung.
  • Keine unverschlüsselten Daten werden persistent gespeichert.

d) Konfigurationssicherheit

  • Optionaler SHA-256-Hash-Abgleich

e) Verhalten bei Fehlern

  • Fehlende sicherheitskritische Module führen zum sofortigen Abbruch (z. B. fehlendes securemem).
  • Kein unsicherer Fallback-Betrieb vorgesehen.

f) Verschlüsselung und Schlüsselableitung (teilweise konfigurierbar)

  • Algorithmus: AES-256-GCM (Authenticated Encryption)
  • Schlüssel: 256 Bit, zufällig aus Argon2id abgeleitet
  • Argon2id: 32 Iterationen, 256 MB RAM, 4 Threads
  • Salt: 16 Bytes, zufällig pro Datei
  • Nonce: 12 Bytes, sicher generiert

g) Passwort-Verwechslungsschutz

  • Warnung bei versehentlicher Eingabe eines abweichenden Passworts

h) Weitere Features

  • TOTP-Generierung (Einzel- oder Dauermodus)
  • Keygenerator
  • Dateivorschau
  • Automatische Backups

2a. Zusatzfunktionen in Version 5.9.1

Security-Watchdog-Modul

  • Neuer Befehl vaultcli-safe check zur systemweiten Sicherheitsprüfung.
  • Erkennt sicherheitsrelevante Zustände wie veränderte Systemdateien, Hinweise auf Rootkits oder kompromittierte Anwendungen, ebenso wie ausstehende sicherheitsrelevante Updates oder unerwartete Benutzeraktivität.
  • Integrierter Selfcheck von vaultCLI prüft Konfiguration, Dateirechte, Editor-Integrität und RAM-Schutzmechanismen.
  • Optionales Logging aller Prüfergebnisse für spätere Auswertung.
  • Modular aufgebaut - zukünftige Erweiterungen wie Cron-, Uptime- oder LVM-Überwachung sind vorgesehen.

Zusätzliche technische Aspekte

  • Technologie: vaultCLI basiert auf Python 3 für die Programmlogik sowie C++ für sensible Speicheroperationen mittels securemem, mlock...
  • Selbstschutz: Durch Editor-Hashprüfung, Rechte-Checks, Hash-Vergleich der Konfiguration, temporäre Dateispeicherung in /dev/shm sowie einem modularen Watchdog ist vaultCLI gegen Manipulation und Speicherlecks besonders gehärtet.

Alle Unterbefehle


Beispiel: vaultCLI Hilfeausgabe

usage: vaultcli-safe [-h]
                {keygen,encrypt,decrypt,list,show,new,edit,totp,version}
                                     ...
vaultCLI 5.9.1 - Secure File Encryption and Management Tool (AES-256-GCM)

positional arguments:
  {keygen,encrypt,decrypt,list,show,new,edit,totp,check,version}
                        Befehl
    keygen              Zufälligen Schlüssel generieren
    encrypt             Datei verschlüsseln
    decrypt             Datei entschlüsseln
    list                Verschlüsselte Dateien auflisten
    show                Zeilenweise Anzeige einer verschlüsselten Datei
    new                 Neue Datei erstellen und verschlüsseln
    edit                Bestehende Datei bearbeiten
    totp                TOTP-Code aus einer Datei generieren
    check               Führt die Sicherheitsüberprüfung aus
    version             Zeigt Versionsinformationen an

optional arguments:
  -h, --help            show this help message and exit

Copyright (c) 2025 Triplum. Alle Rechte vorbehalten. Tipp: Mit 'vaultcli keygen --help' lassen sich sichere Schlüssel generieren.

Beispiel: Sicherheitsprüfung mit vaultcli-safe check

Starte vaultCLI (Firejail)...
============================================================
🔒 SECURITY-WATCHDOG: Statusübersicht
============================================================
scan-4.6     [✔ OK] Keine Bedrohung erkannt
pyscan-3     [✔ OK] Alle sicherheitsrelevanten Pakete sind aktuell
usercheck    [✔ OK] Keine Fremdzugriffe erkannt 

vaultCLI      [🔐 Selfcheck]
 ├─ config Rechte        ✔ 0600 korrekt
 ├─ config Hash          ✔ Hash korrekt
 ├─ securemem            ✔ funktioniert
 ├─ mlockmod             ✔ Speicher gesperrt
 ├─ Editor-Hash          ✔ Signatur korrekt
 ├─ Vault-Verzeichnis    ✔ 0700 korrekt

Diese Tools, die ich entwickle, biete ich nicht direkt zum Download an.
Sie sollen als Ausgangspunkt für gemeinschaftliche Weiterentwicklung dienen - vor allem innerhalb der Slackware-Community.

Bei Fragen: Kontakt gerne hier oder per Email.


...

4. Vergleich mit anderen Passwort-Managern

Ein sachlicher Vergleich zwischen vaultCLI und etablierten Open-Source-Tools wie KeePassXC, pass, gopass und Bitwarden. Alle genannten Programme haben unterschiedliche Stärken – hier liegt der Fokus auf Sicherheitsaspekten und Kontrolle.

Merkmal vaultCLI KeePassXC pass / gopass Bitwarden
CLI-Unterstützung (inkl. TOTP, Import, Merge) (`bw` CLI)
GUI-Unterstützung
Sandbox-fähig (z. B. Firejail) (mit Profil) (mit Profil)
Speichersperre (mlock)
RAM-Löschung (securemem)
Temporäre Dateien in /dev/shm abhängig vom Editor
Editor-Hashprüfung (SHA-256)
Offline nutzbar nur mit Self-Hosting
KDF konfigurierbar (Argon2) Iterationen, RAM, Threads (Argon2, PBKDF2)
Verschlüsselung AES-256-GCM (symm.) AES, ChaCha20, Twofish GPG (hybrid) AES-256 (PBKDF2)
TOTP-Unterstützung CLI & Loop-Modus GUI & CLI nur via Plugin
Keygenerator integriert (CLI) in GUI nur im Web
Selfcheck vorhanden
Konfig-Datei-Hashprüfung

Hinweis: Alle Tools sind Open Source und erfüllen unterschiedliche Anforderungen. Dieser Vergleich fokussiert sich gezielt auf sicherheitskritische Aspekte und vertrauenswürdige Ausführung auf Minimal-Systemen wie Slackware.

Sollte ich irgendwo falsch liegen, freue ich mich über einen kurzen Hinweis zur Korrektur.

Slackware 15 | XFCE4 | Conky | Custom Tools

Slackware begleitet mich seit 30 Jahren privat & beruflich und ist für mich längst mehr als nur ein Betriebssystem geworden. Es verkörpe...