我已经设置了gemfire.properties,以便使用ssl-enabled-components=web
使Web组件需要SSL并设置密钥库。定位器和服务器正在启动,GFSH连接到JMX管理器。但是,当我尝试启动Swagger UI时,我得到了ERR_SSL_VERSION_OR_CIPHER_MISMATCH
。如果配置是ssl-ciphers=
和ssl-protocols=
或设置为any
...
那么Apache Geode所需的REST API密码是什么?谢谢
答案 0 :(得分:3)
我使用以下创建的基本证书对此进行了测试:
keytool -genkeypair -alias self -dname "CN=trusted" \
-validity 3650 -keypass password -keystore ./trusted.keystore \
-storepass password -storetype JKS
它以你描述的方式失败了。我重新创建了证书并使用了与-keyalg EC
不同的密钥算法然后工作。我会看看能否在某些时候给出更详细的解释。
更新:
我正在使用Mac OS,我的/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/jre/lib/security/java.security
文件包含以下证书限制:
jdk.certpath.disabledAlgorithms=MD2, MD5, RSA keySize < 1024, \
DSA keySize < 1024, EC keySize < 224
使用-keyalg EC
,生成的证书会使用SHA256withECDSA
签名,但如果没有该选项,则会使用SHA1withDSA
签名,因此无法接受。
答案 1 :(得分:0)
对于签名的SSL证书,我必须通过this process使用openssl生成pfx文件,然后this process将该pfx导入java密钥库,并使用-keyalg EC
标志。然后,Swagger可以正常使用HTTPS。