如何配置 Play 应用程序以使用 Let's Encrypt 证书并转换 let's encrypt 证书以便 play 可以理解它?

How to configure a Play application to use Let's Encrypt certificate and to convert let's encrypt certificate so that play can understand it?

我一直在使用play framework作为我的服务器,react webpage作为客户端。我已经使用 letsencrypt 创建并设置了反应网页的证书。但是,现在我必须为播放应用程序配置此证书工作。我如何配置 application.conf 来使用它?

我自己找到了问题的答案。

首先从 https://www.digitalocean.com/community/tutorials/how-to-secure-nginx-with-let-s-encrypt-on-ubuntu-16-04#step-5-enabling-the-changes-in-nginx

为 nginx 创建证书

创建证书后,执行以下步骤:

1) 首先停止你的游戏服务器

2) 执行 sudo su

3) 执行 ssh 并转到您的 sslcertificate 所在的位置,如下所示:/etc/letsencrypt/live/example.com

4) 输入以下命令

openssl pkcs12 -export -in fullchain.pem -inkey privkey.pem -out cert_and_key.p12 -CAfile chain.pem -caname root -passout pass:your_password

5) 输入以下命令

keytool -importkeystore -srcstorepass your_password -destkeystore keyStore.jks -srckeystore cert_and_key.p12 -srcstoretype PKCS12 -storepass your_password

6) 创建 .jks 后,将以下代码放入 application.conf 文件中:

play.crypto.secret="changethissosomethingsecret"
play.server.https.keyStore.path = "Path to your .jks file"
play.server.https.keyStore.type = "JKS"
play.server.https.keyStore.password = "yourKeyStorePassword"

5) 现在将您的播放 运行 命令更改为以下

nohup /home/ubuntu/webserver/manpowercompany-1.0-SNAPSHOT/bin/manpowercompany -J-Xms128M -J-Xmx1024M -Dplay.crypto.secret=anyKey -Dhttps.port=9002 &

注意:根据您的文件位置更改目录

6) 使用包含上述 运行 命令的文件启动服务器。您可能需要执行 sudo。

7) 一切顺利。现在您的服务器在端口 9002

上作为 https 服务

以上过程是我根据我的项目做的步骤。因此,请参考此内容并根据您的项目进行更改。 谢谢!!!