HTTPS有効化の設定

adminが2023/11/30 15:11に最終更新

1.概要

本ドキュメントでは、akaBot CenterとData ServiceのHTTPSモードを有効化する方法について説明します。

2.前提条件 

2.1.システム要件

  • akaBot CenterとData Serviceはインストールされており、以下のコンポーネントを使用してHTTP モードで正常に実行されていること。
    • Web サーバー Apache Tomcat 8.5
    • データベースはMySQLまたはMSSQLまたはOracle
    • JDK 11
    • ActiveMQ
  • CenterとData Serviceが搭載されるマシンでは、JAVA_HOME環境変数が定義されていること。

2.2.ファイル要件

ご配属組織の他のマシンで受け入れられるように、IT部門が発行するグローバル証明書を使用することを強く推奨します。

この場合は、IT部門に連絡し、以下のファイルを入手してください。

  • ご配属組織のセキュリティ証明書ファイル。例:fpt.local.cer
  • ご自身の個人情報交換ファイル。例:fpt.pfx

それ以外の場合は、上記のファイル要件を無視してください。

2.3.ファイル要件

以下の情報を用意してください。

  • Data Serviceインストール先のディレクトリパス。例:C:
    akaBot
    DataService
    *
  • Tomcatインストール先のディレクトリ パス(TOMCAT_PATHと呼ばれます)。例:%TOMCAT_PATH% = “C:
    Program Files
    Apache Software Foundation
    Tomcat 8.5”

3.akaBotセキュリティ証明書の準備と信頼

事前にakaBotのセキュリティ証明書を準備し、マシン内で信頼してください。

3.1.akaBotセキュリティ証明書を準備 

ステップ1: Javaセキュリティフォルダーを開きます。

フォルダーパス:“C:
Program Files
Java
jdk-11
security”

ステップ2: Javaシステムのcacertscacerts - originalのファイルを別のフォルダーにバックアップし、エラー発生時にロールバックできるようにします。

1701237970933-820.png

ステップ3:コマンドを用意します。

ケース1:IT部門からの既存の組織証明書を使用する場合は、以下のコマンドで更新します。

  • ご自身のパスワード
  • IT担当部門が発行したご配属組織のセキュリティ証明書ファイル。例:fpt.local.cer
  • IT担当部門が発行したご自身の個人情報交換ファイル。例:fpt.pfx

set ALIAS=akabot

set PASSWORD=YOURPASSWORD

REM import to java Key

keytool -importcert -alias %ALIAS% -keystore "%JAVA_HOME%\lib\security\cacerts" -storepass changeit -file fpt.local.cer

REM generate file JKS for JAVA

keytool -importkeystore -destkeystore akabot.p12 -deststoretype pkcs12 -alias %ALIAS% -srckeystore fpt.pfx -deststorepass %PASSWORD%

keytool -importkeystore -srckeystore akabot.p12 -srcstoretype pkcs12 -srcalias akabot -destkeystore akabot.jks -deststoretype jks -deststorepass %PASSWORD% -destalias %ALIAS%

keytool -importkeystore -srckeystore akabot.jks -destkeystore akabot.jks -deststoretype pkcs12

ケース2: 自己署名証明書を生成する場合は、以下のコマンドで更新します。

  • ご自身のドメイン
  • ご自身のパスワード
  • ご配属の組織名

set DOMAIN=YOURDOMAIN.COM

set ALIAS=akabot

set PASSWORD=YOURPASSWORD

set ORGANIZATION_NAME=YOUR ORGANIZATION NAME

REM Generate keypair: jks file

"%JAVA_HOME%\bin\keytool.exe" -genkeypair -alias %ALIAS% -keyalg RSA -keysize 2048 -keystore akabot.jks -storepass %PASSWORD% -keypass %PASSWORD% -dname "CN=%DOMAIN%, OU=Unknown, O=% ORGANIZATION_NAME%, L=Ho Chi Minh, ST=Ho Chi Minh, C=VN"

REM Convert to *.p12 file

"%JAVA_HOME%\bin\keytool.exe" -importkeystore -srckeystore akabot.jks -srcstoretype JKS -srcstorepass %PASSWORD% -destkeystore akabot.p12 -deststoretype PKCS12 -storepass %PASSWORD%

