Nativen Windows 10 als RDP-Client nutzen und absichern via GPO

doskias
Goto Top
Hallo zusammen,

vor einiger Zeit stand ich vor der Aufgabe, dass wir native Windows 10 Rechner so begrenzen, dass dieser für den User lediglich RDP zulässt. Dafür hatte ich damals unter anderem folgende beide Themen eröffnet, die bis heute noch offen sind.


Eine Lösung habe ich für die beiden dort beschriebene Probleme nicht gefunden, aber eine Alternative. Vielleicht hilft dem einen oder anderem ja weiter, wenn er eine ähnliche Anforderung hat. Ein Windows 10 ioT mit Festplatten-Schreibschutz hat unser Virenscanner einen Strich durch die Rechnung gemacht. Daher jetzt mit einem nativen Windows 10 Pro.


back-to-topUnsere Situation


Wir haben einen Besprechungsraum mit einem PC. Von diesem PC soll sich der Anwender auf seinen Arbeitsplatz aufschalten können und sein Arbeitsplatz-Bildschirm im Besprechungsraum darstellen. Auf dem PC soll nichts weiter gemacht werden können, da der PC theoretisch unbeaufsichtigt von Gästen genutzt werden könnte.

back-to-topVorbereitung


Windows 10 PC installieren und in die Domäne heben (heißt hier Besprechung)
Besprechungsraum-Benutzer anlegen (heißt hier Meeting)
Eigene OU im AD für die Besprechungsräume anlegen (bei uns unter der regulären OU für Client-PCs)

Anmerkung: Ich gehe nur auf die Sonderrechte ein, die wir für den Benutzer und/oder den PC vergeben haben. Wenn hier also wichtige Einstellungen fehlen , dann liegt dies darin begründet, dass andere GPOs bereits diese Einstellungen bei uns kontrollieren. Bei uns ist es ein mehr oder weniger frei Zugänglicher PC. Die Anleitung kann aber auch für jeden anderen PC genutzt werden, der nur als Terminalclient genutzt werden soll.

back-to-topVorgehen


Das Vorgehen ist recht simpel, da beinahe alles via GPO geregelt wird. Für den Besprechungsraum wurden folgenden GPOs wie nun folgt konfiguriert:
Computerkonfiguration -> Administrative Vorlagen -> System -> Wechselmedien:

  • Alle Wechselmedien: Jeglichen Zugriff in Remotesitzungen verweigern: aktiviert
  • Alle Wechselmedienklassen: jeglichen Zugriff Verweigern: aktiviert

Das war es für den PC. Der Rest erfolgt am Benutzer und wird deutlich länger und mehr. Deswegen gibt es da jetzt Bilder face-smile

gpo1
gpo2
gpo3

JA, die drei Bilder sind alle nur im Startmenü. Der Rest wird weniger face-smile

gpo4
gpo5
gpo6

Zum Schluss folgen noch 2 Registry-Keys die verteilt werden.

gpo7

back-to-topWas machen die beiden Registry Keys


Software\Microsoft\Windows\CurrentVersion\Policies\NonEnum sorgt dafür, dass auf das Netzwerk aus dem Explorer nicht zugegriffen werden kann. Das dient als doppelter Boden, denn der Zugriff auf den Explorer ist wie oben gezeigt bereits eigentlich deaktiviert.

Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoChangeStartMenu sorgt dafür, dass nichts am Startmenü angeheftet werden kann.

Das war es im Prinzip auch schon. Der User kann jetzt fast gar nichts mehr machen. Einige Dinge (wie lesend noch die Computerhardware zu öffnen) sind zwar noch möglich, aber damit kann derjenige keinen Schaden anrichten.

Damit es für jeden User immer gleich aussieht, haben wir noch ein PowerShell Skript erstellt, welches eine MSTSC.EXE öffnet. Sollte keine MSTSC.EXE mehr offen sein, so startet der PC neu. Dadurch bedingt ist der Rechner theoretisch via PS angreifbar. Wer seinen Anwendern diesen Luxus nicht gönnt, der muss einfach powersehll.exe in Bild 4 zusätzlich zum explorer.exe hinzugefügt werden. Das ganze wird per Aufgabenplanung bei der Anmeldung eines Benutzers ausgeführt und sieht bei uns so aus:


Das Skript und die Aufgabe wird ebenfalls via GPO verteilt. Aus Pfadgründen hier jedoch nicht angegeben. Aber das kriegt ihr schon selbst hin, wenn ihr an dieser Stelle angekommen seid. face-smile

back-to-topWarum habe ich das alles so gemacht wie es ist?


Die hier beschriebene Lösung hat folgenden Vorteil:

  1. Es kann ein vollwertiger Rechner genutzt werden mit dem vollen Softwarepaket. Die Vorbereitung einen Rechner in diesen Zustand zu versetzen ist nahezu gleich Null. Es müssen nur Mitarbeiter und Rechner in die Entsprechende OU bzw. Gruppe verschoben werden.
  2. Über die erste Skript-Zeile kann ich steuern wer den Rechner als RDP-Client verwenden muss und wer ihn regulär verwenden kann. Ich kann somit an Arbeitsplätzen definieren, dass der Admin und bestimmte Anwender den Rechner als regulären Arbeitsplatz nutzen können, während der Praktikant auf die RDP-Verbindung gezwungen wird und sich am Terminalserver anmelden muss. Das ganze gesteuert über die AD-Gruppe und das Skript.

