# KDS Install Agent Portabler Agent zum automatischen Einrichten von Windows-11-Notebooks – direkt vom USB-Stick, ohne Installation und ohne zusätzliche Abhängigkeiten (nur Bordmittel: PowerShell 5.1, Edge, winget). ## Start | Datei | Zweck | |---|---| | `Start.cmd` | Startet den Agent (fordert Adminrechte an) und öffnet die Oberfläche als eigenes Desktop-Fenster (Edge-App-Modus). | | `Start-Remote.cmd` | Zusätzlich im Netzwerk erreichbar (Firewall-Regel für Domäne/Privat wird angelegt). Die URL mit Token steht im Konsolenfenster. | Parameter für `Agent.ps1`: `-Port 8090`, `-Remote`, `-NoWindow` (nur Web-Server). Die Web-API ist immer mit einem zufälligen Token geschützt, das bei jedem Start neu erzeugt wird. ## Funktionen - **Programme**: Live-Suche im öffentlichen **winget**-Repository und im **Microsoft Store**, Schnellauswahl aus `config/apps.json`. Eigene Setups (EXE, MSI, MSIX, PS1, CMD) per Drag & Drop **hochladen**; Silent-Parameter werden je Datei gespeichert (`installers\installers.json`). Installation systemweit (`--scope machine`, Fallback auf Standard-Scope). „Alle aktualisieren“ über `winget upgrade --all`. Fehlt winget, wird es automatisch nachinstalliert (offline aus `packages\winget\`, sonst über Microsoft). - **Office**: Konfigurator für das Office Deployment Tool (M365 Apps Enterprise/Business, LTSC 2024/2021, Home & Business 2024, Visio/Project, Sprachen, Apps abwählen, Kanal, Architektur, MSI-Entfernung, Shared Activation, Makro-Sperre …) mit Live-Vorschau der `configuration.xml`. - *Online*: direkt vom Microsoft-CDN installieren - *Build*: Installationsdateien nach `office\source\-` auf den Stick laden - *Offline*: vom Stick installieren - *Offline aus eigenem Pfad*: vorhandene Office-Quelle nutzen (Netzlaufwerk/Ordner mit `Office\Data`), wird als `SourcePath` in die XML übernommen - `setup.exe` wird bei Bedarf automatisch geladen; generierte XMLs landen in `office\configs\`. - **Desktop-Icons** für alle Benutzer (öffentlicher Desktop): Web-Links (`.url`), Programmverknüpfungen (`.lnk`) und **RDP-Verbindungen** (`.rdp`: im Formular erzeugt inkl. Gateway, RemoteApp, Umleitungen, oder vorhandene .rdp-Dateien hochladen), eigene Icons hochladbar nach `icons\` (werden nach `C:\ProgramData\KDS-Agent\Icons` kopiert). Vorlagen in `config/shortcuts.json`. - **WLAN**: SSIDs mit Kennwort (WPA2/WPA3/offen, versteckt, automatisch verbinden) in der Blaupause speichern und für alle Benutzer anlegen. WLAN-Profile eines Referenzgeräts lassen sich inkl. Kennwort übernehmen. - **VPN & Domäne**: - **OpenVPN portabel vom Stick**: „Portables OpenVPN erstellen“ lädt einmalig die offiziellen Pakete nach `tools\openvpn\` (OpenVPN aus dem MSI entpackt, ohne Installation, plus Microsoft-signierter TAP-Treiber). Beim Verbinden wird der TAP-Treiber nur temporär geladen und danach wieder entfernt. - `.ovpn` und Zertifikate je Kunde hochladen (`vpn\`), Benutzer/Kennwort optional speichern. Leere Kennwörter werden beim Start abgefragt und nicht gespeichert. - **AD-Join**: Erreichbarkeitstest (DC per DNS-SRV + LDAP), Beitritt mit OU, gleichzeitiger Umbenennung und lokalen Admin-Gruppen, optional über das VPN. - Optional bleibt das VPN als **OpenVPN-Dienst** (offline vom Stick installiert) bestehen, damit die erste Domänenanmeldung außerhalb des Firmennetzes funktioniert. - **Bloatware**: Scan des Geräts und Entfernen per Klick: Windows-Store-Apps (für alle Benutzer + Vorlage für neue Benutzer), Hersteller-Tools (HP, Dell, Lenovo, Acer, ASUS), Testversionen (McAfee, Norton …), vorinstallierte Office/OneNote-Versionen (Click-to-Run, z. B. `Microsoft 365 - fr-fr`) und OneDrive. Empfohlene Einträge sind vorausgewählt; der Katalog ist in `config/bloatware.json` erweiterbar. Business-Office-Versionen (Volumen/Enterprise) werden angezeigt, aber nie automatisch empfohlen. - **System**: Computername, Zeitzone, Dateiendungen anzeigen (auch für neue Benutzer), Consumer-Features/Werbe-Apps aus. - **Sicherheit**: Defender (Echtzeit/Cloud/PUA), Firewall, SmartScreen, UAC, SMBv1 aus, Autorun aus, LSA-Schutz, Telemetrie, RDP an/aus, lokales Admin-Konto. - **Energie**: Energieplan, Timeouts für Bildschirm/Standby/Ruhezustand (Netz & Akku), Deckel- und Netzschalteraktion, Ruhezustand, Schnellstart. - **BitLocker**: Status, Aktivierung mit TPM oder TPM+PIN, XTS-AES 128/256, nur belegten Speicher, Sicherung in Entra ID / AD. Der Wiederherstellungsschlüssel wird **immer** unter `bitlocker-keys\` auf dem Stick gespeichert (Computername + Seriennummer). - **Updates & Treiber**: Windows- und Treiberupdates über die Windows-Update-API (inkl. Microsoft Update) suchen, auswählen, installieren. Hersteller-Tools: Dell Command Update, Lenovo System Update, HP Image Assistant. - **Blaupausen**: Komplette Standard-Einrichtungen je Kunde unter `blueprints\` speichern, nach Kunde gruppiert anzeigen, suchen, laden, duplizieren, exportieren/importieren. Auf der Übersicht per Dropdown auswählen und direkt starten. Mitgeliefert: `Beispiel / Büro-Standard` und `Beispiel / Minimal`. Ungespeicherte Änderungen werden in der Seitenleiste angezeigt (Speichern-Button direkt darunter); vor dem Laden einer anderen Blaupause, dem Beenden oder Schließen wird gewarnt. - **Einrichtung mit einem Klick**: Auf der Übersicht alle Schritte in sinnvoller Reihenfolge ausführen. - **Aufgaben**: Alle Aktionen laufen als Hintergrund-Jobs in einer Warteschlange (nacheinander, damit sich Installer nicht blockieren). Live-Protokoll in der Oberfläche; Logs unter `logs\\`. ## Ordnerstruktur ``` Start.cmd / Start-Remote.cmd Starter Agent.ps1 HTTP-Server, API, Job-Queue lib\Functions.ps1 Alle Einrichtungsfunktionen web\ Oberfläche (HTML/CSS/JS) config\apps.json Programm-Schnellauswahl (anpassbar) config\shortcuts.json Verknüpfungs-Vorlagen (anpassbar) installers\ hochgeladene Setups + installers.json (Silent-Parameter) icons\ eigene Icons (.ico) rdp\ hochgeladene .rdp-Dateien vpn\ hochgeladene .ovpn-Konfigurationen + Zertifikate tools\openvpn\ portables OpenVPN (bin\, driver\, setup\) – per Klick erstellt config\bloatware.json Bloatware-Katalog (anpassbar) packages\winget\ optional: winget-Offlinepakete (*.msixbundle + Abhängigkeiten *.appx) office\ setup.exe, configs\, source\ (Offline-Builds) blueprints\ Blaupausen (je Kunde) logs\, bitlocker-keys\ werden zur Laufzeit angelegt ``` Ist der Stick schreibgeschützt, schreibt der Agent Logs und Schlüssel nach `C:\ProgramData\KDS-Agent\`. ## Hinweise - **Sicherheit**: Blaupausen können Klartext-Kennwörter (lokaler Admin, BitLocker-PIN, WLAN, VPN, Domäne) enthalten, und `bitlocker-keys\` enthält Wiederherstellungsschlüssel. Den Stick entsprechend schützen. VPN- und Domänen-Kennwörter können leer bleiben und werden dann beim Start abgefragt. Blaupausen (außer den Beispielen), RDP-/VPN-Dateien und Schlüssel sind per `.gitignore` von der Versionsverwaltung ausgeschlossen. - BitLocker benötigt Windows 11 Pro/Enterprise/Education. Unter Home steht nur die Geräteverschlüsselung zur Verfügung. - Die Store-Installation (`msstore`) braucht Internet und kann bei Konten ohne Store-Zugang fehlschlagen. - Einige Einstellungen (Computername, LSA-Schutz, SMBv1, BitLocker mit Hardwaretest) werden erst nach einem Neustart wirksam.