Linux

使用任何應用程序升級 NSS 後無法使用自簽名證書訪問網站

  • March 11, 2021

我們最近將 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

簡短的版本是您要連接的網站的密碼套件正在嘗試使用不符合 NIST 要求的算法。

一旦伺服器嘗試使用不符合要求的算法連接到您,FIPS 將立即關閉連接。

為了解決這個問題,您應該嘗試在您正在訪問的網站 - https://www.ssllabs.com/上執行 ssllabs ,並查看“密碼套件”和“首選密碼順序”,並確保套件符合 NIST 指南(它們需要使用至少 256 長度的素數)。

引用自:https://serverfault.com/questions/1052504