Nachteil:

Der Rechner ist theoretisch durch PS angreifbar, da ich Code in PS eingeben kann. Ja ich kann PS öffnen, aber wenn neben der aus der Aufgabenplanung gestarteten Shell eine weitere geöffnet ist, wird der Computer innerhalb einer Sekunde neu gestartet. Da ich keinerlei Möglichkeit habe, ein vorgefertigtes Skript zu kopieren oder per Doppelklick auszuführen, ist dies nur theoretisch möglich.

So. Das wars mit meiner ersten Anleitung. Wer Fragen oder Anmerkungen konstruktiver Art hat, kann diese hier gerne posten.

Gruß
Doskias

Content-Key: 1695741315

Url: https://administrator.de/contentid/1695741315

Ausgedruckt am: 17.08.2022 um 04:08 Uhr

Mitglied: beidermachtvongreyscull
beidermachtvongreyscull 06.01.2022 um 13:37:41 Uhr
Goto Top
Mahlzeit Kollege!

Anleitungen find ich immer cool, wenn die einen Faden haben, dem man folgen kann.

Schau Dir mal aus Spass das hier an: https://www.wioski.com/

So mache ich das mit Clients, die sich nicht ändern sollen.
Zwangsreboot rein und hast die Möhre immer in Ausgangsstellung.

Unsere Konferenzraum-PCs habe ich so gebaut.
Ich war es leid, ständig Teams, Webex und wie sie alle heißen immer runterzuschmeißen.

Gruß
bdmvg
Mitglied: Doskias
Doskias 06.01.2022 um 14:06:56 Uhr
Goto Top
Zitat von @beidermachtvongreyscull:
So mache ich das mit Clients, die sich nicht ändern sollen.
Zwangsreboot rein und hast die Möhre immer in Ausgangsstellung.

Japp. Wobei ich sagen muss: grade die Option, dass ich Anhand des Benutzers entscheide ob der Rechner nu ein TS-Client ist oder ein vollwertiger Rechner, sich in den letzten Wochen doch als sehr nützlich heraus gestellt hat. So kann sich der Praktikant bei der Lagerinventur an jedem Rechner anmelden der grade frei ist und sich per RDP auf den Server schalten ohne die Umgebung des Lagermitarbeiters zu gefährden.

Ich persönlich bin von "Zwangsreboot in Ausgangsstellung" mittlerweile abgerückt. Wenn der User nichts umstellen kann, brauch ich keine Ausgangsstellung und wenn was kaputt ist, dann wird einfach das reguläre Image drüber gebügelt und durch die GPOs ist der Rechner dann auch schnell wieder einsatzbereit. Außerdem kann ich wirklich jeden Rechner den wir im Einsatz haben als Ersatz nehmen und muss nur eine GPOs (obige Computerverwaltung geht derzeit noch auf Rechnernamen) dafür anpassen.
Mitglied: DerWoWusste
DerWoWusste 06.01.2022 um 14:52:56 Uhr
Goto Top
Wenn ich erreichen wollte, dass an einem bestimmten PC nur ein bestimmter Nutzerkreis gezwungen wird, nichts außer rdp machen zu dürfen, nehme ich assigned access und die MS store app für remote Desktop und muss nichts weiter tun.

Der Nutzerkreis bekommt den Namen und das Kennwort des assigned access Nutzers und fertig.
Mitglied: Doskias
Doskias 06.01.2022 um 15:06:48 Uhr
Goto Top
Zitat von @DerWoWusste:
Wenn ich erreichen wollte, dass an einem bestimmten PC nur ein bestimmter Nutzerkreis gezwungen wird, nichts außer rdp machen zu dürfen, nehme ich assigned access und die MS store app für remote Desktop und muss nichts weiter tun.
Der Nutzerkreis bekommt den Namen und das Kennwort des assigned access Nutzers und fertig.

Guter Punkt. Das habe ich ursprünglich auch versucht, aber es hat nicht funktioniert. Es hat auch nicht an mir gelegen, wie in meinem damaligen Posting (hier der entsprechende Kommentar andere User bestätigt haben. Zugegeben, es ist seitdem etwas Zeit vergangen und ich habe es mit der MS Store App nicht erneut versucht, aber dafür gibt es auch Gründe. Einer der Gründe ist zum Beispiel, dass unser Firewall die MS-Store-App blockt, weil die Firewall den ganzen MS-Store blockt. Die Lösung kann also auch helfen, wenn ich keinen Zugriff auf die MS-Store-App habe, wie es bei uns der Fall ist face-wink
Mitglied: DerWoWusste
DerWoWusste 06.01.2022 um 15:09:06 Uhr
Goto Top
Ich teste das mal und dann seh ich mir auch deine Alternative an.
Mitglied: DerWoWusste
DerWoWusste 08.01.2022 um 16:06:30 Uhr
Goto Top
Hab mir assignedaccess auf Win11 in Verbindung mit der RemotedesktopApp aus dem Store angesehen.
In der Tat startet die App, lässt aber keine Verbindungen zu, was nach Bug aussieht (solche kenne ich schon von assignedaccess).

Deine Methode werde ich mir auch noch ansehen.