gijoe
Goto Top

Registry - Profile - Templates - Zugriffsrechte

Registry, Templates, Profil, Struktur, Hive, Einträge, lokale Gruppenrichtlinie, batch, ACL, Zugriffsrechte, MSI, unattended, silent, FileACL, cusrmgr,

Hallo, Ziel dieses Tutorials ist es die Windows Umgebung für Systemadministratoren fassbarer zu machen. Dem Tutorial liegt eine Automatische unbeaufsichtigte Windows-Netzwerk-Installation Zugrunde. Admins die sich mit solchen DIngen den Kopf zerbrochen haben können hier das einte oder andere herausziehen. Gerade für lokale Profile, die identisch auf mehrere PC's ertellt werden sollen, gibt es wenige Umfassende Berichte bzw. diese müssen übers ganze Netz zusammengesucht werden.

*Registry*

[Allgemein]
Windows hat leider die Eigenschaft so zimliech alles, mit wenigen Ausnahmen, in die Registry abzulegen. Von Einstellungen, Konfigurationen, Pfadangaben, Keys...die Liste lässt sich endlos Erweitern.

[User]
Wenn man sich mit lokalen User-Profilen auseinander zu setzen hat, und diese auch noch identisch auf mehreren PC's zu installieren hat macht es Sinn sich mit dessen Registry Einträgen auseinander zu setzen:
Ein paar wichtige Tatsachen:
- Jeder User speichert seine Registry-Einträge in seinem eigenen Profil
- Ein Administrator kann jegliche User-Registry Einträge Bearbeiten, ohne das sich der User einloggen muss
- Ein Eingeloggter User findet seine spezifischen Registry-Eintrage im Registry-Zweig HKEY_CURRENT_USER
- Die spezifischen Registry-Einträge bei einem NICHT eingeloggtem User befinden sich unter C:\Dokumente und Einstellungen\<username>\NTUSER.DAT
- Wie man Registry-Einträge (HKCurrentUser) im nicht eingeloggtem Modus (bzw. Eingeloggt als Admin) verändern kann steht unter "Laden von Registry Einträgen"


[Laden von Registry Einträgen]
Besonders beim automatisieren und automatischem Anelgen von lokalen Usern ist es oft störend das man dessen Registry-Einträge nicht gerade automatisch mitändern kann.
Beispiele für Änderungen ohne sich als User anmelden zu müssen:
- Standardrucker setzen
- Userspezifische Richtlinien setzen
- Programmspezifische Einstellungen einrichten (zB das sich nicht jedes Programm neu konfiguriert beim erstmaligem Gebrauch)
- Falls der User nicht über genügend Rechte verfügt seine eigene Registry zu Bearbeiten

Das alles ist OHNE Probleme möglich. Ich gehe hierbei immer davon aus dass man als Admin aufs System Zugreiffen kann bzw. angemeldet ist.
LADEN DER REGISTRY EINES USERS: Wie schon erwähnt befinden sich die jeweiligen Registry-Einträge eines Users unter C:\Dokumente und Einstellungen\<username>\NTUSER.DAT. Um diese bearbeiten zu können muss die *.dat-Datei in die Registry geladen werden:
Laden des HIVE Files
1) regedit => Registry öffnen
2) auf HKEY_LOCAL_MACHINE klicken
3) Datei=>Struktur laden klicken
4) NTUSER.DAT anwählen
5) Irgendein Name angeben (zB test)
6) Der Registry-Zweig erscheint nun unter HKEY_LOCAL_MACHINE\test\....
7) Nach dem editieren muss der Zweig wieder getrennt werden
8) auf HKEY_LOCAL_MACHINE\test klicken und Datei=>Struktur entfernen klîcken

[Automatisieren von Registry-Einträgen]
Es gibt wohl unendlich viele Möglichkeiten. Ein paar praktische, vor allem für Batch-File, sind diese:
Ich empfehle ein Buch (zB Windows Registry Guide) damit ein effizientes Arbeiten schnell angeeignet werden kann. Denn Wissen wie Hex Wert eines DWORDS o.ä. muss schnell abrufbereit sein um Registry-Schlüssel u.a. erstellen zu können.
* Registry Template, sogenannte inf Templates:
Inf Files können mit dem Batch-Befehl "rundll32.exe setupapi.dll,InstallHinfSection DefaultInstall 132 C:\<dein *.inf-File>"

Erstellen eines INF Files (Beispiel):

[Version] ;; Signatur ist ein muss, darin erkennt windows um welches OS es sich handelt
Signature=$CHICAGO$

[DefaultInstall] ;; Regkey hinzufügen
AddReg=Regkeys.anfuegen

