Bug 4820 - Неполное копирование /etc/openldap в chroot-jail
: Неполное копирование /etc/openldap в chroot-jail
Status: CLOSED FIXED
: Sisyphus
(All bugs in Sisyphus/openldap-servers)
: unstable
: all Linux
: P2 blocker
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2004-07-17 08:37 by
Modified: 2007-01-07 07:24 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2004-07-17 08:37:22
1. Скрипт /etc/chroot.d/ldap.conf не обращает внимания на файлы, добавляемые в
slapd.conf с помощью директивы include. Быстрый хак:

for f in `cat /etc/openldap/slapd.conf |grep -E '^include'|grep -v
\/schema\/'|sed -r -e 's/^include\s+\/etc\/openldap\///g'`; do
        Copy -m640 -oldap -gldap $force "/etc/openldap/$f" "etc/$f"
done

Хак не сработает, если включаемый файл расположен в подкаталоге каталога
/etc/openldap.

2. При копировании фалов .schema в chroot, скрипт /etc/chroot.d/ldap.conf
не отбабатавет ситуацию с наличием подкаталогов в каталоге
/etc/openldap/schema.
------- Comment #1 From 2004-11-26 14:32:11 -------
Так как в chroot-functions у функции Copy нет опции -r и ldv не будет ее
реализовывать
есть несколько вариантов на каком остановится пока не рещил:
1) (Идея migor-at-altlinux.ru) tar'им все директорию /etc/schemas/* и потом все
распаковываем в chroot-dir
2) парсим файл и создаем сами поддиректории и копируем файлы

пока думаю над последним, так как он не требует места для создания архива.
------- Comment #2 From 2004-11-28 05:44:36 -------
(In reply to comment #1)
В принципе, простейший вариант - tar через pipe. Что-то типа:
cd /etc/openldap; tar -cv * | tar -xv -C /var/lib/ldap/etc/openldap
Дополнительного места на диске он не требует.

Более сложный (и наверное, более правильный) - анализ конфига, разбор
всех параметров, ссылающихся на файлы или каталоги и копирование соответствующих
файлов/каталогов в chroot.

Помимо содержимого /etc/openldap иногда еще требуется сертификаты взять из
/var/lib/ssl/certs, например ...
------- Comment #3 From 2004-11-28 13:17:22 -------
Я думаю, чтобы обеспечить работоспособность системы мы для начала используем
вариант:
"В принципе, простейший вариант - tar через pipe. Что-то типа:
cd /etc/openldap; tar -cv * | tar -xv -C /var/lib/ldap/etc/openldap
Дополнительного места на диске он не требует."

Это нам даст время на организацю механизма просмотра и анлиза лога.
------- Comment #4 From 2004-12-07 13:12:14 -------
Временное решение применено в 2.2.19-alt1 пробуйте тестируйте, но это решение
требует пересмотра!
------- Comment #5 From 2007-01-07 07:22:37 -------
Reopen for change resolution.
------- Comment #6 From 2007-01-07 07:23:58 -------
Old bug. Fixed in openldap-2.3.x packages.