Общие параметры команды Ldifde
-i Включение режима импорта (по умолчанию включен экспорт)
-f filename Имя входного или выходного файла
-s servername Сервер для привязки
-c FromDN ToDN Замена вхождений FromDN на ToDN
-v Включение режима подробной информации
-j Расположение файла журнала
-t Номер порта (по умолчанию = 389)
-? Справка
Параметры экспорта
-d RootDN Корень поиска LDAP (по умолчанию — контекст именования)
-r Filter Фильтр поиска LDAP (по умолчанию — «(objectClass=*)»)
-p SearchScope Область поиска (Base/OneLevel/Subtree)
-l list Список атрибутов (разделитель — запятая), для которых выполняется
поиск LDAP
-o list Список пропускаемых атрибутов (разделитель — запятая)
-g Отключение страничного поиска
-m Включение логики SAM при экспорте
-n Не экспортировать двоичные значения
Импорт
-k Продолжать импорт, пропуская ошибки «Нарушение ограничения» и «Объект
уже существует»
Задание учетных данных
-a Выполнить команду, используя указанные различающееся имя
и пароль пользователя. Например: «cn=yourname,dc=yourcompany,dc-com
password»
-b Выполнить команду, используя синтаксис «имя_пользователя домен пароль». По умолчанию команда
выполняется с использованием учетных данных пользователя, который в настоящее время зарегистрирован в системе.
Общий синтаксис имеет вид:
ldifde [-i] [-f имя_файла] [-s имя_сервера] [-c строка1 строка2] [-v] [-j путь] [-t номер_порта] [-d различающееся_имя_базы] [-r фильтр_LDAP] [-p область] [-l список_атрибутов_LDAP] [-o список_атрибутов_LDAP] [-g] [-m] [-n] [-k] [-a различающееся_имя_пользователя пароль] [-b имя_пользователя домен пароль] [-?]
Предлагаю работу Ldifde разобрать на примерах:
Запускаем командную строку «Пуск- Выполнить» вводим CMD нажимаем «Enter», вводим команду
ldifde -f С:/exportOu.ldf -s сервер AD -d "dc=Export,dc=com" -p subtree -r "(objectCategory=organizationalUnit)" -l "cn,objectclass,ou"
При выполнении этой команды все подразделения за исключением контроллеров домена будут экспортированы в файл ExportOU.ldf на диске С. Меняем расширение у файла ExportOU.ldf на txt, открываем с помощью блокнота файл - видим полученный результат.
Значительно интересней, я думаю, будет информация полученная о пользователях какого либо подразделения или всего AD (экспорт из AD). Для этого выполним следующую команду: (этот пример выполняется для домена test.ru, подразделения Users)
ldifde -f C:/Users.ldf -d "ou=Users,dc=test ,dc=ru" -r "(&(objectCategory=person) (objectClass=User))" –l"cn,sn,userPrincipalName,givenName,objectclass,samAccountName,displayname,department"
напомню, –l Список атрибутов (разделитель — запятая), для которых выполняется поиск LDAP
dn: уникальное имя
dc: доменное имя
ou: organizational unit
cn: common name
userPrincipalName: доменная учетная запись
givenName: поле Имя в AD
objectclass: класс в AD
В результате этой команды в корне диска С будет создан файл Users.ldf, что бы была возможность посмотреть содержимое этого файла, необходимо поменять расширение на csv. Открываем файл с помощью Excel, в данном примере результат выглядит вот так:
dn: CN=Ivan Ivanov,OU=Users,DC=test,DC=ru
changetype: add
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: user
cn: Ivan Ivanov
sn: Ivanov
displayName: Ivan Ivanov
sAMAccountName: ivanovi
userPrincipalName: Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.
Если вы хотите учетные данные этого пользователя перенести в другой домен, для этого меняем поле dn: CN=Ivan Ivanov,OU=Users,DC=test,DC=ru и userPrincipalName: Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. для соответствующего домена, например если переносим пользователя в домен domen.com, то прописываем в этих полях CN=Ivan Ivanov,OU=Users,DC=domen,DC=com и и userPrincipalName: Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.. Если таких пользователей не один, а несколько десятков или сотен, тогда лучше открыть файл в Excel и с помощью функции замены, поменять необходимые строки. Для этого выделяем первый столбец и нажимаем «Найти и выделить- Заменить » и прописываем, что на что необходимо заменить.
Для того чтобы импортировать в AD содержимое файла Users.ldf выполняем следующую команду
ldifde -i -f C:/Users.ldf –k
При модификации или удалении существующих объектов синтаксис команды LDIFDE не меняется; вместо этого изменяется содержимое файла LDF. Для изменения поля описания учетных записей пользователей создайте текстовый файл, именуемый Users.ldf,
dn: CN=Ivan Ivanov,OU=Users,DC=test,DC=ru
changetype: modify
cn: Ivan Ivanov
sn: Ivanov
displayName: Ivan Ivanov
sAMAccountName: ivanovivan
userPrincipalName: Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.
Тем самым мы поменяем учетную запись с ivanovi на ivanovivan.
Для того, что бы удалить пользователя из AD, необходимо в файле прописать:
dn: CN=Ivan Ivanov,OU=Users,DC=test,DC=ru
changetype: delete
По моему мнению, использовать утилиту Ldifde удобно при переносе большого количества пользователей из одного домена в другой, либо внести изменения в подразделении с большим количеством пользователей.
Я очень надеюсь, моя статья помогла Вам! Просьба поделиться ссылкой с друзьями:
Комментарии
ldifde -f Exportuser.ldf -d "dc=contoso,dc= com" -p subtree -r "(&(objectCateg ory=person)(obj ectClass=User)) " -l "memberof,homeD irectory,homeDr ive,profilePath "
если меня интересуют еще сведения из AD об локальных дисках подключенных к каждой учетной записи, как их можно экспортировать?
Так то они отсутствуют, а чтобы не прописывать к каждой учетной записи по новой, хотелось бы понять как это сделать
dn:: Q0490J3QuNC60L7Qu9Cw0Lkg0JfQvtGC0L7QsixPVT1EZWFsZXJzLERDPWRlYWxlcixEQz1sb2NhbA==
changetype: add
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: user
cn:: 0J3QuNC60L7Qu9Cw0Lkg0JfQvtGC0L7Qsg==
sn:: 0JfQvtGC0L7Qsg==
givenName:: 0J3QuNC60L7Qu9Cw0Lk=
displayName:: 0J3QuNC60L7Qu9Cw0Lkg0JfQvtGC0L7Qsg==
sAMAccountName: nikki
userPrincipalName: nikki@admin.local
dn: CN=Logist,OU=Dealers,DC=admin,DC=local
changetype: add
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: user
cn: Logist
givenName: Logist
displayName: Logist
sAMAccountName: Logist
userPrincipalName: Logist@admin.local