#ldap #openldap #ldif #slapd
#ldap #openldap #ldif #slapd
Вопрос:
Я новичок, когда дело доходит до ldap, и мне интересно, может ли кто-нибудь мне помочь.
Я просматривал учебное пособие (и оно работает), но, похоже, они делают что-то, что не кажется правильным способом сделать это, и я не понимаю синтаксис того, как сделать это другим правильным способом.
То есть: редактирование файла вручную: /usr/local/etc/slapd.d/cn=config/’olcDatabase={0}config.ldif’
И добавление в конец файла:
olcRootDN: cn=admin,cn=config
olcRootPW: S0m3H@sH
Содержимое 'olcDatabase={0}config.ldif'
файла (я хэшировал кучу вещей, поэтому игнорируйте «x»):
# AUTO-GENERATED FILE - DO NOT EDIT!! Use ldapmodify.
# CRC32 1cxxxxdc
dn: olcDatabase={0}config
objectClass: olcDatabaseConfig
olcDatabase: {0}config
olcAccess: {0}to * by dn.base="gidNumber=0 uidNumber=0,cn=peercred,cn=extern
al,cn=auth" manage by * none
structuralObjectClass: olcDatabaseConfig
entryUUID: 241xxcxx-9xxx-xxx5-xxxe-xxxxxxxfxx2
creatorsName: cn=config
createTimestamp: 2020xxxxxxx2xx
entryCSN: 20201110xxxx8.7xxxxZ#000000#000#000000
modifiersName: cn=config
modifyTimestamp: 202xxxxxxxxx
Теперь, когда заголовок файла гласит: «АВТОМАТИЧЕСКИ СГЕНЕРИРОВАННЫЙ ФАЙЛ — НЕ РЕДАКТИРОВАТЬ!! Используйте ldapmodify», поэтому я пытаюсь использовать ldapmodify для обновления файла и добавления необходимых мне параметров… Я знаю, как запустить ldapmodify, но понятия не имею, как я буду генерировать / создавать ldif для внесения изменений.
Я запускаю ldapmodify что-то вроде:
/usr/bin/ldapmodify -a -x -D "cn=Manager,dc=xxxxxx,dc=xxxxx,dc=xxx,dc=xx" -w "xxxxxxx" -f /etc/openldap/schema/update_rootdnpw.ldif
Нужна помощь в создании этого файла update_rootdnpw.ldif, пожалуйста.
Большое спасибо!
Комментарии:
1. Вы правы, они не должны этого делать. LDIF имеет синтаксис для добавления / удаления / замены атрибутов.
2. Хорошо знаю об этом, но мне нужна помощь в написании указанного ldif (не из-за отсутствия попыток, но я пропускаю одну ошибку, получаю другую, а затем нужно вернуться назад, чтобы исправить ее)…
3. Одна ошибка, например, какая? С каким синтаксисом LDIF? Здесь вам нужно задать идентифицируемый вопрос.
Ответ №1:
Наконец-то понял:
dn: olcDatabase={0}config,cn=config
changetype: modify
add: olcRootDN
olcRootDN: cn=admin,cn=config
dn: olcDatabase={0}config,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}<pass-hash>
И выполнить с помощью:
ldapmodify -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/update_rootdnpw.ldif