Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - sfmc

Страницы: [1]
1
Добрый день!
У меня вопрос по главе книги "10.2.1 Полная потеря сервера"

Там написано 

Цитировать
Где работаем: ldap-srv

Если сервер который крутит OpenLDAP сломается, то первым делом нам нужно будет найти другой или починить этот. Затем потребуется установить на него Ubuntu 14.04. Потом скопируйте на него файлы из резервной копии и выполните следующие команды:

#  apt-get install -y slapd ldap-utils krb5-kdc-ldap krb5-pkinit krb5-admin-server libnss-ldapd libpam-ldapd wamerican sudo-ldap
#  mv /etc/ldap /etc/ldap.install
#  cd / && tar zxvf /tmp/slapd.directory.20141215.tar.gz
#  update-rc.d slapd defaults
#  service slapd start
Это поможет Вам начать работать. Конечно, затем нужно будет перенастроить rsyslog. Смотрите раздел 2.3.


Мне кажется или там действительно не хватает пункта восстановления самой базы из бекапа?
такогоже как в главе "10.2.3 Повреждение данных (или человеческий фактор)"

zcat /root/backup/slapd/slapd.data.20141212.ldif.gz > /tmp/slapd.data.ldif
#  slapadd -v < /tmp/slapd.data.ldif

2
Пароль я еще не менял, по вашей же рекомендации, о бессмысленном движении дальше, пока эти запросы не отработают без ошибок и превышения лимитов.

Хочу уточнить.
Какой шанс, что при смене пароля, что-то пойдет не так что даже не поможет возвращение обратно, забекапленного файла /etc/openldap/slapd.d/cn=config/olcDatabase={0}config.ldif ?
Просто оч.стрёмно, у нас на этом авторизация пользователей завязана и черт его знает какие еще сервисы через него могут авторизироваться.

И еще, для подификации схемы, мне полюбому нужен именно этот пароль?
И если да, то по логике вещей сотрудник который правил схему, тоже должен был пользоатся именно этим паролем?

или это не считается модификацией схемы?
LDAPTLS_CACERT=/etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt ldapmodify -x -H ldaps://ldap-server01.com -D cn=admin,cn=config -W -f ./add_limits.ldif

3
Все три комманды
LDAPTLS_CACERT=/etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt ldapsearch -xLLL -H ldaps://ldap-server0X.com:636 -D cn=ldapreader,dc=hc,dc=com -w VeryXXXXXXXXX -b dc=hc,dc=com dnна всех трех серверах
выдают 1199 dn записей из LDAP базы и завершаются так
Size limit exceeded (4)

4
И снова здравствуйте!
Приношу извенения за паузу, был занят другими вопросами.

1. Если я правильно понимаю, сейчас самые актуальные данные на ldap-server01.com и не рабочая репликация.
То если бы она заработала, какой шанс, что сервер ldap-server01.com подтянет данные из ldap-server02.com и
тем самым затрет данные, которые добавлялись в базу при не рабочей репликации?
Вообще не сильно понимаю как они не затерают друг друга...

2. что делает эта команда ?
LDAPTLS_CACERT=/etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt ldapsearch -xLLL -H ldaps://ldap-server02.com:636 -D cn=ldapreader,dc=hc,dc=com -w VeryXXXXXXXXX -b dc=hc,dc=com dn
Она должна также выполниться и на любом компьютере, лишь бы были наместе сертификаты и стояли openldap-utils?

3. По поводу наведения порядка в настройках каталога в целом и репликации в частности, руководство оставляет выбор за мной. А я еще сам не особо понимаю, что для нас лучше.

5
Декодировал директиву olcSyncrepl третьего сервера из base64 в обычный текс и переслал вам конфиг в личку
вместе с содержимым файлов "/etc/openldap/slapd.d/cn=config.ldif" c трёх серверов.


А для записи "cn=admin,cn=config" есть какой-то отдельный пароль который никак нельзя сбросить?

6
Отправил в личку содержимое файлов (с трёх серверов):
/etc/openldap/slapd.d/cn=config/olcDatabase={0}config.ldif
/etc/openldap/slapd.d/cn=config/olcDatabase={1}hdb.ldif
/etc/openldap/slapd.d/cn=config/olcDatabase={1}hdb/olcOverlay={2}syncprov.ldif   <-- на третьем сервере индекс {4}

