Что такое ключ DH? #
Ключ Диффи-Хеллмана (DH) — это криптографический метод, используемый для безопасного обмена секретными ключами через ненадежную сеть. Это позволяет двум сторонам независимо генерировать пары открытого и закрытого ключей, обмениваться своими открытыми ключами и получать общий секретный ключ, даже не передавая свои закрытые ключи. Этот общий секретный ключ затем можно использовать для шифрования, обеспечивая конфиденциальность и целостность связи между двумя сторонами. Обмен ключами DH — это фундаментальный компонент безопасных протоколов связи, таких как SSL/TLS, SSH и VPN, обеспечивающий защиту от подслушивания и гарантирующий безопасную передачу данных.
Что такое ключ ECDHE? #
С другой стороны, ECDHE, или эфемерная эллиптическая кривая Диффи-Хеллмана, представляет собой метод обмена криптографическими ключами, используемый в протоколах защищенной связи, таких как SSL/TLS, для установления безопасного и эффективного соединения между двумя сторонами. Он использует криптографию на основе эллиптических кривых для обеспечения безопасного обмена ключами шифрования. ECDHE обеспечивает идеальную прямую секретность, генерируя пары эфемерных ключей для каждого сеанса, гарантируя, что даже если ключ одного сеанса будет скомпрометирован, это не поставит под угрозу безопасность других сеансов. Этот метод обеспечивает высокий уровень безопасности с более короткими ключами, что делает его эффективным в вычислительном отношении и хорошо подходит для различных приложений, включая безопасный просмотр веб-страниц и шифрование электронной почты.
Действия по анализу ключа DH: слишком маленькая ошибка #
Анализ ошибки «Слишком маленький ключ DH» обычно происходит в контексте использования криптографических протоколов, таких как SSL/TLS или SSH, и относится к использованию слабых или недостаточных размеров ключей Диффи-Хеллмана для безопасного обмена ключами. Давайте рассмотрим сообщения журнала в RELIANOID Балансировщик нагрузки.
27 июля 17:43:20 noid-ee-01 фунт: MyHTTPfarm, BIO_do_handshake с:443 не удалось: ошибка: 141A318A: процедуры SSL: tls_process_ske_dhe: ключ dh слишком мал
Эта ошибка «Слишком маленький ключ DH» обнаруживается при подключении к определенному серверу. Мы можем проверить SSL-соединение с помощью следующей команды:
root@noid-ee-01:~# openssl s_client -connect:443 -имя_сервера | grep Temp [...] Временной ключ сервера: [...]
Временный ключ сервера для хорошей защищенной службы должна составлять 2048 бит, поэтому, если внутренний ключ DH работает слишком низко, появляется сообщение об ошибке «Ключ DH слишком мал».
По умолчанию конфигурация openssl в балансировщике нагрузки допускает минимум TLSv1.2 и SECLEVEL, равный 2. Это определено в файле конфигурации. /etc/ssl/openssl.cnf.
[system_default_sect] MinProtocol = TLSv1.2 CipherString = DEFAULT@SECLEVEL=2
Итак, чтобы решить эту проблему, необходимо усилить шифры на внутренней стороне и разрешить более сильные шифры, такие как «ECDHE-RSA-AES256-GCM-SHA384,ECDHE-RSA-AES256-SHA384,ECDHE-RSA-AES256-SHA«. Убедитесь, что такие шифры доступны в ваших защищенных серверных службах.