Restablecer permisos de NTFS en todo el disco

11

Alguien se equivocó principalmente al establecer permisos en una unidad NTFS y estoy buscando una manera de restablecer todos los permisos a los valores predeterminados. El sistema operativo se reinstalará, pero estoy tratando de recuperar datos de sus directorios de usuarios.

Ninguno de los datos está encriptado a nivel FS.

¿Alguna recomendación sobre cómo lograr eso?

Andrew Moore
fuente

Respuestas:

16

Si está hablando de un disco que no contiene una instalación de Windows, simplemente use las utilidades "TAKEOWN" e "ICACLS":

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

Luego puede restablecer las ACL a lo que desee.

Si se trata de un disco con un sistema operativo Windows 2000, XP o Server 2003 instalado (no sé sobre Vista en este), puede intentar volver a aplicar la plantilla de seguridad predeterminada:

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

(En una instalación de Windows Server, sustituya "defltsv.inf" por "defltwk.inf").

Evan Anderson
fuente
Es posible que desee agregar estas opciones al icalscomando: /C(Continuar con errores de archivo) y /Q(suprimir mensajes de éxito). Todavía se mostrarán mensajes de error.
mivk
1
En Win7 x64, recibí errores al citar la unidad. Y para icacls, no pude especificar la unidad directamente. Así que tuve que usar takeown /F X:\ /R /D Yy icacls X:\* /reset /T.
mivk
Microsoft en realidad parece haber cambiado de opinión sobre la utilidad (y seguridad) de secedit al menos para esta tarea. En realidad, el método es muy ligero para tocar cualquier cosa AFAICT (una buena cantidad de claves de registro, pero pequeñas carpetas del sistema, tal vez la principal de Windows). Entonces, al final del día, la única forma confiable que conozco es comparar ACL con otro sistema confiable.
mirh
2

Como alternativa a takeown y * cacls, puede usar SetACL para primero tomar posesión de cada archivo y directorio en la unidad y luego establecer los permisos deseados.

Configurar el propietario de un árbol completo para administradores y habilitar la herencia en los objetos secundarios :

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"

Agregar permisos completos para administradores:

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

No estoy seguro de que tal cosa exista. Dicho esto, a menos que esté creando imágenes del sistema, el sistema operativo se puede reinstalar sin eliminar los datos del usuario, lo que también solucionará los permisos en las carpetas relacionadas con el sistema operativo. Dependiendo de qué tipo de sistema es este y qué está disponible, coloque la unidad en otro sistema y retire los datos del usuario, luego limpie y vuelva a instalar.

Jeff Hengesbach
fuente
0

Nunca he oído hablar de nada que "restablezca" los permisos de todo a una pizarra en blanco, a menos que "restaurar desde la copia de seguridad" cuente.

Incluso si lo hiciera, necesitaría una forma de saber quién posee qué archivos, así como los permisos de registro y otra información de identificación. Lo más probable es que se arruine y tendrías un sistema que actuaría de manera extraña en momentos aleatorios, a menos que el programa en cuestión tuviera una instantánea de cuál era el estado de la máquina cuando se instaló por primera vez ... en cuyo caso es el mismo como respaldo. Habría potencialmente alterado los permisos y las ID (ID de seguridad) simplemente agregando usuarios y habiendo instalado el sistema operativo en primer lugar en la máquina porque Windows tenía ciertas cosas en la ACL que son específicas de la instalación.

Su mejor opción es hacer una copia de seguridad de los datos del usuario y borrar el disco y volver a instalarlo antes de copiar los datos del usuario nuevamente en las carpetas adecuadas, luego haga una imagen de respaldo del sistema.

Esta es una de las situaciones en las que RAID no ayudaría, pero una buena copia de seguridad puede (hay varios administradores principiantes que parecen pensar que RAID es una copia de seguridad; ¡en esta situación no habría ayudado!)

Bart Silverstrim
fuente
Si bien estoy de acuerdo en que no puede restaurar ninguna configuración de seguridad personalizada, puede volver a aplicar la plantilla de seguridad predeterminada y volver a la seguridad predeterminada del sistema operativo.
Evan Anderson
¿No usaría eso potencialmente causar problemas si tuviera seguridad personalizada a través de las aplicaciones? Por alguna razón, lo evito porque podría causar un comportamiento inesperado en el futuro ... ¿o mejoró esto?
Bart Silverstrim
Si ha modificado la seguridad por defecto para acomodar algún software, tendrá que modificarlo nuevamente después de volver a los valores predeterminados. En mi opinión, ese debe ser el comportamiento "esperado". Si cambia algo del valor predeterminado y luego lo vuelve a cambiar al predeterminado, vuelve a ser el predeterminado nuevamente.
Evan Anderson
0

No veo una manera de hacer que las cosas vuelvan a la forma en que usaban solo una caja, pero si tiene una segunda disponible, ya sea como un reemplazo o un área de preparación temporal (incluso una PC con un HD pesado lo hará por puesta en escena temporal), aquí hay una solución. Probablemente hay atajos que puede tomar aquí, pero prefiero la forma lenta y meticulosa, ya que es menos propenso a errores humanos.

Supongamos que el Servidor A es el que tiene los permisos jodidos, y el Servidor B es el reemplazo o el área de preparación temporal.

  • Restaurar desde la última copia de seguridad válida en el Servidor B (asegurándose de seleccionar la opción para restaurar la seguridad al hacerlo).
  • En el servidor A, establezca si puede o no acceder a los datos.
    • Si no, tome posesión de todo, ya sea a través de la GUI o la línea de comandos.
    • Establezca si puede o no acceder a los datos ahora.
    • Si no, concédete Control total.
  • Copie los datos del Servidor A al Servidor B usando xcopy / S / E / C / H / R / K / Y. No use / O ya que eso sobrescribirá sus ACL restauradas.
  • Si es un servidor de reemplazo, ya está listo. De lo contrario, después de haber reconstruido el Servidor A, vuelva a copiarlo desde el Servidor B, esta vez usando xcopy / S / E / C / H / R / K / O / Y (nota / 0 está aquí esta vez).
  • Tenga algunas palabras tranquilas en un rincón con la persona que lo hizo. Los bates de béisbol y las amenazas de revocar sus derechos de administrador pueden ser opcionales o no, dependiendo de cómo se sienta.
Maximus Minimus
fuente