Skip to content
This repository was archived by the owner on Oct 23, 2026. It is now read-only.
hawrekamilPublic archive

About

Enterprise Infrastructure Automation, Hybrid Remote Management & Hyper-V Orchestration

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

Β 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

RemoteOps (Remote_LΓΆsung)

Enterprise Infrastructure Automation, Hybrid Remote Management & Hyper-V Orchestration

FastAPI React Ansible Terraform Hyper-V Active Directory


πŸ“– Übersicht & Vision

RemoteOps ist eine ganzheitliche, webbasierte Automations- und Management-Plattform zur Steuerung moderner Hybrid- und Windows-Infrastrukturen. Sie schließt die Lücke zwischen manuellem Windows-Server-Betrieb (Hyper-V Manager, RSAT, Active Directory-Konsolen) und modernen Infrastructure-as-Code- (IaC) sowie CI/CD-Paradigmen.

Anstatt InfrastrukturΓ€nderungen isoliert und unprotokolliert durchzufΓΌhren, konsolidiert RemoteOps:

  • die automatisierte Bereitstellung virtueller Maschinen (Hyper-V Generation 2, UEFI, Unattended),
  • das Active Directory Domain Services Lifecycle-Management (OUs, Gruppen, Benutzer, GPOs) ΓΌber Ansible,
  • die AusfΓΌhrung geprΓΌfter PowerShell-Automationsskripte,
  • den sicheren Remote-Zugriff via WinRM (HTTP/HTTPS), SSH und PowerShell Direct,
  • sowie revisionssicheres Auditing, rollenbasierte Zugriffskontrollen (RBAC) und Prometheus-Monitoring.

πŸ›οΈ Systemarchitektur

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                   RemoteOps Web Dashboard (React + TS)                 β”‚
β”‚      - Dashboard & Monitoring   - Target Catalog    - Script Runner    β”‚
β”‚      - IaC Pipeline Steuerung  - AD Management      - Revisions-Audit  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                    β”‚ REST API (JWT Auth) & WebSocket
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                  FastAPI Backend & Automation Engine                   β”‚
β”‚   - Auth & RBAC (Admin/Operator/Viewer)   - Job Queue & Execution      β”‚
β”‚   - Telemetrie & Prometheus Metrics       - Persistent State & DB      β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
          β”‚                         β”‚                         β”‚
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚   Hyper-V & PowerShell  β”‚ β”‚  Ansible Pipeline     β”‚ β”‚    Terraform     β”‚
β”‚   - Unattended ISO/VHDX β”‚ β”‚  (WSL / Control Node) β”‚ β”‚   - Lab Local    β”‚
β”‚   - Gen 2 UEFI VMs      β”‚ β”‚  - Phasen 00 bis 05   β”‚ β”‚   - Azure Cloud  β”‚
β”‚   - PowerShell Direct   β”‚ β”‚  - AD DS & GPO Audit  β”‚ β”‚                  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ› οΈ Verwendete Technologien

1. Frontend-Stack

  • React 18 & TypeScript: Typensichere, komponentenbasierte BenutzeroberflΓ€che.
  • Vite: Blitzschnelle Build-Pipeline und HMR (Hot Module Replacement).
  • Modernes Dark-Mode & Glassmorphism Design: Elegante, ansprechende BenutzeroberflΓ€che mit Status-Badges, interaktiven Tabellen, Echtzeit-Konsolenausgaben und Parameter-Formularen.
  • Lucide Icons: Standardisierte Enterprise-Symbolik fΓΌr Status, Hardware und NetzwerkkonnektivitΓ€t.

2. Backend-Stack

  • FastAPI (Python 3.11+): Hochperformante, asynchrone REST-API mit automatischer OpenAPI-/Swagger-Dokumentation (/docs).
  • Pydantic v2: Strenge Datenvalidierung und Schemagarantien fΓΌr alle Requests, Parameter und Umgebungsvariablen.
  • SQLAlchemy 2.0 & Alembic: ORM-Schicht fΓΌr relationale Datenhaltung mit Migrationshistorie.
  • Uvicorn / Gunicorn: ASGI-Produktionsserver.
  • Durable Worker Pattern: Hintergrund-Worker zur asynchronen AusfΓΌhrung zeitintensiver Skripte und Playbooks ohne Blockierung des UI-Threads.

