自己署名証明書を使用した秘密鍵ストアとトラストストアの作成

自己署名証明書を使用して、ソース/ターゲット間通信の TLS 暗号化を有効にできます。

この場合、中央認証局が存在しないため、各サーバーがもう一方のサーバーの証明書を信頼している必要があります。 この手順では、CDCレプリケーションに付属するコマンドを使用します。 openssl などのサード・パーティー・ツールも使用できます。 この手順では、以下の場所にある keytool installation_directory/jre64/jre/bin を使用します。

各サーバーには、秘密鍵と自己署名証明書が必要です。 keytool -genkeypair コマンドを使用して、秘密鍵と自己署名証明書を生成できます。 例:

keytool -genkeypair -noprompt -alias self -keyalg RSA -keysize 2048 -sigalg SHA256withRSA -dname "CN=hostname.example.com" -validity 365 -keypass password -keystore privatekey.jks -storepass password -storetype JKS

各サーバーの自己署名証明書は、もう一方のサーバーによって信頼されている必要があります。 各サーバーから証明書をエクスポートして、もう一方のサーバーにインポートする必要があります。 自己署名証明書は、 `keytool -exportcert` コマンドを使用してエクスポートできます。 例:

keytool -exportcert -noprompt -rfc -alias self -file hostname.crt -keystore privatekey.jks -storepass password -storetype JKS

各サーバーは、そのサーバー自体の自己署名証明書ともう一方のサーバーの証明書を信頼している必要があります。 自己署名証明書は、` keytool -importcert` コマンドを使用して信頼ストアにインポートできます。 例:

keytool -importcert -noprompt -alias hostname -file hostname.crt -keypass password -keystore trust.jks -storepass password -storetype JKS
注: openssl コマンドラインユーティリティでは、CDC レプリケーションと互換性のある PKCS12 トラストストアを作成できません。 openssl の代わりに keytool を使用してください。 PKCS12 トラストストアを作成するには、-storetype パラメーターを PKCS12 に変更します。

自己署名証明書とパブリック認証局で署名された証明書の両方を組み合わせて使用する場合は、自己署名証明書だけでなく、通常のパブリック認証局も信頼する必要があります。 通常の公開認証局は、keytool -importkeystore コマンドを使用して新しい信頼ストアにインポートできます。 例:

keytool -importkeystore -noprompt -srckeystore installdir/jre64/jre/lib/security/cacerts -destkeystore trust.jks -deststoretype JKS -srcstorepass changeit -deststorepass password