Terraform kullanarak Wallarm'ı yönetme¶
Altyapılarınızı yönetmek için Terraform kullanıyorsanız, Wallarm'ı yönetmek için de onu kullanmak sizin için rahat bir seçenek olabilir. Terraform için Wallarm provider bunu yapmanıza olanak tanır.
Gereksinimler¶
-
Terraform temellerini bilmek
-
Terraform 0.15.5 veya daha yeni ikili dosya
-
US veya EU Bulut ortamında Wallarm Console içinde Administrator rolüne sahip hesaba erişim
-
US Wallarm Cloud ile çalışırken
https://us1.api.wallarm.com
a veya EU Wallarm Cloud ile çalışırkenhttps://api.wallarm.com
a erişim. Lütfen erişimin güvenlik duvarı tarafından engellenmediğinden emin olun
Sağlayıcının kurulumu¶
-
Aşağıdakini Terraform yapılandırmanıza kopyalayıp yapıştırın:
-
terraform init
komutunu çalıştırın.
Sağlayıcıyı Wallarm hesabınıza bağlama¶
Wallarm Terraform provider'ını US veya EU Cloud içindeki Wallarm hesabınıza bağlamak için, Terraform yapılandırmanızda API erişim kimlik bilgilerini ayarlayın:
-
<WALLARM_API_TOKEN>
, Wallarm hesabınızın API'sine erişim sağlar. Nasıl alınır → -
<CLIENT_ID>
, kiracının (müşteri) kimliğidir; yalnızca çoklu kiracılık özelliği kullanıldığında gereklidir. Burada açıklandığı gibiuuid
değilid
değerini alın.
Ayrıntılar için Wallarm provider belgelerine bakın: ayrıntılar.
Sağlayıcı ile Wallarm'ı yönetme¶
Wallarm provider ile, Terraform aracılığıyla şunları yönetebilirsiniz:
-
Global filtreleme modu
Wallarm Terraform provider ve Edge düğümleri
Şu anda, Edge inline ve connector düğümleri Wallarm Terraform provider üzerinden yönetilememektedir.
Listelenen işlemlerin nasıl gerçekleştirileceğini Wallarm provider belgelerinde görebilirsiniz.
Kullanım örneği¶
Aşağıda Wallarm için Terraform yapılandırma örneği verilmiştir:
provider "wallarm" {
api_token = "<WALLARM_API_TOKEN>"
api_host = "https://us1.api.wallarm.com"
}
resource "wallarm_global_mode" "global_block" {
waf_mode = "default"
}
resource "wallarm_application" "tf_app" {
name = "Terraform Application 001"
app_id = 42
}
resource "wallarm_rule_mode" "tiredful_api_mode" {
mode = "monitoring"
action {
point = {
instance = 42
}
}
action {
type = "regex"
point = {
scheme = "https"
}
}
}
Yapılandırma dosyasını kaydedin, ardından terraform apply
komutunu çalıştırın.
Yapılandırma şunları yapar:
-
US Cloud → şirket hesabına, sağlanan Wallarm API belirteci ile bağlanır.
-
resource "wallarm_global_mode" "global_block"
→ global filtreleme modunuLocal settings (default)
olarak ayarlar; bu, filtreleme modunun her düğümde yerel olarak kontrol edildiği anlamına gelir. -
resource "wallarm_application" "tf_app"
→Terraform Application 001
adlı,42
kimliğine sahip uygulamayı oluşturur. -
resource "wallarm_rule_mode" "tiredful_api_mode"
→ HTTPS protokolü üzerinden42
kimlikli uygulamaya gönderilen tüm istekler için trafik filtreleme modunuMonitoring
olarak ayarlayan bir kural oluşturur.
Wallarm ve Terraform hakkında daha fazla bilgi¶
Terraform, bir dizi entegrasyonu (providers) ve kullanıma hazır yapılandırmaları (modules) birden çok sağlayıcı tarafından sağlanan herkese açık kayıt üzerinden kullanıcılara sunar.
Bu kayıt içine Wallarm şunları yayımladı:
-
Terraform aracılığıyla Wallarm'ı yönetmek için Wallarm provider. Bu yazıda açıklanmıştır.
-
Terraform uyumlu bir ortamdan AWS'ye düğüm dağıtmak için Wallarm modülü.
Bu ikisi farklı amaçlar için kullanılan, birbirinden bağımsız araçlardır. Birini kullanmak için diğerine ihtiyaç yoktur.