Как Вы устанавливаете хэш пароля для OpenLDAP?

Я поддержал файловые серверы приблизительно с 7 ТБ данных обычного пользователя. То, что 7 ТБ были созданы главным образом файлов типа станции, таким образом, мы говорим миллионы. У меня нет точного числа, потому что оно занимает много времени для получения, но где-нибудь между 7-12 миллионами файлов в различных файловых системах на нашем отказоустойчивом кластере Сервера 2008 года.

Мы никогда не выполняем chkdsk кроме решить проблемы, и мы никогда не дефрагментируемся.

NTFS теперь самовосстанавливается достаточно, что мы сталкиваемся с проблемами очень, очень редко. Когда мы действительно входим в проблемы, это происходит обычно из-за отказа в инфраструктуре системы хранения в некотором роде; спонтанная перезагрузка контроллера массива Fibre Channel, паника-и-перезагрузка переключателя FC, такая вещь. Дергание питания из задней части сервера чрезвычайно surviveable.

На самом деле мы недавно пережили катастрофический отказ UPS. Вся комната отбрасывается трудно, одновременно. NTFS, восстановленный ни с капли взгляда и никакой потребности выполнить chkdsk.

О дефрагментации... наш дисковый массив FC имеет 48 дисков в нем, и поскольку это - HP EVA, дорожки случайным образом распределяются через шпиндели. Это означает, что даже в основном последовательные доступы на самом деле случайны, что касается дисков, который дальнейший означает, что значительно последовательная файловая система работает минимально лучше, чем значительно фрагментированная. Поэтому стандартные дефрагментации делают очень мало для помощи для большого количества ввода-вывода наверху.

Что касается профилактического обслуживания, NTFS теперь автоматизирован достаточно, чтобы сделать почти все это отдельно. Время от времени я выполню chkdsk в режиме только для чтения, чтобы видеть, если выполнение его в полном режиме стоит того. До сих пор на нашем кластере это должно все же быть необходимо. Даже на наших 2 ТБ, 4 миллиона LUN файла это работает меньше чем через день.


Тем не менее существуют некоторые архитектурные решения, которые можно принять, который может помочь уменьшить возможную потребность в офлайновом chkdsk и заставить ее пойти быстрее, если когда-нибудь необходимо делать тот:

  • Установите политику кэша в отношении своих контроллеров RAID/SAN для не кэширования записей. Однако это - то, почему кэш с аварийным батарейным питанием существует, таким образом, производительность совершила нападки, это вызовет, не должен быть взят. Но это - главная вещь сделать для предотвращения офлайнового chkdsk.
  • Сохраните свои LUN меньшими. Количество файла имеет значение больше, чем размер. LUN на 6 ТБ, полный Фантомных изображений, проверит намного быстрее, чем LUN на 512 ГБ, полный файлов 6 КБ.
  • Поддержите соответствующее свободное пространство. Хорошее эмпирическое правило на основе совершенно субъективных критериев является на не менее чем 15% бесплатным в любое время.
  • Если Ваши данные позволяют, используйте размер блока, больше, чем размер блока 4 КБ по умолчанию для NTFS. После выполнения некоторой статистики по моим файлам я нашел, что могу использовать блоки 16 КБ для большинства своих файловых систем. Большие блоки означают меньше блоков проверять, и также позволять подсистеме внешней памяти пользоваться лучшим премуществом считанных вперед. Да, itty крошечные файлы занимают больше места, но на наших объемах оно только добавило приблизительно 4% к общему размеру.
5
задан 9 March 2014 в 02:24
1 ответ

Хорошо. Я понял это с помощью IRC и чтения man-страницы.

Предполагая, что вы не хотите ничего воссоздавать, кроме добавления хэша пароля в существующий бэкэнд LDAP, и вы используете Ubuntu (это проверено только на машине Ubuntu, но метод должен быть независимым от ОС):

Мы будем использовать ldapmodify для добавления, изменения и удаления записей.

Шаг 1. Создайте test.conf

Мы создадим файл называется test.conf и добавляет следующее:

dn: olcDatabase={-1}frontend,cn=config
add: olcPasswordHash
olcPasswordHash: {CRYPT}

dn отличается, если у вас другая база данных. Я начал, ничего не зная, где разместить, поэтому я смоделировал:

sudo su            # do this as root
cd /etc/ldap/
mkdir test.d
slaptest -f test.conf -F test.d

Последняя команда конвертирует существующий test.conf (мое имя для знаменитого старого slapd.conf ) в файл новый формат cn = config .

Если вы дерево каталог test.d и прочитаете каждый из файлов ldif, вы найдете именно тот файл, который хотите изменить. В моем случае (возможно, для всех пользователей Ubunut) это будет olcDatabase = {- 1} frontend.ldif .

Другое дело cn = config . Это связано с тем, что файл ldif существует в каталоге cn = config .

Это хороший способ узнать, где должен принадлежать атрибут.

Шаг 2: Запустите ldapmodify

root@test32giab:/etc/ldap# ldapmodify -Y EXTERNAL -H ldapi:/// -f test.conf

SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
modifying entry "olcDatabase={-1}frontend,cn=config"

Если теперь вы проверите файл ldif, он должен иметь атрибут olcPasswordHash .

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

dn: cn=config
add: olcPasswordCryptSaltFormat
olcPasswordCryptSaltFormat: $5$rounds=8000$%.16s

Запустите это с помощью той же команды ldapmodify . Теперь учетная запись LDAP будет хешироваться с использованием SHA-256 ( $ 6 $ - это SHA-512) плюс 16-символьная длинная соль и хэшируется 8000 раз.

