Zum Hauptinhalt springen

Installation mit Windows Configuration Designer

Use Windows Configuration Designer to create a provisioning package that deploys Level to new Windows devices during OOBE.

Einführung

Windows Configuration Designer (WCD) ermöglicht es Ihnen, ein Bereitstellungspaket zu erstellen – eine .ppkg Datei — die automatisch ausgeführt wird, wenn sie während der Out-of-Box-Experience (OOBE) auf einem neuen Windows-Gerät eingesteckt wird. Sie können damit das Gerät benennen, ein lokales Administratorkonto erstellen, ein WLAN-Netzwerk beitreten und den Level-Agenten installieren – alles, bevor der Endbenutzer die Tastatur berührt.

Dieser Artikel beschreibt die Erstellung eines Bereitstellungspakets, das den Level-Agenten als Teil der Einrichtung neuer Geräte installiert.


⚙️ VORAUSSETZUNGEN


🎬 VIDEO


Funktionsweise

WCD erzeugt eine .ppkg Datei. Windows erkennt dieses Dateiformat während der OOBE – wenn ein neues Gerät zum ersten Mal hochfährt und den Sprach-/Einrichtungsbildschirm erreicht, bewirkt das Einlegen eines USB-Sticks mit der .ppkg Datei veranlasst Windows, die OOBE zu beenden und stattdessen das Bereitstellungspaket auszuführen.

Im Paket tritt ein PowerShell-Skript einem WLAN-Netzwerk bei und installiert den Level-Agenten. Der gesamte Bereitstellungsschritt dauert nur wenige Sekunden. Sobald er abgeschlossen ist, erscheint das Gerät in Level und ist für weitere Automatisierungen bereit.


Installation mit Windows Configuration Designer

Schritt 1: Neues Projekt erstellen

  1. Öffnen Sie Windows Configuration Designer.

  2. Klicken Sie auf Provision Desktop Devices.

  3. Geben Sie einen Projektnamen ein und wählen Sie einen Speicherort aus.

  4. Klicken Sie auf Finish , um den Assistenten zu öffnen.

Provision Desktop Devices

Schritt 2: Den Assistenten konfigurieren

Der Assistent hat sechs Schritte. Hier erfahren Sie, was bei jedem Schritt zu tun ist.

1 — Gerät einrichten

Geben Sie eine Vorlage für den Computernamen ein. Eine gängige Konvention ist CompanyName-%Serial%, das Ihren Firmennamen der Seriennummer des Geräts voranstellt.

2 — Netzwerk einrichten

Sie können hier ein WLAN-Netzwerk konfigurieren, jedoch ist die WLAN-Verbindung möglicherweise noch nicht hergestellt, wenn das Level-Installationsskript ausgeführt wird. Lassen Sie dieses Feld leer – das PowerShell-Skript in Schritt 4 übernimmt die WLAN-Einrichtung zuverlässiger.

3 — Kontoverwaltung

Richten Sie hier ein lokales Administratorkonto ein. Wenn das Gerät einer Domäne beitreten muss, überspringen Sie den Domänenbeitritt – dieser kann nach der Registrierung über eine Level-Automatisierung vorgenommen werden.

4 — Anwendungen hinzufügen

Hier findet die Level-Installation statt. Sie fügen ein PowerShell-Skript hinzu, das dem WLAN-Netzwerk beitritt und den Level-Agenten installiert.

5 — Zertifikate hinzufügen

Keine Änderungen erforderlich.

6 — Fertigstellen

Klicken Sie auf Create , um die .ppkg Datei.


Schritt 3: Das PowerShell-Skript vorbereiten

Kopieren Sie das folgende Skript in einen Texteditor und speichern Sie es als .ps1 Datei. Aktualisieren Sie drei Werte vor dem Speichern:

  • Zeile 2: Ersetzen Sie Put Your SSID Here durch Ihren WLAN-Netzwerknamen

  • Zeile 3: Ersetzen Sie Put Your Wi-Fi Password Here durch Ihr WLAN-Passwort

  • Gegen Ende: Fügen Sie Ihren Level-Installationsbefehl an der angegebenen Stelle ein (zu finden unter Add new device → Windows → One-line command in Level)

param(
[string]$SSID = "Put Your SSID Here",
[string]$PSK = "Put Your Wi-Fi Password Here"
)

# Create temp folder for logging
$TempFolder = 'C:\temp'
if (Test-Path -Path $TempFolder) {
"$TempFolder exists."
} else {
"$TempFolder doesn't exist. Creating it now."
mkdir $TempFolder
}

Start-Transcript -Append "$TempFolder\LevelInstall.txt"

# Create a wireless profile
$guid = New-Guid
$HexArray = $SSID.ToCharArray() | ForEach-Object {
[System.String]::Format("{0:X}", [System.Convert]::ToUInt32($_))
}
$HexSSID = $HexArray -join ""

@"
<?xml version="1.0"?>
<WLANProfile xmlns="http://www.microsoft.com/networking/WLAN/profile/v1">
<name>$($SSID)</name>
<SSIDConfig>
<SSID>
<hex>$($HexSSID)</hex>
<name>$($SSID)</name>
</SSID>
</SSIDConfig>
<connectionType>ESS</connectionType>
<connectionMode>auto</connectionMode>
<MSM>
<security>
<authEncryption>
<authentication>WPA2PSK</authentication>
<encryption>AES</encryption>
<useOneX>false</useOneX>
</authEncryption>
<sharedKey>
<keyType>passPhrase</keyType>
<protected>false</protected>
<keyMaterial>$($PSK)</keyMaterial>
</sharedKey>
</security>
</MSM>
<MacRandomization xmlns="http://www.microsoft.com/networking/WLAN/profile/v3">
<enableRandomization>false</enableRandomization>
<randomizationSeed>1451755948</randomizationSeed>
</MacRandomization>
</WLANProfile>
"@ | Out-File "$TempFolder\$guid.SSID"

