У меня только что была похожая проблема с клиентом OpenVPN, который использует OpenSSL (точно так же, как ваш curl).
Проблема может заключаться в том, что ваш клиент OpenSSL слишком новый. Вам нужен старый клиент OpenSSL.
Ваш новый клиент OpenSSL не принимает, что сервер SSL использует хешированный сертификат md5. Требуется хеширование сертификата сервера с использованием SHA256.
Таким образом, получив старый клиент OpenSSL, он примет хешированный сертификат MD5.
Вы можете найти старые выпуски OpenVPN в https://build.openvpn.net/downloads/releases/
Для Windows самый новый, принимающий MD5 - openvpn-install-2.4.3-I602.exe
.
Когда вы установите его, он будет установлен в C:\Program Files\OpenVPN\bin
. Там вы найдете openssl.exe
, который работает.
Вот версия, которую он печатает мне:
> openssl version
# OpenSSL 1.0.2l 25 May 2017
Вероятно, вы можете перейти непосредственно к OpenSSL, чтобы найти его, если вы этого хотите.
OpenVPN также имеет версии для Linux и Mac. Возможно, это также нумерация версий 2.4.3 для этих платформ.
Другой вариант заключается в том, что ваш платежный провайдер устанавливает сертификат, созданный SHA256 (и также предоставляет вам новый сертификат). Видимо, сертификаты MD5 больше не защищены ...
Цитата:
Версия OpenSSL была обновлена до 1.1, и я не могу подключиться к своему R7000
Маршрутизатор извне больше, потому что по соображениям безопасности OpenSSL
v.1.1 не принимает сертификаты MD5, потому что имеет слабую подпись.
С https://community.netgear.com/t5/Nighthawk-WiFi-Routers/Netgear-R7000-and-OpenVPN-for-Android-App/td-p/1310857
Подробнее о сертификатах MD5: https://openvpn.net/vpn-server-resources/faq-regarding-openvpn-connect-ios/#md5-signature-algorithm-support
Это скажет вам, что вы можете проверить, что сертификат хэшируется с использованием MD5: (используйте Git Bash)
../bin/openssl x509 -in rootCA.crt -noout -text | grep "Signature Algorithm"
# Signature Algorithm: md5WithRSAEncryption