LDIFDE para importar y exportar a Active Directory

El formato para intercambio de datos en LDAP (o formato LDIF) es un estándar de Internet con el que se busca un formato de archivo que pueda utilizarse para realizar operaciones por lotes en directorios según los estándares del protocolo LDAP. El formato LDIF puede utilizarse para exportar e importar datos, al tiempo que permite llevar a cabo operaciones por lotes (como agregar, crear o modificar) en Active Directory. Windows 2000 | 2003 | 2008 incluye un programa de utilidad denominado LDIFDE que proporciona compatibilidad con las operaciones por lotes basadas en el estándar LDIF de formato de archivos. Este artículo pretende servir de ayuda para comprender mejor el uso de la utilidad LDIFDE para migrar directorios.

Utilización de LDIFDE para exportar e importar objetos del directorio

El siguiente proceso paso a paso indica cómo importar y exportar unidades organizativas (OU) y cuentas de usuario de un Active Directory de Windows 2000 a otro. En el ejemplo, “Export” será el nombre del dominio desde el que se exportan objetos e “Import”, el del dominio al que se importan. LDIFDE también puede utilizarse para importar a Active Directory la mayoría de las carpetas de otros fabricantes.

Exportación de las unidades organizativas desde el dominio de origen

  1. Inicie sesión como Administrador en el dominio Export. Si inicia sesión con una cuenta sin privilegios administrativos, probablemente no consiga realizar operaciones de importación y exportación en Active Directory.
  2. Haga clic en Inicio, seleccione Programas y Accesorios y, a continuación, haga clic enSímbolo del sistema.
  3. En el símbolo del sistema, escriba:
    ldifde -f exportOu.ldf -s Servidor1 -d “dc=Export,dc=com” -p subtree -r “(objectCategory=organizationalUnit)” -l “cn,objectclass,ou”

    Al ejecutar este comando se exportan todas las OU menos los controladores de dominio en un archivo denominado ExportOU.ldf.

Exportación de las cuentas de usuario desde el dominio de origen

En el símbolo del sistema, escriba:

ldifde -f Exportuser.ldf -s Servidor1 -d “dc=Export,dc=com” -p subtree -r “(&(objectCategory=person)(objectClass=User)(givenname=*))” -l “cn,givenName,objectclass,samAccountName”

Al ejecutar este comando se exportan todos los usuarios del dominio Export a un archivo denominado Exportuser.ldf. Si no tiene todos los atributos necesarios, la operación de importación no se realizará. Los atributos objectclass y samAccountName son necesarios, si bien es posible agregar otros más. 

Nota


Las cuentas integradas, como la de Administrador, no tienen nombre dado. De manera predeterminada, el anterior filtro LDAP no exportará estas cuentas. LDIFDE no admite la exportación de contraseñas. 

Nota 


Cuando se omite el parámetro -s, LDIFDE elige un catálogo global para las exportaciones. Dependiendo de la ubicación del controlador de idioma, este servidor puede ser un controlador de dominio para un dominio diferente y las exportaciones pueden fallar. Esto se ve al examinar la salida de LDIFDE. En tal caso, indique un controlador de dominio local del dominio en el que se alojan los objetos.

Importación de las unidades organizativas de Export a Import

  1. Inicie sesión como Administrador en el dominio Import. Si inicia sesión con una cuenta sin privilegios administrativos, probablemente no consiga realizar operaciones de importación y exportación en Active Directory.
  2. Abra el archivo Exportou.ldf con el Bloc de notas.
  3. En el Bloc de notas, en el menú Edición, haga clic en Reemplazar.
  4. En el cuadro Buscar, escriba Export. En el cuadro Reemplazar por, escriba Import.
  5. Haga clic en Reemplazar todo.
  6. Compruebe que los nombres de dominio se han reemplazado y, a continuación, guarde y cierre el archivo.
  7. En el símbolo del sistema, escriba:
    ldifde -i -f ExportOU.ldf -s Servidor2

Debe aparecer un mensaje en el que se indique el número de entradas modificadas y que el comando ha terminado correctamente. 

Nota


En este caso, es necesario completar el primer paso antes del segundo de modo que las OU estén disponibles para incluir a los usuarios.

Importación de los usuarios de Export a Import

  1. Abra el archivo Exportuser.ldf con el Bloc de notas.
  2. En el Bloc de notas, abra el menú Edición y haga clic en Reemplazar. Nota Recuerde que, en este ejemplo, “Export” es el nombre del dominio desde el que se exportan objetos e “Import”, el del dominio al que se importan. Deberá reemplazar “Export” por el nombre del dominio desde donde exportó antes e “Import” por el dominio al que vaya a importar.
  3. En el cuadro Buscar, escriba Export. En el cuadro Reemplazar por, escriba Import.
  4. Haga clic en Reemplazar todo.
  5. Compruebe que los nombres de dominio se han reemplazado y, a continuación, guarde y cierre el archivo.
  6. En el símbolo del sistema, escriba:
    ldifde -i -f Exportuser.ldf -s Servidor2
  7. Vea los contactos recién creados utilizando el complemento Usuarios y equipos de Active Directory o la Libreta de direcciones de Windows.

NOTA 


Puesto que LDIFDE no exporta contraseñas, al importar los usuarios al directorio la cuenta queda deshabilitada y el valor de la contraseña se establece como nulo. Esto se hace por razones de seguridad. Asimismo, queda seleccionada la opción de cuenta “El usuario debe cambiar a la contraseña en el siguiente inicio de sesión”.

Exportación de objetos de todo un bosque

Si necesita exportar las OU, los usuarios y los grupos de todo un bosque, puede ejecutar los comandos de exportación de LDIFDE anteriores en cada dominio del bosque o, como alternativa, puede ejecutar la consulta una vez para el catálogo global (GC). Para ello, compruebe que el controlador de dominio especificado por el modificador -s es un GC y, además, especifique el puerto del GC con el modificador -t. El número de puerto del GC es 3268. 

Por ejemplo, para realizar la operación de exportación anterior en un GC, el comando de LDIFDE sería:

ldifde -f Exportuser.ldf -s Servidor1 -t 3268 -d “dc=Export,dc=com” -p subtree -r “(&(objectCategory=person)(objectClass=User)(givenname=*))” -l “cn,givenName,objectclass,sAMAccountName”

Nota


Para modificar atributos en AD es muy importante respetar el siguiente formato en el archivo de importación, especialmente en cuanto a los guiones “-” que ocupan una línea seguida de otra línea completamente en blanco. Para importar este archivo, simplemente deberá ejecutar lo siguiente: ldifde -i -f Import.ldf -s Servidor.