# 🛡️ Sicheres Bash-Setup mit Sperrfunktion und Papierkorb Dieses Repository enthält zwei nützliche Skripte zur sicheren Nutzung und Verwaltung Ihrer `.bashrc` unter Linux: 1. **`.bashrc`** – mit nützlichen Aliases, Funktionen und einem sicheren `del`-Papierkorb. 2. **`lock_unlock_bashrc.sh`** – schützt Ihre `.bashrc` mit `chattr +i` vor versehentlichen Änderungen und bietet ein komfortables Menü zur Bearbeitung. --- ## 📁 Inhalt ### `.bashrc` #### 🔐 Schutzmechanismus - `.bashrc` kann durch das zweite Skript (`lock_unlock_bashrc.sh`) vor Änderungen geschützt werden (mit `chattr +i`). - Der Benutzer kann sie gezielt entsperren, editieren und anschließend wieder sperren. #### 🗑️ Papierkorb-System (`del` und `purge`) - **`del [Datei2] ...`** Verschiebt Dateien/Ordner in ein Tagesverzeichnis unter `~/.Müll/YYYY-MM-DD`. Kein versehentliches Löschen mehr! - **`purge`** Interaktive Löschroutine zum endgültigen Entfernen des Papierkorbs. > ✅ Vorteil: Kein direktes Löschen mit `rm`, sondern sicheres Verschieben. Das Standard-`rm` wird durch einen Hinweis ersetzt. #### ⚙️ Eigene Anpassungen Die `.bashrc` enthält einen markierten Bereich für eigene Pfade und Aliases: ```bash #################### hier bitte anpassen !!! #################### K_PFAD="$HOME" GIT_PFAD="$HOME/Dokumente/Gitea" #################### Anpassungen Ende #################### ``` #### 📌 Aliases und Funktionen Beispielhafte Aliases: - `sshpc4`, `sshpi`, `sshmedia`, `sshroot`, `ssher` - `spzssh` – bindet SSHFS-Verzeichnis - `sshlogin` – startet ein SSH-Login-Skript mit Zertifikat --- ### `lock_unlock_bashrc.sh` #### 🧷 Zweck Schützt Ihre `.bashrc` mit dem Attribut `immutable` (`chattr +i`) vor versehentlichen Änderungen. Bietet ein simples Menü zum: - **Sperren** (`LOCK`) - **Entsperren & Bearbeiten** (`UNLOCK`) - **Entsperren & Beenden** (`UNLOCK and End`) - **Neu einlesen der `.bashrc`** - **Beenden** #### 📋 Bedienung ```text 1 = LOCK 2 = UNLOCK und Editieren 22= UNLOCK und Ende 3 = .bashrc neu einlesen 0 = Ende ``` > ⚠️ Für das Sperren und Entsperren ist `sudo` erforderlich, da `chattr` Root-Rechte benötigt. --- ## 🛠️ Voraussetzungen - Linux-System mit `bash` - `chattr` (Teil von `e2fsprogs`, normalerweise vorinstalliert) - Optional: `sshfs`, `nano`, `ls`, `rm`, `mv` --- ## 🔐 Sicherheitshinweise - Ein mit `chattr +i` geschütztes File kann **nicht** verändert oder gelöscht werden – auch nicht versehentlich! - Stellen Sie sicher, dass Sie das Skript `lock_unlock_bashrc.sh` behalten, um die `.bashrc` wieder entsperren zu können. --- ## 📎 Lizenz Dieses Projekt steht unter keiner spezifischen Lizenz. Nutzung auf eigene Verantwortung. --- ## 👤 Autor **Alf Oberkoetter** [GitHub: trevor1969](https://github.com/trevor1969)