Zurücksetzen der NTFS-Berechtigungen auf der gesamten Festplatte

11

Jemand hat das Festlegen von Berechtigungen für ein NTFS-Laufwerk erheblich durcheinander gebracht, und ich suche nach einer Möglichkeit, alle Berechtigungen auf die Standardeinstellungen zurückzusetzen. Das Betriebssystem wird neu installiert, aber ich versuche, Daten aus ihren Benutzerverzeichnissen zu retten.

Keine der Daten wird auf FS-Ebene verschlüsselt.

Irgendeine Empfehlung, wie man das erreicht?

Andrew Moore
quelle

Antworten:

16

Wenn Sie von einer Festplatte sprechen, die keine Windows-Installation enthält, verwenden Sie einfach die Dienstprogramme "TAKEOWN" und "ICACLS":

TAKEOWN /f "X:\" /r /d y
ICACLS "X:\" /reset /T

Anschließend können Sie die ACLs auf die gewünschten Werte zurücksetzen.

Wenn es sich um eine Festplatte mit einem installierten Windows 2000-, XP- oder Server 2003-Betriebssystem handelt (in diesem Fall wissen Sie nichts über Vista), können Sie versuchen, die Standard-Sicherheitsvorlage erneut anzuwenden:

secedit /configure /db secedit.sdb /cfg %SystemRoot%\defltwk.inf /overwrite /verbose

(Ersetzen Sie bei einer Windows Server-Installation "defltsv.inf" durch "defltwk.inf".)

Evan Anderson
quelle
Möglicherweise möchten Sie dem icalsBefehl folgende Optionen hinzufügen : /C(Bei Dateifehlern fortfahren) und /Q(Erfolgsmeldungen unterdrücken). Fehlermeldungen werden weiterhin angezeigt.
Mivk
1
In Win7 x64 sind beim Zitieren des Laufwerks Fehler aufgetreten. Und für icacls konnte ich das Laufwerk nicht direkt angeben. Also musste ich verwenden takeown /F X:\ /R /D Yund icacls X:\* /reset /T.
Mivk
Microsoft scheint zumindest für diese Aufgabe seine Meinung über den Nutzen (und die Sicherheit) von secedit geändert zu haben . Die Methode ist eigentlich sehr leicht zu berühren, überhaupt etwas AFAICT (viele Registrierungsschlüssel, aber kleine Systemordner, Windows-Hauptordner vielleicht). Letztendlich ist der einzige zuverlässige Weg, den ich kenne , ACLs mit einem anderen vertrauenswürdigen System zu vergleichen.
mirh
2

Alternativ zu takeown und * cacls können Sie mit SetACL zunächst alle Dateien und Verzeichnisse auf dem Laufwerk in Besitz nehmen und dann die gewünschten Berechtigungen festlegen.

Festlegen des Besitzers eines gesamten Baums für Administratoren und Aktivieren der Vererbung für die untergeordneten Objekte :

SetACL.exe -on "C:\" -ot file -actn setprot -op "dacl:np;sacl:nc" 
           -rec cont_obj -actn setowner -ownr "n:S-1-5-32-544;s:y"

Hinzufügen vollständiger Berechtigungen für Administratoren:

SetACL.exe -on "C:\" -ot file -actn ace -ace "n:S-1-5-32-544;s:y;p:full"
Helge Klein
quelle
0

Ich bin mir nicht sicher, ob so etwas existiert. Sofern Sie kein Imaging des Systems durchführen, kann das Betriebssystem neu installiert werden, ohne dass die Benutzerdaten entfernt werden müssen. Dadurch werden auch Berechtigungen für Ordner im Zusammenhang mit dem Betriebssystem festgelegt. Je nachdem, um welchen Systemtyp es sich handelt und was verfügbar ist, legen Sie das Laufwerk in ein anderes System ein und ziehen Sie die Benutzerdaten ab. Löschen Sie dann und installieren Sie es erneut.

Jeff Hengesbach
quelle
0

Ich habe noch nie von etwas gehört, das Berechtigungen für alles auf eine leere Tafel zurücksetzt, es sei denn, "Wiederherstellung aus Sicherung" zählt.