REM Export to *.cer file

"%JAVA_HOME%\bin\keytool.exe" -export -alias %ALIAS% -keystore akabot.p12 -storetype PKCS12 -storepass %PASSWORD% -rfc -file akabot.cer

REM Import and trust globally

REM The default password for the 'cacerts' truststore is usually 'changeit'

"%JAVA_HOME%\bin\keytool.exe" -importcert -alias %ALIAS% -keystore "%JAVA_HOME%\lib\security\cacerts" -storepass changeit -file akabot.cer

ステップ4: コマンドプロンプトを開き、ステップ3で準備したコマンドを実行します。

注:既存の証明書を使用する場合は、証明書ファイル保存先のフォルダーを必ず特定してからコマンドを実行してください。

1701238244717-424.png

コマンドが実行されたら、cacertsファイル名はakabot.cerに変更され、akabot.jksとakabot.p12が生成されます。これらのファイルは、証明書を信頼する手順に使用されます。

1701238267369-375.png

3.2.証明書を信頼

以下のガイダンスに従うことで、証明書を手動または自動で信頼できます。

3.2.1.手動信頼(マシンのスコープ)

手動で信頼する場合、証明書は信頼できるCenterとData Service搭載のマシンでのみ有効になります。

ステップ1: CenterとData Service搭載のマシンで、「akabot.cer」ファイルをダブルクリックし、対象証明書をローカルマシン>信頼されたルートにインストールします。

1701238338624-639.png

ステップ2: 証明書がインストールされたら、「コンピューター証明書を管理→信頼されたルート証明機関」のタブで結果を確認できます。

1701238362643-371.png

1701238382010-194.png

「akabot.cer」をすべてのエージェントマシンにコピーし、上記のステップ1、ステップ2を繰り返して各マシンで信頼してください。

3.2.2.自動信頼(組織のスコープ)

組織では、すべてのマシンがActive Directoryサーバーに接続されています。Active Directoryサーバーからすべての証明書とポリシーを取得し、ローカルマシンに適用します。この方法を使って、akabot.cerをIT部門に送信することで、CenterとData ServiceマシンとすべてのAgentマシンに対して上記の証明書を自動的に信頼できます。これにより、証明書がIT部門のActive Directoryサーバーの信頼ルートに追加されます。

4.データサービスの設定

ステップ1: 「akabot.p12」をData Serviceインストール先のディレクトリパスにコピーします。例:"C:
akaBot
DataService"

1701238471478-262.png

ステップ2:Data Serviceインストール先のディレクトリにあるapplication.ymlを開き、以下の通りに設定します。

1701238490756-686.png

1701238530556-554.png

ステップ3: win-install.batに以下の内容が含まれていることを確認します。

1701238560016-319.png

5.akaBot Centerを設定

ステップ1:ファイル「akabot.jks」を %TOMCAT_PATH%
conf にコピーします。

1701238636650-530.png

ステップ 2:上記ディレクトリ内のserver.xmlの内容が次のようになっていることを確認します。

    <Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"

               maxThreads="200" SSLEnabled="true" scheme="https"

               secure="true"

               maxParameterCount="1000"

               clientAuth="false"

               sslProtocol="TLS"

               keystoreFile="conf/akabot.jks"

               keystorePass="YOURPASSWORD"

               keyAlias="akabot">

    </Connector>

ステップ3: 「akabot.p12」を %TOMCAT_PATH%
webapps
ROOT
WEB-INF
classes
config
にコピーします。

1701239344541-750.png

ステップ4: 上記ディレクトリ内のapplication-prod.xml に以下の内容が含まれていることを確認します。

1701239403087-942.png

1701239453317-218.png

ステップ5: Tomcat設定のアプリケーションを実行し、以下のコードをJavaオプションに追加し、akaBot Center がプロファイル「prod,tls」を使用することを確認します。

-Dspring.profiles.active=prod,tls

1701239514515-586.png

6.アプリケーションの実行

ステップ1: akaBot Data Service をインストールして開始するには、管理者権限で「win-install.bat」を実行します。

ステップ2: Windowsサービスにより、akaBot Data ServiceとTomcatサービスの実行を開始します。

1701239737784-561.png

  
Navigation