ACM の証明書を他の ELB に移し替える
投稿日: 2022/12/30
更新日: 2022/12/30
更新日: 2022/12/30
タグ:
AWS
概要
システムをサーバー移行した際にサブドメイン用の証明書をELB1からELB2へ移した。その時の備忘録。
前提
変更前

変更後

ドメイン
- 変更前
- ELB1
- example.com
- ELB2
- sub.example.com
- ELB1
- 変更後
- ELB1
- example.com
- sub.example.com
- ELB2 (削除)
- ELB1
設定の確認
Route 53
Route 53 > ホストゾーン > <ドメイン名>
表1
| レコード名 | タイプ | ルーティングポリシー | 値/トラフィックのルーティング先 |
|---|---|---|---|
| example.com | A | シンプル | <ELB1> |
| sub.example.com | A | シンプル | <ELB2> |
| <何らかの値>.example.com | CNAME | シンプル | <ACM1> |
| <何らかの値>.sub.example.com | CNAME | シンプル | <ACM2> |
ACM
AWS CertificateManager > 証明書 > <証明書id>
確認できること
表2
| 項目名 | 内容 |
|---|---|
| 証明書のステータス | ステータス:発行済み 更新ステータス:成功 |
| 証明書のステータス | ステータス:発行済み 更新ステータス:成功 |
| ドメイン | <Route53 のレコードがあれば表示される> |
| 関連づけられたリソース | <証明書が使われているリソースが表示される> 例:ELB2 の HTTPS(443) に関連 |
ロードバランサー
EC2 > Load balancers > <ロードバランサー名> > Listeners > HTTPS:443 > Certificates
下記の項目が存在
- Default certificate: <ドメイン名>
- デフォルトの証明書を変更(1つしか選択できない)することが可能
- Listener certificates for SNI
- Server Name Indication (SNI)を使った複数のTLS/SSL証明書を追加削除が可能
(参考)
Application Load BalancerがSNIを利用した複数のTLS証明書のスマートセレクションをサポートしました - AWS
変更の仕方
- Route 53:ドメインのルーティング先を表3のように変更
- ロードバランサー:ELB2は不要になるので
HTTPS:443 listenerを削除
sub.example.com の証明書がELB2の Default certificate に設定されていたので削除して関連付を外す - ロードバランサー:ELB1 の SNI に追加
- SNIセクションにある
Add certificateを押下 ACM and IAM certificatesから追加したいドメインを選択しInclude as pending belowを押下
- SNIセクションにある
表3
| レコード名 | タイプ | ルーティングポリシー | 値/トラフィックのルーティング先 |
|---|---|---|---|
| example.com | A | シンプル | <ELB1> |
| sub.example.com | CNAME |
シンプル | example.com |
| <何らかの値>.example.com | CNAME | シンプル | <ACM1> |
| <何らかの値>.sub.example.com | CNAME | シンプル | <ACM2> |
おわりに
上記を正しく設定したことで、証明書を再発行しなくても app2 を sub.example.com で閲覧した際に証明書が正しく適用できていることが確認できました。