使用来自加密的SSL证书来播放框架

sko*_*lis 5 java ssl-certificate playframework lets-encrypt

我正在尝试研究如何使用我用独立播放应用程序加密的证书.我关闭了我的服务器并运行了生成4个文件的certbot(cert.pem,chain.pem,fullchain.pem,privatekey.pem),但我不知道如何让我的播放应用程序使用它们.

我正在使用Play框架的2.5.4版本.

Ant*_*ton 8

Play使用Java密钥库来配置SSL证书和密钥.

所以你必须这样做:

  1. 将Let的加密证书转换为PKCS12
  2. 将PKCS12转换为Keystore
  3. 配置Play以使用密钥库

1.证书和PKCS12文件的密钥

openssl pkcs12 -export -in server.crt -inkey server.key \
    -out server.p12 -name [some-alias] \
    -CAfile ca.crt -caname root
Run Code Online (Sandbox Code Playgroud)

2.将PKCS12转换为Keystore

keytool -importkeystore \
    -deststorepass [changeit] -destkeypass [changeit] -destkeystore server.keystore \
    -srckeystore server.p12 -srcstoretype PKCS12 -srcstorepass some-password \
    -alias [some-alias]
Run Code Online (Sandbox Code Playgroud)

3.配置Play以使用密钥库

/path/to/your/app/app_name_script -Dhttps.port=443 -Dplay.server.https.keyStore.path=[keyStore-location] -Dplay.server.https.keyStore.password=[keyStore-password]
Run Code Online (Sandbox Code Playgroud)