Selbst wenn dies der Fall wäre, müsste bekannt sein, wem welche Dateien gehören, sowie Registrierungsberechtigungen und andere ID-Informationen. Es besteht die Möglichkeit, dass es schief geht und Sie ein System haben, das sich zu zufälligen Zeiten seltsam verhält, es sei denn, das betreffende Programm hatte eine Momentaufnahme des Zustands der Maschine bei der Erstinstallation. In diesem Fall ist es dasselbe als Backup. Sie hätten möglicherweise Berechtigungen und IDs (Sicherheits-IDs) geändert, indem Sie Benutzer hinzugefügt und das Betriebssystem zuerst auf dem Computer installiert hätten, da Windows bestimmte Dinge in der ACL hatte, die für die Installation spezifisch sind.

Am besten sichern Sie Benutzerdaten, löschen die Festplatte und installieren sie neu, bevor Sie Benutzerdaten wieder in die richtigen Ordner kopieren. Erstellen Sie dann ein Backup-Image des Systems.

Dies ist eine der Situationen, in denen RAID nicht helfen würde, aber ein gutes Backup kann (es gibt eine Reihe von Administratoren, die anscheinend glauben, RAID sei ein Backup; in dieser Situation hätte es nicht geholfen!).

Bart Silverstrim
quelle
Ich würde zwar zustimmen, dass Sie keine benutzerdefinierten Sicherheitseinstellungen wiederherstellen können, aber Sie können die Standardsicherheitsvorlage erneut anwenden und zur Standardsicherheit des Betriebssystems zurückkehren.
Evan Anderson
Würde die Verwendung dieses Problems möglicherweise keine Probleme verursachen, wenn er über benutzerdefinierte Sicherheit durch Anwendungen verfügt? Aus irgendeinem Grund scheue ich mich davor zurück, weil es später zu unerwartetem Verhalten führen könnte ... oder hat sich das verbessert?
Bart Silverstrim
Wenn Sie die Sicherheit von der Standardeinstellung geändert haben, um einige Software aufzunehmen, müssen Sie sie erneut ändern, nachdem Sie zu den Standardeinstellungen zurückgekehrt sind. Meiner Meinung nach sollte das "erwartetes" Verhalten sein. Wenn Sie etwas von der Standardeinstellung ändern und es dann wieder auf die Standardeinstellung zurücksetzen, wird es wieder auf die Standardeinstellung zurückgesetzt.
Evan Anderson
0

Ich sehe keine Möglichkeit, die Dinge wieder so zu machen, wie sie nur eine Box verwendet haben, aber wenn Sie eine zweite zur Verfügung haben, entweder als Ersatz oder als temporärer Staging-Bereich (selbst ein PC mit einer kräftigen Festplatte reicht aus Temp Staging), hier ist eine Lösung. Es gibt wahrscheinlich Abkürzungen, die Sie hier nehmen können, aber ich bevorzuge den langsamen und sorgfältigen Weg, da er weniger anfällig für menschliches Versagen ist.

Nehmen wir an, Server A ist derjenige mit vermasselten Berechtigungen, und Server B ist entweder der Ersatz- oder der temporäre Staging-Bereich.

  • Wiederherstellung von der letzten guten Sicherung auf Server B (stellen Sie sicher, dass Sie die Option zum Wiederherstellen der Sicherheit auswählen, wenn Sie dies tun).
  • Stellen Sie auf Server A fest, ob Sie auf die Daten zugreifen können.
    • Wenn nicht, übernehmen Sie die Verantwortung für alles, entweder über die GUI oder über die Befehlszeile.
    • Stellen Sie fest, ob Sie jetzt auf die Daten zugreifen können.
    • Wenn nicht, gewähren Sie sich die volle Kontrolle.
  • Kopieren Sie die Daten mit xcopy / S / E / C / H / R / K / Y von Server A auf Server B. Verwenden Sie / O nicht, da dies Ihre wiederhergestellten ACLs überschreibt.
  • Wenn es sich um einen Ersatzserver handelt, sind Sie fertig. Wenn nicht, kopieren Sie Server A nach dem Neuerstellen von Server B zurück, diesmal mit xcopy / S / E / C / H / R / K / O / Y (Hinweis / 0 ist diesmal hier).
  • Haben Sie ein paar ruhige Worte in einer Ecke mit der Person, die es getan hat. Baseballschläger und Drohungen, ihre Administratorrechte zu widerrufen, können optional sein oder auch nicht, je nachdem, wie Sie sich fühlen.
Maximus Minimus
quelle