Application Load Balancer (ALB) は、SM2 証明書と SM 暗号スイートを含むカスタム TLS セキュリティポリシーをサポートしており、SM 対応ブラウザが Transport Layer Cryptography Protocol (TLCP) 経由でサービスにアクセスできるようにします。これにより、中国の暗号規格および金融・政府などの業界における等級保護制度 (MLPS) レベル 3 の要件を満たす HTTPS 暗号化を提供します。
前提条件
-
SM 証明書機能はデフォルトで有効になっていません。クォータセンターにアクセスして、必要なクォータを申請してください。
-
カスタムドメイン名を登録済みであること。この例の ALB インスタンスは中国 (上海) にあるため、ドメイン名には完了したICP 登録が必要です。
-
Certificate Management Service で SM2 証明書を購入またはアップロード済みであること。証明書は、ICP 登録が完了したドメイン名と一致する必要があります。
-
中国 (上海) に、vSwitch
VSW1(ゾーン E) とVSW2(ゾーン F) を持つVPC1という名前の VPC を作成済みであること。
操作手順
1. Elastic Compute Service (ECS) インスタンスの作成とサービスのデプロイ
-
以下の設定で ECS インスタンスを作成します。
-
[名前]: ECS01
-
[リージョン]: 中国 (上海)
-
VPC:
VPC1 -
[vSwitch]:
VSW1 -
イメージ: Alibaba Cloud Linux 3.2104 LTS 64-bit
-
-
ECS01 インスタンスに接続します。以下のコマンドを実行して、Nginx サービスをデプロイします。
sudo yum install -y nginx sudo systemctl start nginx echo "Hello from ECS backend" | sudo tee /usr/share/nginx/html/index.html -
ECS インスタンスのセキュリティグループに、受信トラフィックを許可する高優先度のインバウンドルールを追加します。
-
[ポリシー]: 許可
-
[プロトコル]: カスタム TCP
-
ソース:
IPv4を選択し、次にこのVPC CIDRブロックを選択します。 -
宛先 (このインスタンス):
ポートを選択し、次にHTTP (80)を選択します。
-
「ウィザードを使用したインスタンスの作成」、「接続方法」、「セキュリティグループルールの追加」をご参照ください。
2. ALB インスタンスの作成
-
ALB コンソールにログインし、[中国 (上海)] リージョンを選択して、ALB の作成 をクリックします。
-
購入ページで、以下のパラメーターを指定し、今すぐ作成 をクリックします。
-
インスタンスネットワークタイプ: [インターネット] を選択します。
-
VPC:
VPC1を選択します。 -
ゾーン:
VSW1を持つ [上海ゾーンE] と、VSW2を持つ [上海ゾーンF] を選択します。[EIPの割り当て] を有効にします。 -
IPバージョン: [IPv4] を選択します。
-
エディション (インスタンス料金): [Standard] を選択します。
-
-
注文確認 ページで、インスタンス構成を確認し、今すぐ有効化 をクリックします。
3. サーバーグループの作成とサーバーの追加
-
サーバーグループコンソールで、リージョンとして中国 (上海)が選択されていることを確認してから、サーバーグループの作成 をクリックします。
-
サーバーグループを次のように設定し、作成 をクリックします。
-
[サーバーグループタイプ]: サーバータイプ を選択します。
-
[サーバーグループ名]:
sg-nginxと入力します。 -
[VPC]:
VPC1を選択します。 -
[バックエンドサーバープロトコル]: デフォルト値
HTTPを使用します。
-
-
サーバーグループが作成されました ダイアログボックスで、バックエンドサーバーの追加 をクリックします。
ECS01を選択し、次へ をクリックします。ポート/重み ステップで、サーバーの ポート を80に設定し、OK をクリックします。
4. カスタム TLS セキュリティポリシーの作成
SM2 証明書には、リスナーに関連付けられた SM 暗号スイートを含むカスタム TLS セキュリティポリシーが必要です。システムセキュリティポリシーには SM 暗号スイートは含まれていません。
-
ALB コンソールの左側のナビゲーションペインで、TLS セキュリティポリシー をクリックします。カスタムポリシー タブで、カスタムポリシーの作成 をクリックします。
-
表示されたパネルで、ポリシーの 名前 を
gm-tls-policyに、最低バージョン を TLS 1.0 以降 に設定します。暗号スイート セクションで、ECC-SM2-WITH-SM4-SM3を選択済みボックスに移動し、作成 をクリックします。
ECC-SM2-WITH-SM4-SM3は、ECC-SM2-SM4-CBC-SM3とECC-SM2-SM4-GCM-SM3のエイリアスです。
5. SM2 証明書を使用した HTTPS リスナーの作成
-
ALB コンソールで、対象インスタンスの ID をクリックして インスタンスの詳細 ページに移動し、リスナー タブで リスナーの作成 をクリックします。
-
リスナーの設定 ステップで、リスナープロトコルの選択 を HTTPS に、リスニングポート を
443に設定します。次に、次へ をクリックします。 -
SSL 証明書の設定 ステップで、お使いの SM2 証明書を選択します。証明書リストにアルゴリズムタイプが表示され、
SM2は SM2 証明書を示します。TLS セキュリティポリシー にgm-tls-policyを選択し、次へ をクリックします。 -
サーバーグループ ステップで、
sg-nginxサーバーグループを選択し、次へ をクリックします。 -
設定の確認 ステップで、設定を確認し、送信 をクリックします。
SM2 証明書を設定した後は、SM 暗号スイートを含むカスタム TLS セキュリティポリシーを選択する必要があります。選択しない場合、クライアントはサービスにアクセスできません。
6. ドメイン名前解決の設定
カスタムドメイン名を ALB インスタンスの DNS 名にマッピングする CNAME レコードを追加します。
この例では、Alibaba Cloud DNS を使用します。ドメイン名が Alibaba Cloud に登録されていない場合は、まずドメイン名を Alibaba Cloud DNS コンソールに追加してください。
-
ALB コンソールで、対象のインスタンスの ドメイン名 をコピーします。
-
Alibaba Cloud DNS コンソールにログインします。対象のドメイン名の Actions 列で 解決設定 をクリックします。解決設定 ページで、Add Record をクリックします。
-
以下の情報で CNAME レコードを追加し、OK をクリックします。
-
[Record Type]: CNAME を選択します。
-
[Hostname]:
sm2などのプレフィックスを入力します。カスタムドメイン名がexample.comの場合、ALB インスタンスへのアクセスに使用されるドメイン名はsm2.example.comになります。 -
Query Source と TTL: デフォルト値のままにします。
-
[Record Value]: ALB インスタンスの DNS 名を入力します。
-
-
Change Resource Record Confirmation ダイアログボックスで、DNS レコード情報を確認し、OK をクリックします。
7. 設定の確認
-
sm2.example.comを手順 6 で設定したドメイン名に置き換えます。DNS レコードが有効になっていることを確認してください。 -
SM2 でセキュリティ保護された Web サイトにアクセスするには、SM 対応ブラウザが必要です。この例では、ZOS ブラウザを使用します。
SM HTTPS の確認
ZOS ブラウザで、https://sm2.example.com にアクセスします。アドレスバーのロックアイコンをクリックして、証明書を表示します。証明書タイプが SM2 であれば、設定は成功です。
詳細情報
制限事項
-
アップグレード済みの ALB インスタンスのみが SM2 証明書をサポートします。アップグレード前のインスタンスからサービスを移行するには、「ALB インスタンスのクローン作成」を使用してください。
-
Standard および WAF 有効化 ALB インスタンスのみが SM2 証明書をサポートします。Basic および Advanced エディションはこの機能をサポートしていません。
-
SM2 証明書は、相互認証または SM2 CA 証明書をサポートしていません。
課金
-
ALB インスタンス: ALB は従量課金とサブスクリプション課金をサポートしています。詳細については、「ALB 課金の概要」をご参照ください。
-
ECS インスタンス: 詳細については、「ECS 課金の概要」をご参照ください。テストの場合は、低スペックの従量課金インスタンスを作成し、使用後にリリースすることで、不要な料金を回避できます。
-
ドメイン名および DNS 解決料金: ドメイン名プロバイダーの料金に加えて、Alibaba Cloud DNS はパブリック権威 DNS 解決に対して課金します。
FAQ
SM 対応ブラウザでの SSL ハンドシェイクエラー
-
カスタム TLS セキュリティポリシーで
ECC-SM2-WITH-SM4-SM3が選択されていることを確認してください。 -
リスナーが SM 暗号スイートを含むカスタム TLS セキュリティポリシーを使用していることを確認してください。