Низкая энтропия на CentOS 5 после нового монтирования

Недавно я смонтировал новый раздел и переместил /home и /var/lib/mysql на новый диск и сделал символическую ссылку на них.

Теперь я заметил, что энтропия (с использованием мунина) снизилась с 3000 до 100-200. Может ли монтирование и перемещение данных вызывать это?

Я использую это как веб-сервер apache для размещения сайта, на котором работают публичные пользователи, и я также заметил увеличение нагрузки (может ли это быть из-за низкой энтропии?)

Если это большая проблема, я хотел бы найти способ решить проблему низкой энтропии.

Я читал, что я могу добавить энтропию, используя rng-tools и переключаясь на использование urandom. Люди говорят, что это не очень хороший подход для систем безопасности. Но хорошо ли это для веб-приложения? Насколько менее безопасным это сделало бы мое веб-приложение (мы используем шифрование (хеширование) для таких вещей, как пароли и ссылки подтверждения и т. Д., Но я не уверен, насколько это относится к "заботящимся о безопасности")

Есть идеи?

Я использую облачный экземпляр CentOS 5 (виртуальная машина).

2 ответа

Решение

Я бы сказал, что если вы не беспокоитесь о решительном и искушенном злоумышленнике с большим количеством ресурсов, которые могут скомпрометировать ваш сайт, нарушив псевдослучайный алгоритм, используемый в ядре Linux, urandom, вероятно, будет в порядке.

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

Я также не уверен, почему вы считаете 100-200 небольшую сумму. Я бы посчитал, что 0-10 будет маленьким, но имейте в виду, что максимальный размер пула (/proc/sys/kernel/random/poolize) может составлять всего 4096. Если вы не достигли 0, то доля от время, вы, вероятно, не используете его слишком быстро (возможно, вы уже используете urandom, не зная об этом). Насколько я знаю, чтение из /dev/random не будет блокироваться, пока пул энтропии не станет равным 0.

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

Используя rng-tools, вы можете кормить / dev / random энтропией из / dev / urandom, используя:

rngd -r /dev/urandom -o /dev/random -f -t 1 

(заменить -f с -b демонизировать; Centos не имеет init-скрипта для rngd, но вы должны достаточно легко изменить существующий.)

(Объяснение заключается в том, что /dev/random (истинно случайный) блокирует, тогда как /dev/urandom (псевдослучайный) нет - увеличение энтропии / dev / random может оказать влияние на производительность, если вы часто очень низки в энтропии.)

Вы можете проверить влияние на вашу энтропию с помощью:

cat /proc/sys/kernel/random/entropy_avail

Если вас беспокоит "качество" PRNG, вы можете проверить его энтропию, используя:

cat /dev/urandom | rngtest -c 1000

Поскольку вы используете виртуальный сервер, энтропия зачастую затрудняет поиск (без мыши / клавиатуры, звуковой / видеокарты и т. Д.). Если вас беспокоит качество энтропии из / dev / urandom, вы можете попробовать этот демон энтропии таймера, который использует неточности во время сна для генерации энтропии.

Другие вопросы по тегам