[Regkeys.anfuegen]
; DontDisplayLastUserName
HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System,DontDisplayLastUserName,0x10001,0x00000001

; Anmerkung: letzte Hex Zahl = Wert, zweitletzte Hex Zahl = Reg DWORD


Inf-Templates ist meiner Meinung nach die sauberste Möglichkeit die Registry zu automatisieren und bzw. zu automatisieren


* *.reg-Files automatisch ausführen (via Batch Befehl)
Du hast ein Reg-File von der Registry exportiert und möchtest es nun bei 100 Usern automatisch beim nächsten Login einspielen?
Befehl: regedt32 /s C:\<deinRegFile.reg>


* Registry Eintrag via Batchfile erstellen, bearbeiten und löschen
CMD-Shell öffnen und Reg /? eingeben. Zimliech selbsterklärend. Reg add /? enthält zB noch Beispiele.


* Registry Einträge eines Users automatisiert Verändern
Dazu muss seine *.dat - Datei wie oben beschrieben ins HKLM geladen werden.
- siehe dazu Reg laod /?
- Nachdem du sein Registry Zweig geladen hast kannst du ihn beliebig editieren, zB Reg Add HKLM, tempRegistryZweigUser\Software\.... o.ä.
- nicht vergessen das ganze mit Reg unload wieder abzuhängen!


[Gruppenrichtlinie GPO - LOKALE!]
Schon viele haben sich darüber geärgert, die lokalen Gruppenrichtlinien wirken sich Standardmässig, im gegensatz von Domain-GPO's, auf alle User (also inkl. Administrator) aus. Es gibt Workarounds. Zum Beispiel kann dem Administrator die Zugriffsrechte auf die GPO entzogen werden (C:\Winnt\system32\GroupPolicy). Somit treffen die Veränderungen der Gruppenrichtlinien den Admin nicht mehr. Er kann sie allerdings auch nicht mehr ausführen und editieren. Es empfiehlt sich einen zweiten Administrator Account zu erstellen, der die GPO verwaltet. Denn bei jeder Veränderung der GPO werden diese umgehend in die Registry (auch in die der User) geschrieben (in die NTuser.dat). Deshalb kann ein sperren der Zugriffsrechte im nachhinein scheitern bzw. bringt einfach nichts mehr weil der Admin die Änderungen schon übernommen hat.

* GPO Templates
muss ein schönes Kapitel sein, hab ich aber noch nie gemacht;) Beiträge erwünscht, werde sie pasten und als meine ausgeben:P

* GPO && Registry
Viele Einstellungen der GPO können in der Registry getätigt werden. Falls oben beschriebenes Problem besteht kann man via Registry grösstenteils schöne Workarounds erstellen. Empfehlenswert wäre hier der Registry Editor von www.winfaq.de, der zeigt für sämtliche GPO-Einstellungen den Registry-Eintrag an.


[ACL - Zugriff - Zugriffsrechte - Attribute]
Zugriffsrechte automatisieren. Hier mal einige Möglichkeiten:

* CACALS.EXE : Ein Tool von Windows, reicht für Einfache Rechtevergabe (Falls nicht vorhanden einfach Downloaden und in ...system32 speichern)

* XCACLS.EXE : Geht etwas tiefer als CACLS.EXE, kann spezifischere Rechte vergeben (s. Sicherheit => Erweitert bei einer Datei)

* FileACL.EXE : Nochmals eineStufe tiefer als XCACLS.EXE, kennt noch mehr Rechte-Einstellungen die unter "Sicherheit => Erweitert" aufgelistet sind

