serverapps:configmgmt:terraform:acmcert
差分
このページの2つのバージョン間の差分を表示します。
| 次のリビジョン | 前のリビジョン | ||
| serverapps:configmgmt:terraform:acmcert [2018/10/10 10:22] – 作成 hayashi | serverapps:configmgmt:terraform:acmcert [2018/11/05 09:12] (現在) – hayashi | ||
|---|---|---|---|
| 行 1: | 行 1: | ||
| - | ====== ACMによる証明書の取得とドメイン検証 ====== | + | ====== |
| + | |||
| + | 掲載したコードをみてくださいで終わっても良いのですが、まぁそれではあんまりだと言うことで。 | ||
| + | まぁ、Terraformの公式サイトと大差ありませんがコメントは入ってるよと言うくらいです。 | ||
| + | |||
| + | ===== 前提 ===== | ||
| + | * ワイルドカードはやりません((万が一の場合、証明書を利用している全サービスに影響が及ぶので...)) | ||
| + | * SANの利用も同様にしません | ||
| + | * なので、対象はFQDN(サブドメイン付き)1つのみ | ||
| + | |||
| + | ===== 補足 ===== | ||
| + | |||
| + | ワイルドカードの証明書は便利ですが、万が一の場合利用する全サービスに影響が及ぶことを考えれば利用すべきではないと思っています。 | ||
| + | 特に、ACMのようにマネージドで自動的に更新されるのにワイルドカード証明書を使う必要はないと思います。 | ||
| + | |||
| + | セキュリティのために証明書を利用するのに、セキュリティを損ねる運用を採用するのは本末転倒だと思っています。 | ||
| + | |||
| + | |||
| + | ===== 実際のスクリプト ===== | ||
| + | |||
| + | <code json> | ||
| + | # zone apex domain: | ||
| + | variable " | ||
| + | description = " | ||
| + | default = " | ||
| + | } | ||
| + | # 取得対象のFQDN(サブドメイン付き) | ||
| + | variable " | ||
| + | description = "Sub Domain Name" | ||
| + | default = " | ||
| + | } | ||
| + | # 検証方法(mailはterraform外部で手作業が必要なので非推奨) | ||
| + | variable " | ||
| + | description | ||
| + | default | ||
| + | } | ||
| + | # tagはお好みでどうぞ | ||
| + | variable " | ||
| + | description | ||
| + | default | ||
| + | } | ||
| + | # 証明書発行リクエスト | ||
| + | resource " | ||
| + | domain_name | ||
| + | validation_method = " | ||
| + | |||
| + | tags { | ||
| + | Environment = " | ||
| + | } | ||
| + | |||
| + | lifecycle { | ||
| + | # lifecycleにこれを入れておくのが推奨されています | ||
| + | create_before_destroy = true | ||
| + | } | ||
| + | } | ||
| + | |||
| + | # Route53で管理されているドメインの情報を持ってきます | ||
| + | data " | ||
| + | name = " | ||
| + | private_zone = false | ||
| + | } | ||
| + | |||
| + | # DNSによる検証用レコードの登録 | ||
| + | resource " | ||
| + | name = " | ||
| + | type = " | ||
| + | zone_id = " | ||
| + | records = [" | ||
| + | ttl = 60 | ||
| + | } | ||
| + | # 検証 | ||
| + | resource " | ||
| + | certificate_arn = " | ||
| + | validation_record_fqdns = [" | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ===== 利用 ===== | ||
| + | certのarnを利用します | ||
| + | |||
| + | resource " | ||
| + | # snip... | ||
| + | certificate_arn | ||
| + | } | ||
serverapps/configmgmt/terraform/acmcert.1539166956.txt.gz · 最終更新: by hayashi