netsh wlan add profile filename="$TempFolder\$guid.SSID" user=all
Start-Sleep -Seconds 5
Remove-Item "$TempFolder\$guid.SSID" -Force
netsh wlan connect name=$SSID

# Wait for network connectivity before downloading Level
$timeout = New-TimeSpan -Minutes 2
$endTime = (Get-Date).Add($timeout)
$testSite = "downloads.level.io"
while (!(Test-Connection -ComputerName $testSite -Quiet)) {
Start-Sleep -Seconds 5
if ((Get-Date) -gt $endTime) {
"$testSite connectivity timeout exceeded. Network connectivity not established."
break
}
}

# Paste your Level install command on the line below
# Get it from: Level → Add new device → Windows → One-line command

Stop-Transcript

💡 TIPP: Das Skript protokolliert seine Ausgabe in C:\temp\LevelInstall.txt auf dem Zielgerät. Überprüfen Sie diese Datei, wenn der Level-Agent nach der Bereitstellung nicht erscheint.

⚠️ WARNUNG: Das WLAN-Passwort wird im Klartext in der .ps1 Datei und ist im .ppkg. Behandeln Sie das Bereitstellungspaket als vertrauliche Datei und schränken Sie den Zugriff darauf ein.


Schritt 4: Das Skript zum Paket hinzufügen

Zurück im WCD-Assistenten beim Add applications Schritt:

  1. Klicken Sie auf + , um eine Anwendung hinzuzufügen.

  2. Geben Sie einen Namen ein (z. B. „Install Level Agent").

  3. Im Installer Path Feld navigieren Sie zu Ihrer .ps1 Datei.

  4. Im Command Line Arguments Feld, geben Sie Folgendes ein:

powershell.exe -executionpolicy bypass -file "your_script.ps1"

Ersetzen Sie your_script.ps1 durch den tatsächlichen Dateinamen.

  1. Lassen Sie alle anderen Einstellungen auf ihren Standardwerten und klicken Sie auf Add.


Schritt 5: Das Paket generieren und bereitstellen

  1. Schließen Sie die verbleibenden Schritte des Assistenten ab und klicken Sie auf Create auf der Abschlussseite.

  2. Kopieren Sie die generierte .ppkg Datei auf einen USB-Stick. Nur die .ppkg wird benötigt – das .ps1 Skript darin eingebettet ist.

So stellen Sie auf einem neuen Gerät bereit:

  1. Schalten Sie das Gerät ein. Es startet in die OOBE und zeigt den Sprachauswahlbildschirm an.

  2. Beantworten Sie keine OOBE-Eingabeaufforderungen.

  3. Stecken Sie den USB-Stick ein.

  4. Windows erkennt die .ppkg Datei und beginnt automatisch mit der Bereitstellung.

Das Gerät benennt sich um, erstellt das lokale Administratorkonto, tritt dem WLAN-Netzwerk bei und installiert den Level-Agenten. Anschließend erscheint es in Ihrer Level- Device Listing.

OOBE Setup

ℹ️ HINWEIS: Der Bereitstellungsvorgang dauert nur wenige Sekunden. Das Gerät wird im Rahmen des Vorgangs ein- oder zweimal neu gestartet – das ist zu erwarten.


Häufig gestellte Fragen (FAQ)

  • Kann ich dies für Geräte verwenden, die einer Domäne beitreten sollen? Ja – richten Sie das lokale Administratorkonto im Assistenten ein, überspringen Sie den Domänenbeitrittsschritt und nehmen Sie den Domänenbeitritt später über eine Level-Automatisierung vor, nachdem das Gerät registriert wurde.

  • Was ist, wenn mein Netzwerk kein WPA2 PSK verwendet? Das WLAN-Profil im Skript ist für WPA2 PSK konfiguriert. Wenn Ihr Netzwerk eine andere Authentifizierungsmethode verwendet (WPA3, 802.1X usw.), passen Sie die <authentication> und <encryption> Werte im XML-Profil entsprechend an.

  • Das Gerät wurde bereitgestellt, aber Level wird nicht angezeigt – was ist passiert? Überprüfen Sie C:\temp\LevelInstall.txt auf dem Gerät nach dem Installationsprotokoll. Häufige Ursachen: Das WLAN-Netzwerk wurde vor Ablauf des Verbindungs-Timeouts nicht beigetreten, oder ein AV/EDR-Tool hat den Level-Download blockiert. Siehe AV/EDR False Detections und Offline Troubleshooting.

  • Muss ich für jede Gerätegruppe in Level ein neues Paket erstellen? Ja – der im Skript eingebettete Installationsschlüssel bestimmt, in welche Gruppe das Gerät eingeordnet wird. Erstellen Sie ein separates .ppkg pro Gruppe, oder verwenden Sie einen einzelnen Installationsschlüssel ohne Gruppe und verschieben Sie Geräte anschließend.

  • Kann ich statt WLAN ein kabelgebundenes Netzwerk verwenden? Ja – entfernen Sie das WLAN-Profil und die netsh wlan Abschnitte aus dem Skript und vereinfachen Sie die Verbindungsprüfung so, dass nur überprüft wird, ob downloads.level.io erreichbar ist.

Hat dies deine Frage beantwortet?