目錄

簡介

受影響的版本

問題

解決方案

如何在CloudCenter伺服器上重新配置NSS:

簡介

本文檔可幫助您對與SunPKCS11-NSS相關的錯誤消息進行故障排除。當您在CloudCenter Manager(CCM)和CloudCenter Orchestrator(CCO)電腦中啟動tomcat服務時，會出現此錯誤。

受影響的版本

- CloudCenter 4.7.1.1

附註：在新的4.7.1.1安裝過程中發現此錯誤

問題

當您嘗試配置CloudCenter時，使用者可能會在osmosix.log中看到以下錯誤消息：

2017-05-20 20:07:15,153 ERROR config.GatewayConfigController [http-apr-8443-exec-8]  - com.osmosix.commons.crypto.CryptoException: com.osmosix.commons.crypto.CryptoException: java.security.NoSuchProviderException: No such provider: SunPKCS11-NSS

java.lang.RuntimeException: com.osmosix.commons.crypto.CryptoException: com.osmosix.commons.crypto.CryptoException: java.security.NoSuchProviderException: No such provider: SunPKCS11-NSS

at com.osmosix.commons.convert.converter.CryptoJson2HttpMessageConverter.encrypt(CryptoJson2HttpMessageConverter.java:87

解決方案

此錯誤是由於未在Java 8中配置網路安全服務所致。通常由CloudCenter安裝程式配置該服務，但某些例項中缺少此配置。

如何在CloudCenter伺服器上重新配置NSS:

轉到此目錄：

cd /usr/lib/jvm/java-8-sun/jre/lib/security

驗證java.security配置：

cat java.security | grep security.provider

如果在系統上配置了NSS，您應該會看到它列在security.provider.10中，如下所示：

[root@localhost security]# cat java.security | grep security.provider

#    security.provider.<n>=<className>

# named Sun appears in the sun.security.provider package. Thus, the

#    security.provider.1=sun.security.provider.Sun

security.provider.1=sun.security.provider.Sun

security.provider.2=sun.security.rsa.SunRsaSign

security.provider.3=sun.security.ec.SunEC

security.provider.4=com.sun.net.ssl.internal.ssl.Provider

security.provider.5=com.sun.crypto.provider.SunJCE

security.provider.6=sun.security.jgss.SunProvider

security.provider.7=com.sun.security.sasl.Provider

security.provider.8=org.jcp.xml.dsig.internal.dom.XMLDSigRI

security.provider.9=sun.security.smartcardio.SunPCSC

security.provider.10=sun.security.pkcs11.SunPKCS11 /usr/lib/jvm/java-8-sun/jre/lib/security/nss.cfg

login.configuration.provider=sun.security.provider.ConfigFile

policy.provider=sun.security.provider.PolicyFile

如果缺少突出顯示行，請將其新增到java.security檔案中。

在包含以下內容的同一目錄中建立nss.cfg檔案：

name = NSS

nssLibraryDirectory = /usr/lib64/

nssDbMode = noDb

attributes = compatibility

驗證java.security和nss.cfg檔案的許可權是否正確。許可權應為644。

重新啟動CloudCenter VM:

reboot

現在，您應該能夠配置CloudCenter。