サーバーのセキュリティ保護は初めてなので、これについてはあまり知りませんが、HTTPを使用するには、デジタルオーシャンドロップレットで実行されているSpring Bootアプリケーションを取得する必要があります。
私の考えは、letsencrypt証明書を登録し、それを使用するようSpringに指示することです。
ただし、その方法はわかりません。
ありがとう。
Let's EncryptとSpring Bootに関する2つのブログ記事を書きました。
簡単に言うと、手順は次のとおりです。
ドメインの証明書の生成(例:example.com)
./certbot-auto certonly -a standalone -d example.com -d www.example.com
物は/etc/letsencrypt/live/example.com
で生成されます。 Spring Bootでは、PKCS#12形式のファイルが必要です。つまり、キーをPKCS#12キーストアに変換する必要があります(OpenSSLを使用するなど)。次のように:
/etc/letsencrypt/live/example.com
ディレクトリを開きます。openssl pkcs12 -export -in fullchain.pem -inkey privkey.pem -out keystore.p12 -name Tomcat -CAfile chain.pem -caname root
PKCS12を含むファイルkeystore.p12が/etc/letsencrypt/live/example.com
に生成されるようになりました。
Spring Bootアプリケーションを構成します。 application.propertiesファイルを開き、次のプロパティをそこに配置します。
server.port=8443
security.require-ssl=true
server.ssl.key-store=/etc/letsencrypt/live/example.com/keystore.p12
server.ssl.key-store-password=<your-password>
server.ssl.keyStoreType=PKCS12
server.ssl.keyAlias=Tomcat
詳細と発言については、私の ブログ投稿 を読んでください。
ステップ1:gitからcertbotをダウンロードする
ドメインアドレスが指しているサーバーでLet's Encryptのソースコードを取得する必要があります。このステップには数分かかる場合があります。
$ git clone https://github.com/certbot/certbot
$ cd certbot
$ ./certbot-auto --help
注意:Python 2.7.8(またはそれ以上)を事前にインストールする必要があります。
ステップ2:証明書と秘密鍵を生成します
端末で次のコマンドを実行して、Let's Encryptが証明書と秘密鍵を生成します。
$ ./certbot-auto certonly -aスタンドアロン\
-d example.com -d example.com
備考:キーは/etc/letsencrypt/live/example.comディレクトリに生成されます
ステップ3:PEMファイルからPKCS12ファイルを生成する
PEMファイルをPKCS12バージョンに変換するには:次のように、ターミナルでOpenSSLを使用して/etc/letsencrypt/live/example.comに移動し、キーをPKCS12に変換します。
$ openssl pkcs12 -export -in fullchain.pem \
-inkey privkey.pem \ -out keystore.p12 \ -name Tomcat \ -CAfile chain.pem \ -caname root
エクスポートパスワードを入力してください:
確認-エクスポートパスワードの入力:
(注:-一度に1行ずつ書き込み、Enterキーを押します)
ステップ4:Spring Bootアプリケーションの構成
'application.properties'を開き、この設定をそこに置きます。
server.port = 8443 security.require-ssl = true
server.ssl.key-store =/etc/letsencrypt/live /example.com/ keystore.p12
server.ssl.key-store-password =password
server.ssl.keyStoreType = PKCS12
server.ssl.keyAlias = Tomcat
別のオプションは、Spring Boot Starter ACMEを使用することです。
https://github.com/creactiviti/spring-boot-starter-acme
ACME(自動証明書管理環境)は、LetsEncryptが証明書を自動的に発行するために使用するプロトコルです。
keytool
コマンドを使用して、キーストアに追加しますファイルは次のようになります。
server.port = 8443
server.ssl.key-store = classpath:sample.jks
server.ssl.key-store-password = secret
server.ssl.key-password = password
スプリングブートwebfluxのプロパティの構成が変更されました
server.port=443
server.ssl.enabled=true//the changed line
server.ssl.keyAlias=netty
server.ssl.key-store=path
server.ssl.key-store-password=password
server.ssl.keyStoreType=PKCS12