Запись dn - ] cn = config , потому что это значение (на основе моего моделирования с использованием шага 1) находится в файле cn = config.ldif .

Чтобы узнать о формате, проверьте http: / /www.openldap.org/lists/openldap-technical/201305/msg00002.html

Если вы экспериментируете с другим форматом, вы можете попробовать использовать метод replace . Итак, файл будет выглядеть так.

dn: cn=config
replace: olcPasswordCryptSaltFormat
olcPasswordCryptSaltFormat: $5$%.16s

Теперь я удалил 8000 временных итераций. Я думаю, что по умолчанию SHA5-256-CRYPT хешируется 5000 раз.

Вы можете узнать больше об этом, выполнив man ldapmodify и прокрутив страницу вниз до нижней части страницы руководства.

Теперь учетная запись LDAP будет хешироваться с использованием SHA-256 ( $ 6 $ - SHA-512) плюс 16-символьная длинная соль и хэшируется 8000 раз.

Запись dn - ] cn = config , потому что это значение (на основе моего моделирования с использованием шага 1) находится в файле cn = config.ldif .

Чтобы узнать о формате, проверьте http: / /www.openldap.org/lists/openldap-technical/201305/msg00002.html

Если вы экспериментируете с другим форматом, вы можете попробовать использовать метод replace . Итак, файл будет выглядеть так.

dn: cn=config
replace: olcPasswordCryptSaltFormat
olcPasswordCryptSaltFormat: $5$%.16s

Теперь я удалил 8000 временных итераций. Я думаю, что по умолчанию SHA5-256-CRYPT хешируется 5000 раз.

Вы можете узнать больше об этом, выполнив man ldapmodify и прокрутив страницу вниз до нижней части страницы руководства.

Теперь учетная запись LDAP будет хешироваться с использованием SHA-256 ( $ 6 $ - SHA-512) плюс 16-символьная длинная соль и хэшируется 8000 раз.

Запись dn - ] cn = config , потому что это значение (на основе моего моделирования с использованием шага 1) находится в файле cn = config.ldif .

Чтобы узнать о формате, проверьте http: / /www.openldap.org/lists/openldap-technical/201305/msg00002.html

Если вы экспериментируете с другим форматом, вы можете попробовать использовать метод replace . Итак, файл будет выглядеть так.

dn: cn=config
replace: olcPasswordCryptSaltFormat
olcPasswordCryptSaltFormat: $5$%.16s

Теперь я удалил 8000 временных итераций. Я думаю, что по умолчанию SHA5-256-CRYPT хешируется 5000 раз.

Вы можете узнать больше об этом, выполнив man ldapmodify и прокрутив страницу вниз до нижней части страницы руководства.

Запись dn - cn = config , потому что это значение (на основе моего моделирования с использованием шага 1) находится в файле cn = config.ldif .

Чтобы узнать о формате, проверьте http://www.openldap.org/lists/openldap-technical/201305/msg00002.html

Если вы экспериментируете с другим форматом, вы можете попробовать использовать ] заменить метод . Итак, файл будет выглядеть так.

dn: cn=config
replace: olcPasswordCryptSaltFormat
olcPasswordCryptSaltFormat: $5$%.16s

Теперь я удалил 8000 временных итераций. Я думаю, что по умолчанию SHA5-256-CRYPT хешируется 5000 раз.

Вы можете узнать больше об этом, выполнив man ldapmodify и прокрутив страницу вниз до нижней части страницы руководства.

Запись dn - cn = config , потому что это значение (на основе моего моделирования с использованием шага 1) находится в файле cn = config.ldif .

Чтобы узнать о формате, проверьте http://www.openldap.org/lists/openldap-technical/201305/msg00002.html

Если вы экспериментируете с другим форматом, вы можете попробовать использовать ] заменить метод . Итак, файл будет выглядеть так.

dn: cn=config
replace: olcPasswordCryptSaltFormat
olcPasswordCryptSaltFormat: $5$%.16s

Теперь я удалил 8000 временных итераций. Я думаю, что по умолчанию SHA5-256-CRYPT хешируется 5000 раз.

Вы можете узнать больше об этом, выполнив man ldapmodify и прокрутив страницу вниз до нижней части страницы руководства.

org / lists / openldap-Technical / 201305 / msg00002.html

Если вы экспериментируете с другим форматом, вы можете попробовать использовать метод replace . Итак, файл будет выглядеть так.

dn: cn=config
replace: olcPasswordCryptSaltFormat
olcPasswordCryptSaltFormat: $5$%.16s

Теперь я удалил 8000 временных итераций. Я думаю, что по умолчанию SHA5-256-CRYPT хешируется 5000 раз.

Вы можете узнать больше об этом, выполнив man ldapmodify и прокрутив страницу вниз до нижней части страницы руководства.

org / lists / openldap-Technical / 201305 / msg00002.html

Если вы экспериментируете с другим форматом, вы можете попробовать использовать метод replace . Итак, файл будет выглядеть так.

dn: cn=config
replace: olcPasswordCryptSaltFormat
olcPasswordCryptSaltFormat: $5$%.16s

Теперь я удалил 8000 временных итераций. Я думаю, что по умолчанию SHA5-256-CRYPT хешируется 5000 раз.

Вы можете узнать больше об этом, выполнив man ldapmodify и прокрутив страницу вниз до нижней части страницы руководства.

8
ответ дан 3 December 2019 в 01:18

Теги

Похожие вопросы