← Провайдер Cloudflare Terraform / terraform / tutorial
3. Настройка параметров HTTPS
После настройки базовых записей DNS вы можете настроить параметры зоны с помощью Terraform. В этом руководстве показано, как включить TLS 1.3, Automatic HTTPS Rewrites, а также Режим Strict SSL с использованием обновленного провайдера v5.
Предварительные требования
- Завершенные руководства 1 и 2
- Действующий SSL-сертификат на исходном сервере (используйте Cloudflare Origin CA , чтобы создать сертификат для строгого режима SSL)
1. Создайте конфигурацию настроек зоны
Создайте новую ветку и добавьте настройки зоны:
git checkout -b step3-zone-settingsДобавьте следующее в свой main.tf файле:
# Enable TLS 1.3
resource "cloudflare_zone_setting" "tls_1_3" {
zone_id = var.zone_id
setting_id = "tls_1_3"
value = "on"
}
# Enable automatic HTTPS rewrites
resource "cloudflare_zone_setting" "automatic_https_rewrites" {
zone_id = var.zone_id
setting_id = "automatic_https_rewrites"
value = "on"
}
# Set SSL mode to strict
resource "cloudflare_zone_setting" "ssl" {
zone_id = var.zone_id
setting_id = "ssl"
value = "strict"
}2. Просмотрите изменения и примените их
Просмотрите предлагаемые изменения:
terraform planОжидаемый результат
Plan: 3 to add, 0 to change, 0 to destroy.
Terraform will perform the following actions:
# cloudflare_zone_setting.automatic_https_rewrites will be created
+ resource "cloudflare_zone_setting" "automatic_https_rewrites" {
+ setting_id = "automatic_https_rewrites"
+ value = "on"
+ zone_id = "your-zone-id"
}
# cloudflare_zone_setting.ssl will be created
+ resource "cloudflare_zone_setting" "ssl" {
+ setting_id = "ssl"
+ value = "strict"
+ zone_id = "your-zone-id"
}
# cloudflare_zone_setting.tls_1_3 will be created
+ resource "cloudflare_zone_setting" "tls_1_3" {
+ setting_id = "tls_1_3"
+ value = "on"
+ zone_id = "your-zone-id"
}Зафиксируйте и слейте изменения:
git add main.tf
git commit -m "Step 3 - Enable TLS 1.3, automatic HTTPS rewrites, and strict SSL"
git checkout main
git merge step3-zone-settings
git pushПрежде чем применять изменения, попробуйте подключиться по TLS 1.3. По умолчанию сделать это не должно получиться. Чтобы повторить этот тест, вам потребуется скомпилировать curl относительно BoringSSL ↗.
curl -v --tlsv1.3 https://www.example.com 2>&1 | grep "SSL connection\|error"Как показано выше, вы должны получить ошибку, поскольку TLS 1.3 еще не включён для вашей зоны. Включите его, выполнив terraform apply и повторите попытку.
Примените конфигурацию:
terraform applyТип yes при появлении запроса.
3. Проверьте настройки
Повторите ту же команду, что и раньше. На этот раз она выполнится успешно.
curl -v --tlsv1.3 https://www.example.com 2>&1 | grep "SSL connection\|error"