3. Datenbank & State Persistence

  • SQLite / MySQL / PostgreSQL: Flexible Speicherung in backend/remoteops.db fΓΌr schlanken Betrieb oder MySQL/PostgreSQL in Enterprise-Umgebungen.
  • Secrets- & Parameter-State: Persistierung von IaC-KonfigurationszustΓ€nden in backend/data/ad_params_state.json und geschΓΌtzten State-Dateien.

🌐 Remote-Zugriff & KonnektivitÀt

RemoteOps bietet nahtlose Verbindungsoptionen fΓΌr heterogene Systemlandschaften:

Protokoll / Kanal Port / Schnittstelle Anwendungsbereich & Besonderheiten
WinRM (HTTP) TCP 5985 Schnelle Basiskonfiguration in abgeschotteten Lab-Umgebungen mit NTLM-Authentifizierung.
WinRM (HTTPS) TCP 5986 Enterprise-Standard mit TLS-Zertifikaten (winrm_ca_trust_path), strikter Gültigkeitsprüfung und abhârsicherer Übertragung.
PowerShell Direct VMBus (Hyper-V) Direkte Verbindung vom Hyper-V Host in die VM – keine IP, kein Netzwerkadapter und keine offene Firewall erforderlich.
SSH TCP 22 Verbindung zu Linux-Hosts und modernen Windows-Systemen via OpenSSH.
Tailscale Mesh-VPN UDP 41641 / WireGuard MagicDNS- und Mesh-Tunneling (*.ts.net) zur sicheren Anbindung entfernter Standorte und Multi-Host-Setups.

πŸ–₯️ Virtualisierung & Hyper-V Management

Die Hyper-V Orchestrierung (backend/powershell/local-hyperv/) ermΓΆglicht vollstΓ€ndiges VM-Lifecycle-Management:

  1. Generation 2 Virtual Machines:
    • Hardware-Standards: 64-Bit UEFI, Secure Boot, dynamische Speicherverwaltung (DynamicMemory), multi-vCPU Konfiguration.
  2. Unattended Windows Server 2025 Installation (Zero-Touch):
    • Automatische Erstellung angepasster Antwortdateien (Autounattend.xml).
    • Dynamische Generierung von virtuellen ISO-Medien (Mount-HyperVUnattendXml.ps1), die als zweites Bootmedium eingebunden werden.
    • Initialisiert Festplatte 0 (GPT), installiert Windows Server 2025 Standard Desktop Experience und richtet Administratorkonten, WinRM und Firewall-Regeln automatisch ein.
  3. Storage-Management:
    • Automatische VHDX-Erstellung (Dynamic oder Fixed), Partitionierung und Formatierung ohne manuelle Eingriffe.
  4. Virtual Switch Management:
    • Anbindung an externe Adapter, isolierte Labor-Switches (RemoteOps-Internal) oder den Hyper-V Default Switch.

⚑ Automation & Infrastructure as Code (IaC)

1. PowerShell Automation Engine

  • Modulare Skripte in backend/powershell/ zur Server- und Rollenbereitstellung.
  • Dynamisches JSON-Schema: Skripte deklarieren ihre Parameter ΓΌber JSON-Schemas; das Frontend generiert daraus automatisch interaktive Eingabemasken.
  • Elevation-Handling: Vorkonfigurierte Starter (run_unattend_hyperv.bat, run_hyperv_admin.bat) zur UAC-Rechteerweiterung bei administrativen Hyper-V Aufgaben.

2. Terraform

  • Umgebungen in terraform/environments/:
    • lab_local: Lokale VM- und Festplattenbereitstellung ΓΌber den Hyper-V Provider.
    • azure_cloud: Optionale hybride Anbindung an Cloud-Ressourcen.

3. Ansible Enterprise Active Directory Pipeline

Das Verzeichnis ansible/ad-management/ enthΓ€lt eine produktionsreife, 6-stufige AD-DS-Orchestrierung:

[Phase 00: Validate]    --> Lokale Assert-PrΓΌfung von Parametern, KennwortstΓ€rken & TLS-CA
         β”‚
[Phase 01: Preflight]   --> Remote-Check: WinRM HTTPS (5986), OS-Version, freier Speicher & statische IP
         β”‚
[Phase 02: Domain]      --> Rolleninstallation (AD-DS, DNS, GPMC), Gesamtstruktur-Promotion & Auto-Reboot
         β”‚
[Phase 03: Objects]     --> Strukturierte OUs mit LΓΆschschutz, Gruppen, Benutzer & Computerkonten
         β”‚
