# System-Konfiguration ## Host-Hardware - **CPU:** Intel Core i9-14900HX - **Hostname:** kr-nb-1003 ## Festplatten ### nvme0n1 (2 TB) — Ventoy - `nvme0n1p1` — Ventoy NTFS-Partition (VMs), UUID: `98FA5A9DFA5A7808`, Label: "Ventoy" - `nvme0n1p2` — VTOYEFI (FAT16), UUID: `3105-B091` - Unter Windows als `D:\` verfügbar, unter Linux als `/run/media/chk/Ventoy/` ### nvme1n1 (1 TB) — Windows - `nvme1n1p1` — BOOT/EFI (FAT32), UUID: `9EAB-CAFA` - `nvme1n1p2` — MSR (reserviert) - `nvme1n1p3` — Windows (NTFS), UUID: `D086AC4D86AC363E`, Label: "Windows" — Schnellstart deaktiviert - `nvme1n1p4` — Recovery (NTFS) - Mountpoint unter Linux: `/mnt/windows` ## CachyOS VM (über Ventoy gebootet) - **OS:** CachyOS (Arch-basiert, rolling release) - **Kernel:** linux-cachyos (PREEMPT_DYNAMIC) + linux-cachyos-lts - **Virtualisierung:** VirtualBox VM - 14 vCPUs, 12 GB RAM - 250 GB Disk (sda), BTRFS mit Subvolumes - zram-Swap (11,6 GB) - **Desktop:** KDE auf Wayland - **Shell:** fish (Login-Shell ist zsh) - **Init:** systemd (mit plymouth) - **Sprache:** Deutsch ### SSH-Keys (gemeinsam mit Windows) - Quelle: `C:\Users\d-chrka\.ssh\` (unter Linux: `/run/media/chk/Windows/Users/d-chrka/.ssh/`) - Kopiert nach: `~/.ssh/` (CachyOS) - **Keys:** `id_ed25519`, `chrka_ed25519`, `id_rsa` (jeweils mit `.pub`) - Bei Änderungen auf einer Seite müssen die Keys manuell synchronisiert werden - **known_hosts fehlt nach Ersteinrichtung** — Die Keys werden von Windows kopiert, aber `known_hosts` nicht. SSH-Verbindungen schlagen mit "Host key verification failed" fehl, bis die Host-Keys manuell hinzugefügt werden (z.B. `ssh-keyscan -p 2211 gitssh.straso.com >> ~/.ssh/known_hosts`) ### Git-Konfiguration - **user.name:** Christian Kauer - **user.email:** c.kauer@krah-gruppe.de - Übernommen aus der Windows-Konfiguration (`/run/media/chk/Windows/Users/d-chrka/.gitconfig`) ### OneDrive (rclone bisync) - **Paket:** `rclone` (über pacman) - **Remote:** `onedrive:` (Typ: OneDrive Business, Drive: "Dokumente") - **SharePoint-URL:** `https://krahgruppe-my.sharepoint.com/personal/c_kauer_krah-gruppe_de1/Documents` - **Synchronisierter Ordner:** `onedrive:cachyos_windows_share` ↔ `~/OneDrive/cachyos_windows_share` - **Modus:** `bisync` (bidirektional) — Änderungen werden in beide Richtungen synchronisiert - **Automatisierung:** systemd-User-Timer (`rclone-onedrive.timer`), alle 10 Minuten - Service: `~/.config/systemd/user/rclone-onedrive.service` - Timer: `~/.config/systemd/user/rclone-onedrive.timer` - **Ersteinrichtung:** `rclone bisync ... --resync` nötig um Baseline zu erstellen - **Hinweis:** `onedrive-abraunegg` (nativer Client) wurde ebenfalls installiert, aber nicht konfiguriert — OAuth-Redirect wurde vom Browser als Phishing blockiert ### Sophos SSL VPN - **Server:** `rcdro1.krah-gruppe.de:8443` (UDP) - **Benutzer:** `d-chrka@internal.lan` (AD-User, nicht `c.kauer@krah-gruppe.de`) - **Verschlüsselung:** AES-128-CBC, Auth SHA256 - **Authentifizierung:** Zertifikat + Benutzername/Passwort + 2FA (OTP wird ans Passwort angehängt) - **CA:** Landata It-Solutions, Olpe (Sophos_CA_C330ACYPTCKJ3CA, gültig bis 2036-12-31) - **Client-Zertifikat:** muss auf `d-chrka@internal.lan` ausgestellt sein (gültig bis 2036-12-31) - **Funktionierendes Profil:** `sslvpn-fixed.ovpn` (vom Testgerät DR-NB-0142 übernommen) - **Paket:** `networkmanager-openvpn` #### Einrichtung unter Linux (NetworkManager) 1. Profil importieren: `nmcli connection import type openvpn file sslvpn-fixed.ovpn` 2. **Wichtig — Split-Tunneling aktivieren:** IPv4 → Routes → "Use this connection only for resources on its network" (Häkchen setzen), sonst geht aller Traffic durch den Tunnel und Internet fällt aus 3. Verbinden: `nmcli connection up sslvpn-fixed` #### Hinweise zum .ovpn-Profil (Sophos-Download vs. funktionierende Version) Das vom Sophos-Portal heruntergeladene Profil (`sslvpn-c.kauer@krah-gruppe.de-client-config_V2-clients.ovpn`) funktioniert **nicht** unter Linux. Entscheidende Unterschiede zur funktionierenden `sslvpn-fixed.ovpn`: | Problem | Original-Download | Fixed | |---|---|---| | **Client-Zertifikat** (Hauptursache) | Ausgestellt auf `c.kauer@krah-gruppe.de` | Ausgestellt auf `d-chrka@internal.lan` | | `route remote_host ...` | Aktiv → NM-Import schlägt fehl | Auskommentiert | | `script-security 2` | Fehlt | Vorhanden | Die Firewall authentifiziert über AD als `d-chrka@internal.lan`. Ein Zertifikat für `c.kauer@krah-gruppe.de` wird mit `AUTH_FAILED` abgelehnt (sichtbar im Firewall Log Viewer unter "SSL VPN Authentication"). Die Original-Downloads (V2/V3) vom Sophos-Portal liegen weiterhin unter `~/OneDrive/cachyos_windows_share/`, werden aber nicht verwendet. ### Sophos Endpoint (Protection for Linux) - **Paket:** Sophos Protection for Linux (SPL), installiert unter `/opt/sophos-spl` - **Service:** `sophos-spl.service` (systemd) - **Sophos Central:** Gerät registriert als `kr-nb-1003`, Online - **Kernel-Einschränkung:** RuntimeDetections-Plugin unterstützt max Kernel 6.18.x — erfordert `linux-cachyos-lts` (6.18.19). Der reguläre Kernel (6.19.x) ist zu neu und führt zu `FATAL Kernel version check failed`. - **Default-Kernel:** LTS in GRUB als Default setzen: `GRUB_DEFAULT="gnulinux-advanced-...-lts-advanced-..."` in `/etc/default/grub` - **SafeStore:** Verzeichnis `/opt/sophos-spl/plugins/av/var/safestore/` fehlte nach Installation, manuell angelegt ### DataGrip (JetBrains) - **Config:** `~/.config/JetBrains/DataGrip2025.3/` (Einstellungen, Datasources, Konsolen, JDBC-Treiber, Keymaps) - **Projekte:** `~/DataGripProjects/` (SQL-Konsolen und Scratch-Dateien pro Datasource) - **Passwörter:** verschlüsselt in `c.kdbx`, nicht portierbar — müssen nach Migration neu eingegeben werden #### Migration von Rechner A nach B ```bash # Auf Rechner B: # 1. Config kopieren (Windows → Linux) cp -r "/Users//Anwendungsdaten/JetBrains/DataGrip2025.3/"* ~/.config/JetBrains/DataGrip2025.3/ # 2. Projekte kopieren cp -r "/Users//DataGripProjects" ~/DataGripProjects # Linux → Linux: Pfade sind ~/.config/JetBrains/DataGrip/ und ~/DataGripProjects/ ``` ### SAP GUI for Java - **Version:** 8.10 rev 10 - **Installation:** `/home/chk/SAPClients/SAPGUI8.10rev10/` - **Start:** `/home/chk/SAPClients/SAPGUI8.10rev10/bin/guilogon` - **Java:** OpenJDK 25 (pacman: `jre-openjdk`) - **HiDPI-Scaling:** `-Dsun.java2d.uiScale=2.0` in Zeile 104 von `bin/guilogon` (exec-Zeile), Wert bei Bedarf anpassen - **Installer-Hinweis:** Installation muss aus dem Unterverzeichnis `com/sap/platin/micro/` gestartet werden (`java -cp ".:*" com.sap.platin.micro.Microkernel`), da der Installer einen Pfadfehler hat ### Installierte Pakete (manuell) - `teams-for-linux` — MS Teams Client (CachyOS-Repo) - `rclone` — Cloud-Sync (pacman) - `onedrive-abraunegg` — OneDrive-Client (nicht in Verwendung) - `networkmanager-openvpn` — OpenVPN-Plugin für NetworkManager - Sophos Protection for Linux (SPL) — `/opt/sophos-spl`, via `SophosSetup.sh` aus Sophos Central - SAP GUI for Java 8.10 — `/home/chk/SAPClients/SAPGUI8.10rev10/`, benötigt `jre-openjdk` ### Polkit: Laufwerke ohne Passwort mounten - **Regel:** `/etc/polkit-1/rules.d/10-udisks2-mount.rules` - Erlaubt Mitgliedern der Gruppe `storage` das Mounten über den Dateimanager ohne Passwortabfrage - Abgedeckte Actions: `filesystem-mount`, `filesystem-mount-other-seat`, `filesystem-mount-system` - **Einrichtung:** ```bash printf 'polkit.addRule(function(action, subject) { if ((action.id == "org.freedesktop.udisks2.filesystem-mount" || action.id == "org.freedesktop.udisks2.filesystem-mount-other-seat" || action.id == "org.freedesktop.udisks2.filesystem-mount-system") && subject.isInGroup("storage")) { return polkit.Result.YES; } }); ' | sudo tee /etc/polkit-1/rules.d/10-udisks2-mount.rules ``` - **Hinweis:** fish-Shell unterstützt kein `<< 'EOF'` Heredoc — `printf ... | sudo tee` verwenden ### BTRFS Subvolumes - `/@` → `/` - `/@home` → `/home` - `/@root` → `/root` - `/@srv` → `/srv` - `/@cache` → `/var/cache` - `/@tmp` → `/var/tmp` - `/@log` → `/var/log`