* CDACLS.EXE : Ein sehr schönes tool von d.Nast (http://www.nastyboy.ch)<=downloa); Zeigt Befehl für Batch an! Aber schwierig zu automatisieren.

* SETACL.EXE : Ein Projekt von Sourceforge, hab ich nicht getestet.

* SuperACL.EXE : Ein Tool zum organisieren der ACL, Testversion unter: http://www.zdnet.de/downloads/prg/a/f/deRVAF-wc.html, hab ich nicht getestet.


[Userverwaltung - User Anlegen - Account - Profil]
Mit C++, VB oder WHS lassen sich User genial anlegen und organisieren. Das ganze kann aber auch mit Batch-Dateien erledigt werden:

* SUBINACL.EXE : Für lokalen Gebrauch wohl weniger gedacht, es sein hier einfach der Vollständigkeitshalber mal erwähnt

* CUSRMGR.EXE : Sehr wertvoll beim (automatischen) Anlegen von neuen Usern. Kann nicht gratis von Microsoft gedownloaded werden! Befindet sich auf Win2k CD (ResourceKit).
CUSRMGR /? zeigt alle möglichen optionen. Einziger Mangel: Das Passwort-Häkcken lässt sich nicht setzen, Workaround: In der GPO (bzw Registry?) das Ablaufdatum des Passwortes auf 0 (=läuft nie ab) setzen. Die GPO ist meines Wissens immer dominanter als die Konfigurationen in der User Verwaltung bspw.


[Quellen]
- Winfaq.ch
- Microsoft.ch
- Nast.ch
- google (fehlendes Stichwort)

Content-ID: 22053

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

Ausgedruckt am: 22.11.2024 um 22:11 Uhr

meinereiner
meinereiner 09.02.2006 um 23:36:26 Uhr
Goto Top
Nachdem du schon soviel geschrieben hast, erlaube ich mir mal das ein bischen zu ergänzen. ;


* *.reg-Files automatisch exportieren

geht mit regedit /e "Key"

wenn man z.B. die die Druckerkonfiguration in der Registry per Batchsicher will:
regedit /e c:\print.reg "hkey_local_machine\system\currentcontrolset\control\print"


was z.B. zeigt regedit so alles


öffnet man z.B. mit regedit die Registry sieht man die 5 Primärschlüssel HKEY_CLASSES_ROOT,HKEY_CURRENT_USER,

HKEY_LOCAL_MACHINE,HKEY_USERS und HKEY_CURRENT_CONFIG. Hier eine kurze Erklärung:


HKEY_CLASSES_ROOT
ist eigentlich kein eigener Schlüssel. Hier wird nur nochmal der Schlüssel unter HKEY_LOCAL_MACHINE\Software\Classes

eingeblendet. Der Schlüssel besteht nur noch aus Kompatibilitätsgründen zu Windows 3.x


HKEY_CURRENT_USER
Hier liegen die Registryinformationen des aktuell angemeldeten Users. Auch dieser Schlüssel ist nur ein "shortcut" und

kann unter HKEY_USERS\"User SID" wiedergefunden werden.


HKEY_LOCAL_MACHINE
Ist der erste "echte" Schlüssel und wahrscheinlich der interessanteste. Hier werden die Einstellungen des Computers

gespeichert. Daher loht sich auch ein Blick auf die Unterschlüssel.Hardware, Sam, Security, Software und System.
Bis auf den Unterschlüssel "Hardware", der bei jedem Start von Windows dynamisch neu aufgebaut wird und in dem die

Hardwareinformationen des PCs gespeichert sind, finden sie die anderen 4 Unterschlüssel alle im Dateisystem unter

%Systemroot\system32\config als Dateien wieder.

In den Unerschlüsseln SAM und Security befinden sich u.a. die "Benutzerverwaltung". Hier ist selbst dem Admin das lesen

verboten. Man kann es zwar umgehen, aber raten mag ich nicht dazu. face-wink

Im Unterschlüssel Software befinden sich Einstellungen rund um die installierte Software. Wenn man auf der Suche nach

Einstellungen in einer Software ist, die für den ganzen PC gilt und nicht nur für einen User wird man hier meist fündig.

Die Einstellungen für Windows selbst findet man unter HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\.

Als letzter Unterschlüssel bleibt System. Hier finden sich viele Einstellungen zu Treibern und Diensten. Wer

hiereingreift sollte wissen was er tut.


HKEY_USERS
Hier findet man die Einstellungen aller User. Diese werden dabei nicht mit ihrem Namen angezeigt, sondern mit ihrer SID.

Diese Einstellungen sind in den Userprofilen in den Dateien ntuser.dat und ab 2000 auch in der Datei usrclass.dat

gespeichert.

HKEY_CURRENT_CONFIG
Auch dieser Schlüssel ist kein echter Schlüssel und nur ein Shortcut aus anderen Bereichen.


Sicherungskopien der Registry

Im Verzeichnis %systemroot%\repair befinden sich Sicherungskopien der Registryfiles aus dem Verzeichnis

%Systemroot\system32\config . Leider weden diese nicht laufend aktualisiert. Erstmalig werden sie am Ende der

Installation von Windows angelgt. Aktualisiert weden sie z.B. wenn man den Systemstatus sichert.
verkehrsberuhigt
verkehrsberuhigt 10.02.2006 um 19:48:01 Uhr
Goto Top
Bei der Orthografie ahne ich, welche Beiträge Du vermeiden wolltest... ()
Aber - leider leider - nicht alles ist in einem Forum vermeidbar.
gijoe
gijoe 10.02.2006 um 19:53:09 Uhr
Goto Top
@verkehr: schnall ich nicht, was hat das damit zu tun?