[Phase 04: GPO]         --> Registry-Gruppenrichtlinien (Login-Banner, InaktivitΓ€ts-Timeouts) & OU-Verlinkung
         β”‚
[Phase 05: Verify]      --> VollstΓ€ndiges Audit von NTDS, DNS, ADWS, Netlogon, KDC, SYSVOL & Objekten
  • 00-validate.yml: Verhindert Fehlkonfigurationen, bevor Γ„nderungen angestoßen werden.
  • 01-preflight.yml: Validiert die Voraussetzungen des Zielsystems.
  • 02-domain.yml: Installiert die Rollen und fΓΆrdert den Server zum DomΓ€nencontroller (corp.hawrelab.test).
  • 03-objects.yml: Pflegt Organisationseinheiten, Benutzer (hawre.lab, max.lab), Sicherheitsgruppen (GG_LAB_IT, GG_LAB_HR) und Computer.
  • 04-gpo.yml: Verteilt HΓ€rtungs- und Konfigurations-GPOs via Registry-Keys.
  • 05-verify.yml: FΓΌhrt ein strukturiertes Audit aller AD-Komponenten durch und meldet ein valides JSON-Ergebnis zurΓΌck.
  • site.yml: FΓΌhrt alle 6 Phasen sequenziell in einem Gesamtdurchlauf aus.

πŸ‘₯ Nutzer-, Client- & Active Directory-Verwaltung

  1. Rollenbasiertes Rechtemodell (RBAC im Dashboard):
    • admin: Vollzugriff auf Infrastruktur, Secrets, Playbooks und Benutzerverwaltung.
    • operator: AusfΓΌhrung von Skripten, Playbooks und Monitoring-Abfragen.
    • viewer: Nur-Lese-Zugriff auf Status, Logs und Auswertungen.
  2. Active Directory Hierarchie:
    • OU=HawreLab,DC=corp,DC=hawrelab,DC=test
      • OU=Users: Benutzerkonten mit standardisierten UPNs und Kennwortrichtlinien.
      • OU=Groups: Globale Sicherheitsgruppen mit differenzierten Berechtigungsstufen.
      • OU=Computers: Vorregistrierte Clients (z. B. CLIENT01) mit Baseline-Richtlinien.
      • OU=Servers: Infrastruktur- und Anwendungsserver.
  3. Client-HΓ€rtung:
    • Gruppenrichtlinien zur Erzwingung rechtlicher Hinweise (legalnoticecaption), automatischer Sperrung nach InaktivitΓ€t und Sicherheitskonfigurationen.

πŸ“Š Monitoring, Auditing & Observability

  • Prometheus Metriken: Endpunkt /metrics fΓΌr Metriken zu Job-Laufzeiten, Erfolgsquoten und HTTP-Statuscodes.
  • Target Health Checks: RegelmÀßige Heartbeat- und Port-ÜberprΓΌfungen (ICMP, WinRM HTTP/HTTPS, SSH) aller inventarisierten Zielsysteme.
  • Revisionssicheres Audit-Log: Jede Benutzerinteraktion und jede SkriptausfΓΌhrung wird dauerhaft in der Datenbank dokumentiert:
    • Wer hat die Aktion gestartet?
    • Welcher Befehl wurde mit welchen Parametern ausgefΓΌhrt?
    • Dauer, AusfΓΌhrungszeitpunkt, Exit-Code und vollstΓ€ndiger Standard-Output/Error-Text.

πŸ’Ύ Backup, Disaster Recovery & DatenintegritΓ€t

  • Hyper-V Checkpoint-Orchestrierung: Erstellung von Sicherheits-Snapshots vor Domain-Promotions oder Systemmodifikationen.
  • DSRM (Directory Services Restore Mode): Getrennte, sichere Speicherung des Wiederherstellungskennworts fΓΌr Notfallreparaturen der AD-Datenbank (NTDS.dit).
  • DPAPI- & Fernet-VerschlΓΌsselung: Gespeicherte Ziel-Credentials werden auf Windows-Hosts per Windows Data Protection API (DPAPI) geschΓΌtzt, unter Linux/Docker mit AES-128-CBC via Fernet.
  • Idempotente Playbooks: Alle Ansible-Phasen sind idempotent gestaltet und kΓΆnnen ohne Seiteneffekte mehrfach ausgefΓΌhrt werden.

πŸš€ Schnellstart & Installation