Зачем используется multimaster-репликация, я чесно говоря не знаю, когда я пришел так уже было и мне никто ничего не рассказывал :(
Все три сервера находятся физически в разным местах, я думаю таким образом организован фейловер.
Мне сказали, что сервера реплицируются как-то по кругу, правда я не знаю как это и полезная ли это инфа.

Бывший сотрудник действительно добавлял в схему ppolicy но, говорит, что она нигде не используется.
Может добавлял что-то еще, єто не известно.
Также неизвестно на каком из серверов он это делал.

phpldapadmin смотрит на ldap-server01 и там есть запись cn=ppolicy,dc=hc,dc=com



7
Действительно, поправил конфиг: /etc/nslcd.confПерезапустил сервис nslcd
и HOST_A начал смотреть на первый сервер.

Непосредственно на серверах, выполнил команду:
ldapsearch -LLL -H ldapi:/// -Y EXTERNAL -b cn=config dn
Вот вывод:
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
No such object (32)

Потом, выполнил на трёх серверах команду: ls -lR /etc/openldap/slapd.d/cn\=config
ldap-server01.com:
/etc/openldap/slapd.d/cn=config:
total 68
-rw------- 1 ldap ldap   538 вер 24 15:44 cn=module{0}.ldif
drwxr-x--- 2 ldap ldap   328 вер 22 15:58 cn=schema
-rw------- 1 ldap ldap 47357 чер  1  2018 cn=schema.ldif
-rw------- 1 ldap ldap   658 чер  1  2018 olcDatabase={0}config.ldif
-rw------- 1 ldap ldap  1213 чер  1  2018 olcDatabase={-1}frontend.ldif
drwxr-x--- 2 ldap ldap   143 вер 24 16:26 olcDatabase={1}hdb
-rw------- 1 ldap ldap  3313 чер  1  2018 olcDatabase={1}hdb.ldif
-rw------- 1 ldap ldap   632 чер  1  2018 olcDatabase={2}monitor.ldif

/etc/openldap/slapd.d/cn=config/cn=schema:
total 84
-rw------- 1 ldap ldap 15546 чер  1  2018 cn={0}core.ldif
-rw------- 1 ldap ldap   921 чер  1  2018 cn={10}ldapns.ldif
-rw------- 1 ldap ldap  1464 вер 22 15:58 cn={11}ldapprofile.ldif
-rw------- 1 ldap ldap 11363 чер  1  2018 cn={1}cosine.ldif
-rw------- 1 ldap ldap  2857 чер  1  2018 cn={2}inetorgperson.ldif
-rw------- 1 ldap ldap  6495 чер  1  2018 cn={3}nis.ldif
-rw------- 1 ldap ldap  1519 чер  1  2018 cn={4}misc.ldif
-rw------- 1 ldap ldap  2633 чер  1  2018 cn={5}sudo.ldif
-rw------- 1 ldap ldap   761 чер  1  2018 cn={6}openssh-lpk-openldap.ldif
-rw------- 1 ldap ldap 15210 чер  1  2018 cn={7}samba.ldif
-rw------- 1 ldap ldap  3883 чер  1  2018 cn={8}ppolicy.ldif
-rw------- 1 ldap ldap  2188 чер  1  2018 cn={9}extension.ldif

/etc/openldap/slapd.d/cn=config/olcDatabase={1}hdb:
total 16
-rw------- 1 ldap ldap 481 чер  1  2018 olcOverlay={0}memberof.ldif
-rw------- 1 ldap ldap 477 чер  1  2018 olcOverlay={1}refint.ldif
-rw------- 1 ldap ldap 483 чер  1  2018 olcOverlay={2}syncprov.ldif
-rw------- 1 ldap ldap 523 вер 24 16:26 olcOverlay={3}ppolicy.ldif

ldap-server02.com:
/etc/openldap/slapd.d/cn=config:
total 76
-rw------- 1 ldap ldap   512 чер 11  2018 cn=module{0}.ldif
drwxr-x--- 2 ldap ldap  4096 кві 29  2016 cn=schema
-rw------- 1 ldap ldap 47357 чер 11  2018 cn=schema.ldif
-rw------- 1 ldap ldap   658 чер 11  2018 olcDatabase={0}config.ldif
-rw------- 1 ldap ldap  1213 чер 11  2018 olcDatabase={-1}frontend.ldif
drwxr-x--- 2 ldap ldap  4096 тра  3  2016 olcDatabase={1}hdb
-rw------- 1 ldap ldap  3313 кві  3  2019 olcDatabase={1}hdb.ldif
-rw------- 1 ldap ldap   632 чер 11  2018 olcDatabase={2}monitor.ldif

/etc/openldap/slapd.d/cn=config/cn=schema:
total 80
-rw------- 1 ldap ldap 15546 чер 11  2018 cn={0}core.ldif
-rw------- 1 ldap ldap   921 чер 11  2018 cn={10}ldapns.ldif
-rw------- 1 ldap ldap 11363 чер 11  2018 cn={1}cosine.ldif
-rw------- 1 ldap ldap  2857 чер 11  2018 cn={2}inetorgperson.ldif
-rw------- 1 ldap ldap  6495 чер 11  2018 cn={3}nis.ldif
-rw------- 1 ldap ldap  1519 чер 11  2018 cn={4}misc.ldif
-rw------- 1 ldap ldap  2633 чер 11  2018 cn={5}sudo.ldif
-rw------- 1 ldap ldap   761 чер 11  2018 cn={6}openssh-lpk-openldap.ldif
-rw------- 1 ldap ldap 15210 чер 11  2018 cn={7}samba.ldif
-rw------- 1 ldap ldap  3883 чер 11  2018 cn={8}ppolicy.ldif
-rw------- 1 ldap ldap  2188 чер 11  2018 cn={9}extension.ldif

/etc/openldap/slapd.d/cn=config/olcDatabase={1}hdb:
total 12
-rw------- 1 ldap ldap 481 чер 11  2018 olcOverlay={0}memberof.ldif
-rw------- 1 ldap ldap 483 чер 11  2018 olcOverlay={4}syncprov.ldif
-rw------- 1 ldap ldap 480 чер 11  2018 olcOverlay={6}refint.ldif

ldap-server03.com:
/etc/openldap/slapd.d/cn=config:
total 88
-rw------- 1 ldap ldap   512 тра 21  2018 cn=module{0}.ldif
drwxr-x--- 2 ldap ldap  4096 сер 22  2016 cn=schema
-rw------- 1 ldap ldap 60131 тра 21  2018 cn=schema.ldif
-rw------- 1 ldap ldap   658 тра 21  2018 olcDatabase={0}config.ldif
-rw------- 1 ldap ldap  1213 тра 21  2018 olcDatabase={-1}frontend.ldif
drwxr-x--- 2 ldap ldap  4096 тра  4  2016 olcDatabase={1}hdb
-rw------- 1 ldap ldap  3514 тра 21  2018 olcDatabase={1}hdb.ldif
-rw------- 1 ldap ldap   632 тра 21  2018 olcDatabase={2}monitor.ldif

/etc/openldap/slapd.d/cn=config/cn=schema:
total 80
-rw------- 1 ldap ldap 15546 тра 21  2018 cn={0}core.ldif
-rw------- 1 ldap ldap   921 тра 21  2018 cn={10}ldapns.ldif
-rw------- 1 ldap ldap 11363 тра 21  2018 cn={1}cosine.ldif
-rw------- 1 ldap ldap  2857 тра 21  2018 cn={2}inetorgperson.ldif
-rw------- 1 ldap ldap  6495 тра 21  2018 cn={3}nis.ldif
-rw------- 1 ldap ldap  1519 тра 21  2018 cn={4}misc.ldif
-rw------- 1 ldap ldap  2633 тра 21  2018 cn={5}sudo.ldif
-rw------- 1 ldap ldap   761 тра 21  2018 cn={6}openssh-lpk-openldap.ldif
-rw------- 1 ldap ldap 15210 тра 21  2018 cn={7}samba.ldif
-rw------- 1 ldap ldap  3883 тра 21  2018 cn={8}ppolicy.ldif
-rw------- 1 ldap ldap  2188 тра 21  2018 cn={9}extension.ldif

/etc/openldap/slapd.d/cn=config/olcDatabase={1}hdb:
total 12
-rw------- 1 ldap ldap 598 тра 21  2018 olcOverlay={0}memberof.ldif
-rw------- 1 ldap ldap 477 тра 21  2018 olcOverlay={1}refint.ldif
-rw------- 1 ldap ldap 483 тра 21  2018 olcOverlay={2}syncprov.ldif


Вот логи запуска служб slapd на втором и третьем серверах.

ldap-server02.com:
лют 21 14:31:36 ldap-server02.com systemd[1]: Starting OpenLDAP Server Daemon...
лют 21 14:31:37 ldap-server02.com runuser[20796]: pam_unix(runuser:session): session opened for user ldap by (uid=0)
...
...
...
лют 21 14:31:37 ldap-server02.com slapd[20798]: @(#) $OpenLDAP: slapd 2.4.44 (Jan 29 2019 17:42:45) $
                                                                      mockbuild@x86-01.bsys.centos.org:/builddir/build/BUILD/openldap-2.4.44/openldap-2.4.44/servers/slapd
лют 21 14:31:37 ldap-server02.com slapd[20800]: slapd starting
лют 21 14:31:37 ldap-server02.com systemd[1]: Started OpenLDAP Server Daemon.
лют 21 14:31:37 ldap-server02.com slapd[20800]: UNKNOWN attributeDescription "PWDFAILURETIME" inserted.
лют 21 14:31:37 ldap-server02.com slapd[20800]: UNKNOWN attributeDescription "PWDCHANGEDTIME" inserted.
лют 21 14:31:37 ldap-server02.com slapd[20800]: UNKNOWN attributeDescription "PWDHISTORY" inserted.
лют 21 14:35:43 ldap-vu01.huntersconsult.com slapd[20800]: conn=1018 op=1 INTERM oid=1.3.6.1.4.1.4203.1.9.1.4
...
...
...
лют 21 17:43:52 ldap-server02.com slapd[20800]: do_syncrep2: rid=101 (-1) Can't contact LDAP server
лют 21 17:43:52 ldap-server02.com slapd[20800]: do_syncrepl: rid=101 rc -1 retrying (4 retries left)

ldap-server03.com:
лют 21 17:43:52 ldap-server03.com systemd[1]: Starting OpenLDAP Server Daemon...
лют 21 17:43:52 ldap-server03.com runuser[26095]: pam_unix(runuser:session): session opened for user ldap by (uid=0)
лют 21 17:43:52 ldap-server03.com slaptest[26096]: auxpropfunc error invalid parameter supplied
лют 21 17:43:52 ldap-server03.com slaptest[26096]: _sasl_plugin_load failed on sasl_auxprop_plug_init for plugin: ldapdb
лют 21 17:43:52 ldap-server03.com slaptest[26096]: ldapdb_canonuser_plug_init() failed in sasl_canonuser_add_plugin(): invalid parameter supplied
лют 21 17:43:52 ldap-server03.com slaptest[26096]: _sasl_plugin_load failed on sasl_canonuser_init for plugin: ldapdb
лют 21 17:43:52 ldap-server03.com slapcat[26099]: auxpropfunc error invalid parameter supplied
лют 21 17:43:52 ldap-server03.com slapcat[26099]: _sasl_plugin_load failed on sasl_auxprop_plug_init for plugin: ldapdb
лют 21 17:43:52 ldap-server03.com slapcat[26099]: ldapdb_canonuser_plug_init() failed in sasl_canonuser_add_plugin(): invalid parameter supplied
лют 21 17:43:52 ldap-server03.com slapcat[26099]: _sasl_plugin_load failed on sasl_canonuser_init for plugin: ldapdb
лют 21 17:43:52 ldap-server03.com runuser[26106]: pam_unix(runuser:session): session opened for user ldap by (uid=0)
...
...
...
лют 21 17:43:52 ldap-server03.com slapd[26154]: @(#) $OpenLDAP: slapd 2.4.44 (Jan 29 2019 17:42:45) $
                                                                        mockbuild@x86-01.bsys.centos.org:/builddir/build/BUILD/openldap-2.4.44/openldap-2.4.44/servers/slapd
лют 21 17:43:52 ldap-server03.com slapd[26154]: auxpropfunc error invalid parameter supplied
лют 21 17:43:52 ldap-server03.com slapd[26154]: _sasl_plugin_load failed on sasl_auxprop_plug_init for plugin: ldapdb
лют 21 17:43:52 ldap-server03.com slapd[26154]: ldapdb_canonuser_plug_init() failed in sasl_canonuser_add_plugin(): invalid parameter supplied
лют 21 17:43:52 ldap-server03.com slapd[26154]: _sasl_plugin_load failed on sasl_canonuser_init for plugin: ldapdb
лют 21 17:43:52 ldap-server03.com slapd[26156]: slapd starting
лют 21 17:43:52 ldap-server03.com systemd[1]: Started OpenLDAP Server Daemon.
лют 21 17:43:53 ldap-server03.com slapd[26156]: UNKNOWN attributeDescription "PWDFAILURETIME" inserted.
лют 21 17:43:53 ldap-server03.com slapd[26156]: UNKNOWN attributeDescription "PWDCHANGEDTIME" inserted.
лют 21 17:43:53 ldap-server03.com slapd[26156]: UNKNOWN attributeDescription "PWDHISTORY" inserted.
лют 21 17:43:53 ldap-server03.com slapd[26156]: syncrepl_message_to_entry: rid=102 mods check (objectClass: value #8 invalid per syntax)
лют 21 17:43:53 ldap-server03.com slapd[26156]: do_syncrepl: rid=102 rc 21 retrying (4 retries left)





Узнал, что у нас система с несколькими главными серверами и для выполнения операций чтения (поиска) и/или записи (модификации) клиенты могут обращаться к любому серверу и что
бывший сотрудник модифицировал схему на одном из серверов, без остановки slapd!

8
Доброго времени суток!

На новом месте работы мне достались в наследство три LDAP  сервера.
Используюутся, они по большей части для ssh авторизации, но не только.
Я в этой технологи пока-что очень слаб, спросить неукого.
Пока что мне максимум приходилось добавлять пользователей через web-консоль phpldapadmin.
Думаю один из сервеов мастер остальные подчинённые, но это не точно (как это узнать?)
Поскольку на серверах есть каталог "/etc/openldap/slapd.d/cn\=config" - предполагаю, что я пишу в нужной ветке форума.

Недавно произошло следующее:
Добавил пользователя "new_user" через web-консоль phpldapadmin.

Дал ему права на подключение к "HOST-A", но подключится к нему он так и не смог.
'getent passwd' на "HOST-A" не показывает этого пользователя.

Дал ему права на подключение к хосту "B" - всё ок.
'getent passwd' на "HOST-B"  - пользователь виден.

на хосте "А" в конфиге "/etc/ldap/ldap.conf" есть такая строка
URI     ldaps://ldap-server01.com ldaps://ldap-server02.com ldaps://ldap-server03.com


при успешном логине на хост "A", старым пользователем "old_user", в log файле "/var/log/daemon.log"
появляются строчки:
   Feb 20 19:28:49 HOST-A nslcd[1521]: [8c3f32] <authc="old_user"> username changed from "old_user" to "vova.pukin"
   Feb 20 19:28:52 HOST-A nslcd[1521]: [8c3f32] <authc="old_user"> connected to LDAP server ldaps://ldap-server02.com

из чего я сделал вывод что "HOST-A" стучится на второй сервер dap-server02.com (как можно оперативно, без перезагрузок, заставить "HOST-A" стучаться например на ldap-server01.com?)

при момощи утилиты ldapsearch я получил список пользователей от всех серверов:

LDAPTLS_REQCERT=allow ldapsearch -LLLD uid=vova.pupkin,ou=people,dc=hc,dc=com -w 'veryhardpassword' -b 'dc=hc,dc=com' -H 'ldaps://ldap-server01.com/' '(&(objectClass=posixAccount))' 'uid'

LDAPTLS_REQCERT=allow ldapsearch -LLLD uid=vova.pupkin,ou=people,dc=hc,dc=com -w 'veryhardpassword' -b 'dc=hc,dc=com' -H 'ldaps://ldap-server02.com/' '(&(objectClass=posixAccount))' 'uid'

LDAPTLS_REQCERT=allow ldapsearch -LLLD uid=vova.pupkin,ou=people,dc=hc,dc=com -w 'veryhardpassword' -b 'dc=hc,dc=com' -H 'ldaps://ldap-server03.com/' '(&(objectClass=posixAccount))' 'uid'


пользователь "new_user" был получен только от сервера ldap-server01.com.

на серверах ldap-server02.com и ldap-server03.com, в "journalctl -u slapd" пристуствуют такие строки:

  лют 20 16:52:33 ldap-server03.com slapd[953]: <= bdb_substring_candidates: (sudoUser) not indexed

  лют 19 05:47:27 ldap-server02.com slapd[3444]: <= bdb_substring_candidates: (sudoUser) not indexed
  лют 19 05:47:28 ldap-server02.com slapd[3444]: <= bdb_inequality_candidates: (modifyTimestamp) not indexed
  лют 19 05:47:28 ldap-server02.com slapd[3444]: <= bdb_inequality_candidates: (modifyTimestamp) not indexed

прадва я не уверен, что проблема в этом.

Из этого всего я сделал вывод, что что-то не так с репликацией.
Хотелось бы првильно это все разрулить НЕ сломав совсем!!!

Пожалуйста, поделитесь опытом, помогите разрешить сложившуюся ситуацию.

Страницы: [1]