Haveged (Русский)

From ArchWiki
Jump to navigation Jump to search
Состояние перевода: На этой странице представлен перевод статьи Haveged. Дата последней синхронизации: 6 декабря 2018. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

haveged — проект, разрабатывающий простой в использовании и непредсказуемый генератор случайных чисел, основанный на алгоритме HAVEGE. Haveged был создан для предотвращения низкого уровня энтропии в устройстве Linux для генерации случайных чисел, что может случиться под некоторыми рабочими нагрузками, особенно на headless-серверах.

Важно: Качество сгенерированной энтропии не гарантируется и иногда оспаривается (см. LCE: Do not play dice with random numbers и Is it appropriate to use haveged as a source of entropy on virtual machines?). Используйте haveged на свой риск или используйте его в паре с аппаратным генератором случайных чисел с помощью rng-tools (см. секцию #Альтернативы)

Установка

Установите пакет haveged.

Запустите и включите службу haveged.service.

Просмотр доступной энтропии

Если вы не уверены, нужен ли вам haveged, запустите следующую команду:

# cat /proc/sys/kernel/random/entropy_avail

Эта команда покажет количество собранной на сервере энтропии. Если её довольно мало (<1000), то, вероятно, стоит установить haveged. Иначе криптографические приложения не будут работать до тех пор, пока не появится достаточно энтропии. К примеру, может снизится скорость беспроводного соединения в случае, если сервер используется в качестве программной точки доступа.

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

Альтернативы

Если у вас нет определённой причины не доверять каким-либо аппаратным генераторам случайных чисел в вашей системе, вы должны сначала попробовать использовать их с rng-tools и если этого окажется недостаточно (или у вас нет доступного аппаратного генератора случайных чисел), тогда используйте haveged.

Виртуальные машины

Как обсуждалось в Is it appropriate to use haveged as a source of entropy on virtual machines?, качество энтропии, генерируемой haveged, может быть спорным в виртуальной среде. Haveged полагается на инструкцию rdtsc, которая может быть виртуализирована, из-за чего понизится уровень энтропии. В некоторых гипервизорах есть возможность отключить виртуализацию rdtsc, что, в теории, позволит haveged более качественно генерировать энтропию.

Чтобы отключить виртуализацию инструкции rdtsc в VMware ESXi, добавьте параметр monitor_control.virtual_rdtsc = "FALSE" в конфигурационный файл .vmx виртуальной машины. VMware рекомендует использовать данный параметр в случаях измерений, для которых требуется надёжный источник реального времени в виртуальной машине. [1]

Смотрите также