Recuperar objetos borrados en Active Directory y estado de AD Recycle Bin
Una de las cosas que uno debería tener en cuenta –al final acabas aprendiéndolo a las malas- cuando trabaja con entornos corporativos y Active Directory es que si algo puede salir mal, acaba saliendo.
Por eso existen cosas como la “papelera de reciclaje” de Active Directory (por extraño que suene) que nos permiten restablecer objetos borrados por equivocación –o por otros motivos- y no tener que llevarnos las manos a la cabeza si algo desaparece.
Cuando borramos un usuario por error puede pasar poco o nada, dado que el tiempo para crearlo de nuevo será reducido pero, ¿qué pasa si son 500?
No diré que es algo absolutamente obligatorio ya que existen algunos motivos por los que quizá no interese activar esta característica, pero en cuanto tengamos un par de incidentes de borrado habrá merecido la pena.
Es el momento de preparar nuestro Directorio Activo ante este tipo de incidentes mediante la activación de la función AD Recycle Bin o papelera de reciclaje de Directorio Activo.
NOTA: esta función no está habilitada por defecto en el servidor.
Compatibilidad
- Las versiones de Windows Server 2008 R2 y posteriores soportan dicha opción.
Estado de la papelera de reciclaje de Active Directory
Antes de realizar los pasos siguientes, deberemos haber habilitado los módulos Powershell AD. Para ello deberemos ejecutar lo siguiente el Powershell:
Import-Module ActiveDirectory
NOTA: esto solo hará que estén disponibles durante nuestra sesión actual –no entre reinicios- pero para el ejemplo será suficiente. Si queréis permanencia consultad este enlace.
Para comprobar si tenemos habilitada la opción AD Recycle Bin en nuestro directorio, tendremos que abrir una ventana de PowerShell con permisos de administrador y escribir lo siguiente:
Get-ADOptionalFeature -Filter 'name -like "Recycle Bin Feature"'
En caso de que no esté habilitada la característica, el campo “Enabled Scopes” estará vacío.
Habilitar AD Recycle Bin
En caso de que necesitemos habilitar la opción, escribiremos lo siguiente en PowerShell:
Enable-ADOptionalFeature Identity 'CN=Recycle Bin Feature,CN=Optional Features,CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,DC=<DOMINIO>,DC=<DOMINIO>' Scope ForestOrConfigurationSet Target '<DOMINIO>.<DOMINIO>'
Nótese que debemos sustituir las partes entre corchetes (<>) por los datos de nuestro dominio (dominio.local por ejemplo) sin incluir dichos símbolos.
Con eso ya tendríamos habilitado nuestro contenedor o «papelera», donde se almacenarán los objetos de Directorio Activo que se eliminen. La permanencia de los objetos en dicho almacén o «tombstone» como lo denomina Microsoft es de 60 días en Windows Server 2008 R2 y 180 días en versiones recientes como Windows Server 201-2016.
Recuperar objetos borrados en Windows Server
Una vez hemos activado y configurado correctamente nuestro almacén de objetos perdidos, deberemos introducir lo siguiente, desde PowerShell, para recuperar un usuario basándonos en su nombre de usuario:
$dn = (Get-ADObject -SearchBase (get-addomain).deletedobjectscontainer -IncludeDeletedObjects -filter "samaccountname -eq '$Username'").distinguishedname
La primera línea recupera el DistinguishedName del usuario eliminado. Este valor cambia desde su estado original cuando se mueve un objeto a la papelera (es impresecindible especificar la opción «-IncludeDeletedObjects«). Con este paso obtendremos el ID que necesitamos para recuperarlo después:
Restore-ADObject -identity $dn
El comando Restore-ADObject recupera nuestro objeto (en este caso usuario) que coincida con el valor «dn» o DistinguishedName.
Categories
deweloper View All
Trabajo como consultor de ciberseguridad y me gusta lo que hago. Aficionado a la informática / tecnología en general, me gusta compartir con la gente lo poco que sé. También soy aficionado al deporte y los videojuegos.
Saludos estimado, puedo comunicarme con usted desde otro medio, un usuario de carpetas compartidas borro una carpeta, como hago para recuperar la información, gracias
Lo siento Randy, no dispongo de tiempo para atender este tipo de requerimientos. Si quieres postea un comentario e intento ayudarte.
Saludos.