Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

AWG_ENTROPY_EXHAUSTED Сетевое оборудование и VPN

AmneziaWG: Ошибка Cryptographic random entropy pool exhausted

Обновлено: 25.08.2026 · Официальная документация ↗
  • Сервер или клиент AmneziaWG зависает на этапе инициализации рукопожатия (Handshake).
  • В системном журнале ядра появляется ошибка: random: crng init done / entropy pool exhausted.
  • Высокая задержка перед установлением VPN-соединения (до 15–30 секунд).
  • Служба amnezia-wg сбоит с ошибкой генерации псевдослучайных последовательностей для обфускации.

1. Проверка доступного пула энтропии в ядре

Выполните проверку текущего уровня доступных случайных бит:

cat /proc/sys/kernel/random/entropy_avail

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

2. Установка и запуск генератора энтропии Haveged

# Ubuntu / Debian
apt-get install -y haveged rng-tools
systemctl enable --now haveged

# RHEL / Rocky Linux
dnf install -y haveged rng-tools
systemctl enable --now haveged

3. Оптимизация параметров Junk Packet в конфигурации AmneziaWG

Чрезмерно большие диапазоны генерации мусора создают нагрузку на CSPRNG генератор. Скорректируйте параметры в awg0.conf:

[Interface]
# Установите умеренные значения для мусорных пакетов
Jc = 4
Jmin = 40
Jmax = 70
# Оптимизируйте заголовки инициализации
S1 = 15
S2 = 35
H1 = 1
H2 = 2
H3 = 3
H4 = 4

4. Проверка источника аппаратной энтропии virtio-rng

Если вы используете KVM гипервизор, убедитесь, что в конфигурацию виртуальной машины проброшено устройство /dev/urandom через virtio-rng.

💡 Практика специалистов: На облачных VPS без аппаратного virtio-rng всегда устанавливайте сервис 'haveged'. Это гарантирует мгновенную инициализацию туннелей без задержек при старте сервера.

Частые вопросы (FAQ)

Зачем AmneziaWG расходует энтропию при каждом подключении?

В отличие от WireGuard, AmneziaWG перед началом сессии отправляет случайное количество пакетов со случайным размером (от Jmin до Jmax байт) со случайным содержимым, чтобы сбить сигнатурный анализ DPI.

Влияет ли низкая энтропия на скорость передачи данных внутри VPN?

Нет, энтропия расходуется в основном на этапе создания сессии (Handshake) и отправки мусорных префиксов. Сама передача данных шифруется симметричным шифром ChaCha20-Poly1305.

Безопасно ли использовать демон haveged на современных ядрах Linux 5.15+?

Да, haveged собирает временные флуктуации тактов процессора и безопасно пополняет системный пул энтропии ядра.

Что произойдет, если установить параметр Jc = 0?

Отправка мусорных пакетов (Junk Packet Count) будет отключена, что снизит нагрузку на CPU/генератор случайных чисел, но уменьшит стойкость к блокировкам DPI.

Полезные материалы
Рекомендуем