Jump to content
f52U5h

Hyper-V Tastatureingaben per Powershell simulieren.

Recommended Posts

Moin Profis!

Ich muss eine VM auf über 100 Server verteilen. XML für Import und die Festplatten VHD sind repliziert. Installiert ist eine Linux OS wo ich kein Zugriff habe. Der Entwickler stellt ein Menu für die Einstellungen bereit.

Ich importiere die Maschine mit einem Powershell script. Es ist auch kein Problem. Nun wollte ich auch die Einstellungen automatisieren.

Über F2 und Password kommt man in die Einstellungsmenu. Danach soll man Name, IP und Gateway eintragen. Reboot und der Rest erledigt man über die Weboberfläche.

So starte ich die Verbindung zu VM und übergebe die Tastatureingaben.

$FB = Get-VM -Name "VM*"

    $argl = "localhost -G " + $FB.VMID + " -C 1"

       Start-Process vmconnect.exe -ArgumentList $argl

    sleep -s 10

       $obj = New-Object -comObject Wscript.Shell

       sleep -s 3

       $obj.SendKeys("{F2}")

       sleep -s 3

       $obj.SendKeys("password")

       sleep -s 3

       $obj.SendKeys("{ENTER}")

       sleep -s 3

       $obj.SendKeys("{DOWN}")

       sleep -s 3

    $obj.SendKeys("{ENTER}")

       sleep -s 3

       $obj.SendKeys("{CLEAR}")

       sleep -s 3

       $obj.SendKeys( $vm_name )

Usw.

Ich habe das auf einem Client WIN 10 Hyper-V ausprobiert und es hat soweit funktioniert. Auf dem Server 2012 R2 in vmconnect.exe werden die Befehle nicht entgegen genommen. Wenn ich aber mit notepad.exe ausführe, wird alles wie gedacht übernommen.

Gibt es bei Hyper-V eine Sicherheitsvorrichtung, um das zu unterbinden?

Was läuft hier falsch?

Mit freundlichen Grüßen.

Share this post


Link to post
Share on other sites

Moin,

 

es wird dich nicht überraschen, du wirst es nicht hören wollen und du wirst ganz bestimmt richtig gute Gründe haben, warum du es doch machst, aber:

 

Man übergibt keine Kennwörter über ein Skript.

 

Gruß, Nils

 

  • Like 1

Share this post


Link to post
Share on other sites

Vielen Dank testperson!

Es funktioniert wunderbar.

 

NilsK, da hast vollkommen Recht. Wir nutzen Ivanti für die Software Verteilung und andere Dinge. Und dort, im Ivanti System, definiere ich eine Variable. Im Script (Actionscript) wird nur eine Variable sichtbar sein.

 

Edited by f52U5h

Share this post


Link to post
Share on other sites

Einstellungen mit Mausklicks tätigen... ist das wirklich notwendig?

 

Normal haben alle Anwendungen eines davon:

- Ini-File oder dergleichen mit den Einstellungen

- Einen Ordner wo alles abgelegt ist

- Registry-Einträge

- Eine Datenbank des Programms

 

Mit Tools wie RegShot und Sysinternals kann man herausfinden/aufzeichnen was alles so geändert wird, wenn man die Einstellungen tätigt. Sind das nicht gerade verschlüsselte Files würde ich immer diesen Wege bevorzugen gegeünber Script-Klickerei.

Klar dank den vielen Telemetry-Zeugs ist das Filtern der Aufzeichnungen mitunter lästig geworden, aber ich finde es dennoch fast immer den besseren weg.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


Werbepartner:



×
×
  • Create New...