Недавно мы обновили NSS с версии 3.44 ( nss-3.44.0-4.el7.x86_64
) до версия 3.53 ( nss-3.53.1-3.el7_9.x86_64
). После этого обновления все обращения к нашему внутреннему веб-сайту, использующему самозаверяющий сертификат, завершаются ошибкой. Мы видим следующую ошибку при его скручивании или попытке доступа с помощью любых приложений, таких как GIT -
#When Curling
curl https://internalsite.com -k
curl: (35) security library: invalid arguments.
#When using GIt
git clone https://internalsite.com/stash/scm/repo/my_repo.git
Cloning into 'my_repo'...
fatal: unable to access 'https://internalsite.com/stash/scm/repo/my_repo.git/': security library: invalid arguments.
При откате до NSS 3.44 проблема решена. Если мы попадаем на сайт, не использующий самозаверяющий сертификат, он работает должным образом.
Есть ли у кого-нибудь идеи, как решить? Во всем, что я читал, говорилось, что изменения обратно совместимы, поэтому я не понимаю, зачем нам снова импортировать сертификат в NSSDB. Даже после импорта я вижу ту же ошибку.
При устранении неполадок я преобразовал сертификат / ключ в PK12 ( openssl pkcs12 -export -out certandkey.pfx -inkey /home/me/stuff/cert.key -in cert.pem
), затем затем импортировал его с помощью pk12util -i certandkey.pfx -d sql: / etc / pki / nssdb
. После этого я все еще вижу ту же проблему.
Спасибо.
Я открыл тикет Redhat по этой проблеме. Мы используем FIPS в наших системах, что убивало соединения.
Они ответили следующей статьей, в которой содержится дополнительная информация -
"Why does curl return error (35) security library: invalid arguments?"
https://access.redhat.com/solutions/5773011
Краткая версия состоит в том, что набор Cipher, к которому вы подключаетесь, пытается использовать алгоритм, не соответствующий требованиям NIST.
Как только сервер попытается подключиться к вам по алгоритму, который не соответствует требованиям, FIPS немедленно закроет соединение.
Чтобы решить эту проблему, вам следует попытаться запустить ssllabs на веб-сайте, к которому вы обращаетесь - https://www.ssllabs.com/ , и посмотреть "Наборы шифров" и " Предпочтительный порядок шифрования »и убедитесь, что комплекты соответствуют рекомендациям NIST (в них необходимо использовать простое число длиной не менее 256).