server.xml のパスワードを暗号化

Jira インスタンスのセキュリティを強化するために、Tomcat の server.xml ファイルでコネクタの設定に使用するパスワードを暗号化できます。

はじめる前に

This solution involves the utilization of the protocol with a productEncryptionKey and encrypted passwords, which may not guarantee complete security, as the configuration in Tomcat's server.xml will contain all the necessary information to decrypt the password. An attacker could potentially impersonate Jira to gain access to the password. To enhance security, we recommend to safeguard the server where Jira and the productEncryptionKey are located.

パスワード暗号化のサポートによって Tomcat プロトコルを拡張する次のプロトコルが Jira には用意されています。

プロトコル クラス

プロトコル クラスのベースになる Tomcat プロトコル

パスワード暗号化がサポートされている属性

com.atlassian.secrets.tomcat.protocol.Http11NioProtocolWithPasswordEncryptionHttp11NioProtocol
  • KeystorePass

  • KeyPass
  • SSLPassword
  • TruststorePass
com.atlassian.secrets.tomcat.protocol.Http11Nio2ProtocolWithPasswordEncryptionHttp11Nio2Protocol
  • KeystorePass

  • KeyPass
  • SSLPassword
  • TruststorePass
com.atlassian.secrets.tomcat.protocol.Http11AprProtocolWithPasswordEncryptionHttp11AprProtocol
  • KeystorePass

  • KeyPass
  • SSLPassword
  • TruststorePass
com.atlassian.secrets.tomcat.protocol.AjpNioProtocolWithPasswordEncryptionAjpNioProtocol

secret

com.atlassian.secrets.tomcat.protocol.AjpNio2ProtocolWithPasswordEncryptionAjpNio2Protocol

secret

com.atlassian.secrets.tomcat.protocol.AjpAprProtocolWithPasswordEncryptionAjpAprProtocol

secret

単一のパスワードの暗号化

  1. <Jira-installation-directory>/bin に移動します。

  2. 次のコマンドを実行してパスワードを暗号化します。
    java -cp "./*" com.atlassian.secrets.cli.tomcat.TomcatEncryptionTool

    以下に示すオプションの引数を使用することもできます。

  3. プロンプトが表示されたら、パスワードを入力します。暗号化ツールによって encryptedPasswordencryptionKey の 2 つのファイルが生成されます。これらのファイルを安全な場所に移動してください。必要に応じて、ファイルの名前を変更することもできます。

1 つのコネクタの複数のパスワードの暗号化

1 つのコネクタで複数のパスワードを暗号化する場合は、すべてのパスワードに同じ暗号化キーを使用する必要があります。最初のパスワードを暗号化したら、生成された encryptionKey を使って、キーのパスを暗号化ツールに渡すことで 2 つ目以降のパスワードを暗号化します。

java -cp "./*" com.atlassian.secrets.cli.tomcat.TomcatEncryptionTool /path/to/encryptionKey

The encryption tool will generate only the encryptedPassword file.


コネクタ設定における暗号化されたパスワードの使用


コネクタ設定で暗号化されたパスワードを使用するには、次のプロパティを設定する必要があります。


  • protocol -上記のいずれかのプロトコル クラスを使用

  • productEncryptionKey - encryptionKey ファイルのパスを指定


次に、コネクタ設定で、プレーン テキストのパスワードの代わりに適切な encryptedPassword ファイルのパスを使用できます。


たとえば、Jira ではキーストアとキー パスワードが暗号化された Http11Nio2 コネクタの conf/server.xml 構成が次のようになります。

<Connector
    protocol="com.atlassian.secrets.tomcat.protocol.Http11Nio2ProtocolWithPasswordEncryption"
    port="8443"

    (...)

    keystoreFile="/var/secrets/keystore/keystore"
    keystorePass="/var/secrets/keystore/encryptedKeystorePass"
    keyPass="/var/secrets/keystore/encryptedKeyPass"

    productEncryptionKey="/var/secrets/encryptionKey"
/>

productEncryptionKey が 1 つだけ指定されているため、keystorePasskeyPass の両方を同じキーで暗号化する必要がありました。



最終更新日 2023 年 6 月 22 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.