クラウドサービスを用いたFRUCtoSのHTTPS化
本ページでは一例として、AWS上にHTTPSアクセス可能なFRUCtoSを構築する手順を記載します。
本ページにて記載している方法は構築の一例であり、実運用を考慮したものではありません。
実装先に合わせてIPアドレスやポート番号等の各種パラメータの変更や構成の見直し等、セキュリティ対策を十分に行ってください。使用時に発生したトラブルにつきまして、利用者が一切の責任を負うものとします。
概念図
本例では、SSL/TLSの終端はロードバランサーで行い、Clientとロードバランサーの間をHTTPS、ロードバランサーとFRUCtoSの間をHTTPで通信する構成を構築します。
本手順における前提
- AWSアカウント
- EC2起動、ロードバランサー作成、セキュリティグループ作成、証明書のリクエストの実行権限を有すること
- ドメイン取得
- DNS設定が可能なドメインを取得済であること
- DNSの設定として、DNSサーバにてCNAMEレコードとALIASレコードの登録が行えること
- 作業PC
- FRUCtoSの資材を取得していること
構築手順
EC2の起動
サービスの検索フィールドに「EC2」と入力し、表示されたサービス一覧から「EC2」をクリックします。
画面左のメニューから「インスタンス」をクリックします。
「インスタンスを起動」を押して、新規にEC2を立ち上げます。
必要なインスタンス設定を要件や環境に合わせて実施し、「インスタンスを起動」をクリックしてEC2を起動します。
設定内容は要件や環境によって異なることにご注意ください。
本手順では以下を設定しています。
設定項目 | 本手順での設定値 |
---|---|
名前 | FRUCtoS |
アプリケーションおよびOSイメージ(Amazonマシンイメージ) | Red Hat Enterprise Linux 9 |
インスタンスタイプ | t2.large FRUCtoS用Dockerの動作に必要な要件を満たすタイプを選択 |
キーペア(ログイン) | 「新しいキーペアの作成」から.pem のキーファイルを作成 |
インスタンス起動成功のメッセージを確認します。
EC2を用いたFRUCtoSの構築
EC2への接続の確認
先ほど起動したEC2へログインできることを確認します。
EC2メニューのインスタンスから、先ほど起動したEC2にチェックを入れ、「接続」をクリックします。
EC2への接続方法が表示されます。自身の接続環境に合致するタブに表示される接続方法に従って、起動したEC2へログインできることを確認します。
EC2へのFRUCtoSの資材の転送
FRUCtoSの資材を持つPCからEC2へ、当該資材を転送します。
本例では、Macのホームディレクトリ上のFRUCtoSの資材を、scpコマンドを用いてEC2へ転送しています。
scp -i [秘密鍵のパス] [転送するファイルのパス] [ユーザ名]@[パブリックIP]:[アップロード先のディレクトリパス]
転送が完了したらEC2にログインし、FRUCtoSの資材が転送されていることを確認します。
[ec2-user@ip-172-31-43-232 ~]$ ls -ll
total 448828
-rw-r--r--. 1 ec2-user ec2-user 459599050 Apr 18 07:18 fructos-2.2.0.zip
[ec2-user@ip-172-31-43-232 ~]$
Docker環境の構築
Docker設定手順の手順に従い、EC2上にDocker環境を構築します。
FRUCtoSの構築
構築手順の手順に従い、EC2にFRUCtoSを構築します。
本手順では Keycloak Gateway は使用しません。Keycloak Gatewayの手順はスキップします。
証明書の発行
HTTPS通信で必要となるSSL/TLS証明書を発行します。
ドメインの発行
お好きなドメインレジストラにてドメインをご用意ください。
本手順ではDNSの設定の際にCNAMEレコードとALIASレコードの登録を行います。
これらのレコードが登録できるレジストラをご選択ください。
AWS Certificate Manager (ACM) で証明書のリクエスト
ACMを利用して、SSL/TLS証明書をリクエストします。
サービスの検索で"Cer"と入力すると表示される「Certificate Manager」をクリックします。
「証明書をリクエスト」をクリックします。
「パブリック証明書をリクエスト」にチェックが入った状態で「次へ」をクリックします。
事前に用意したドメインを「完全修飾ドメイン名」に入力して、「リクエスト」をクリックします。
リクエストされた旨のメッセージにある「証明書を表示」をクリックします。
表示されたCNAME名とCNAME値を控えます。
CNAME名: _c6e0f05dd99166cf6b243429e7ab20a6.hem-awstest.site.
CNAME値: _12d57b13acbe22819b26315e0d961a82.mhbtsbpdnt.acm-validations.aws.