Option A: Lokale Entwicklung unter Windows

  1. Voraussetzungen:

    • Python 3.11+, Node.js 18+, Hyper-V aktiviert, WSL2 (Ubuntu) fΓΌr Ansible.
  2. Backend starten:

    cd backend
    python -m venv .venv
    .venv\Scripts\activate
    pip install -r requirements.txt
    python -m app.database.migrate
    uvicorn app.main:app --reload --port 8000
  3. Frontend starten:

    cd frontend
    npm install
    npm run dev
  4. Ansible Pipeline in WSL testen:

    wsl bash -c "cd /mnt/c/Users/HAWRE/Antigravity-Workspace/Cloud-projects/Remote_LΓΆsung/ansible/ad-management && ansible-playbook -i inventory/hosts.yml playbooks/00-validate.yml"

Option B: Docker Compose

# Umgebungsvariablen setzen
cp backend/.env.example .env

# Container bauen und im Hintergrund starten
docker compose up --build -d

Option C: XAMPP Integration auf Windows

  1. Setze die Systemvariable XAMPP_ROOT (Standard: C:\xampp).
  2. FΓΌhre setup_xampp_remoteops.bat aus.
  3. FΓΌhre deploy_to_xampp.py aus, um das Frontend und die Proxy-Konfiguration zu installieren.
  4. Starte den Stack mit start_xampp_remoteops.bat.

πŸ“ Projektstruktur

Remote_LΓΆsung/
β”œβ”€β”€ ansible/                        # Ansible Automations-Suite
β”‚   β”œβ”€β”€ ad-management/              # Active Directory Pipeline
β”‚   β”‚   β”œβ”€β”€ inventory/              # Hosts & Group Variables (WinRM HTTPS)
β”‚   β”‚   β”œβ”€β”€ playbooks/              # Phasen 00 bis 05 & site.yml
β”‚   β”‚   β”œβ”€β”€ requirements.yml        # Ansible Windows & AD Collections
β”‚   β”‚   └── vars/                   # lab.yml (Config) & secrets.yml (PasswΓΆrter)
β”‚   β”œβ”€β”€ inventory/                  # Hyper-V Hosts Inventar
β”‚   └── playbooks/                  # Onboarding & Bootstrap Playbooks
β”œβ”€β”€ backend/                        # FastAPI Backend-Service
β”‚   β”œβ”€β”€ app/
β”‚   β”‚   β”œβ”€β”€ api/v1/                 # Endpunkte (Auth, Targets, Scripts, IaC, AD, Audit)
β”‚   β”‚   β”œβ”€β”€ core/                   # Security, JWT, DPAPI-VerschlΓΌsselung, Config
β”‚   β”‚   β”œβ”€β”€ database/               # SQLAlchemy Modelle, DB-Session, Migrations
β”‚   β”‚   β”œβ”€β”€ models/                 # Pydantic & ORM Entities
β”‚   β”‚   └── services/               # IaC-, AD-, Execution- und Audit-Services
β”‚   β”œβ”€β”€ data/                       # State-Dateien (ad_params_state.json, etc.)
β”‚   └── powershell/                 # PowerShell Automations-Engine & Hyper-V Tools
β”‚       └── local-hyperv/           # Unattended XMLs, Mount- & Provisioning-Skripte
β”œβ”€β”€ frontend/                       # React 18 TypeScript Web Dashboard
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ components/             # Reusable UI-Elemente, Navigation, Shell
β”‚   β”‚   β”œβ”€β”€ pages/                  # Dashboard, Targets, Scripts, IaC, AD, Audit
β”‚   β”‚   └── services/               # API-Clients & Authentication Interceptors
β”‚   └── vite.config.ts              # Vite Konfiguration
β”œβ”€β”€ terraform/                      # Terraform Module & Umgebungen
β”‚   └── environments/               # lab_local & azure_cloud
β”œβ”€β”€ docker-compose.yml              # Container-Orchestrierung
β”œβ”€β”€ start_local.bat                 # 1-Klick Starter fΓΌr Windows
└── README.md                       # Projekt-Dokumentation

πŸ”’ Lizenz & Sicherheitshinweise

  • SΓ€mtliche KennwΓΆrter und Zertifikate in vars/secrets.yml sowie .env sind vor Produktivnutzung durch sichere, individuelle Werte zu ersetzen.
  • Die AusfΓΌhrung von Hyper-V- und WinRM-Befehlen erfordert entsprechende lokale Administratorrechte auf dem Hostsystem.

About

Enterprise Infrastructure Automation, Hybrid Remote Management & Hyper-V Orchestration

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages