我正在尝试为我的示例Spring Boot应用程序实现SSL。管理员为example.pem
提供了example.key
,example.csr
,example.crt
,example.p7b
和example.com
文件。
我使用以下命令将PEM
转换为DER
文件:
openssl x509 -outform der -in example.pem -out example.der
然后,我将DER
文件转换为JKS
文件:
keytool -import -alias example -keystore example.jks -file example.der
然后,我将JKS
文件放入main/resources
目录,然后放在application.properties
文件中:
server.port=443
# SSL settings
server.ssl.enabled=true
server.ssl.key-store=classpath:example.jks
server.ssl.key-store-password=example
server.ssl.key-password=example
现在,当我点击https://example.com
或https://example.com:443
时(因为HTTPS位于443
上无关紧要),我得到以下跟踪:
04:05:10.667 [qtp555826066-15] DEBUG o.e.jetty.server.HttpConnection -
javax.net.ssl.SSLHandshakeException: no cipher suites in common
at sun.security.ssl.Handshaker.checkThrown(Handshaker.java:1478)
...
我是否将错误的文件转换为JKS或者我做错了什么?
修改 我使用嵌入式Jetty服务器。
更新
当我尝试将key
文件添加到pem
并使用以下命令获取pkcs12
文件时:
openssl pkcs12 -export -inkey example.key -in example.pem -name example -out example.pkcs12
我收到example.pkcs12
个文件,但也有错误说:
No certificate matches private key
我的PEM
或KEY
文件是否已损坏?