Docker imajından Native Node’u dağıtma¶
Wallarm Native Node, NGINX’ten bağımsız çalışır ve bazı connector’larla birlikte dağıtım için tasarlanmıştır. Native Node’u, resmi Docker imajından container’laştırılmış servisleriniz üzerinde çalıştırabilirsiniz.
Kullanım senaryoları¶
-
MuleSoft Mule veya Flex Gateway, Akamai, Cloudflare, Amazon CloudFront, Broadcom Layer7 API Gateway, Fastly, IBM DataPower için bir connector çözümünün parçası olarak Wallarm düğümünü, self-hosted bir Linux OS makinesinde dağıtmak istediğinizde.
Yükleyiciyi
connector-servermodunda kullanın. -
Istio tarafından yönetilen API’ler için gRPC tabanlı harici işleme filtresine ihtiyaç duyduğunuzda.
Yükleyiciyi
envoy-external-filtermodunda kullanın.
Native Node için Docker imajı, AWS ECS veya diğer Docker tabanlı ortamlar gibi container orkestrasyon platformlarını zaten kullanıyorsanız idealdir. Wallarm düğümü, servisinize bir Docker container’ı olarak çalışır ve API yönetim platformunuz için güvenlik filtreleme ve trafik inceleme sağlar.
Gereksinimler¶
-
Ana sisteminizde Docker kurulu olmalı
-
API yönetim platformunuzdan container’laştırılmış ortamınıza gelen erişim
-
Container’laştırılmış ortamınızdan aşağıdakilere giden erişim:
- Dağıtım için gereken Docker imajlarını indirmek üzere
https://hub.docker.com/r/wallarm - US/EU Wallarm Cloud için
https://us1.api.wallarm.comveyahttps://api.wallarm.com -
Saldırı tespit kuralları ve API spesifikasyonları güncellemelerini indirmek, ayrıca allowlist’e, denylist’e veya graylist’e alınmış ülke, bölge veya veri merkezleriniz için kesin IP’leri almak amacıyla aşağıdaki IP adresleri
- Dağıtım için gereken Docker imajlarını indirmek üzere
-
Native Node bulunan ECS örneğinizin önündeki yük dengeleyici için güvenilir bir SSL/TLS sertifikası gereklidir
-
Bunlara ek olarak, Wallarm Console içinde Administrator rolüne sahip olmalısınız
Sınırlamalar¶
-
Yük dengeleyiciyi güvenceye almak için öz-imzalı (self‑signed) SSL sertifikaları desteklenmez.
-
Özel engelleme sayfası ve engelleme kodu yapılandırmaları henüz desteklenmiyor.
-
Wallarm kuralı ile hız sınırlama desteklenmiyor.
-
Çok kiracılık (multitenancy) henüz desteklenmiyor.
Dağıtım¶
1. Docker imajını çekin¶
2. Yapılandırma dosyasını hazırlayın¶
Native Node için aşağıdaki asgari yapılandırma ile wallarm-node-conf.yaml dosyasını oluşturun:
Tüm yapılandırma parametreleri (Docker imajı ile Native Node all-in-one yükleyicisi için aynıdır)
3. Wallarm token’ını hazırlayın¶
Düğümü kurmak için, düğümü Wallarm Cloud’a kaydetmekte kullanılacak bir token’a ihtiyacınız olacak. Token’ı hazırlamak için:
-
Wallarm Console → Settings → API tokens bölümünü US Cloud veya EU Cloud üzerinde açın.
-
Node deployment/Deploymentkullanım türüne sahip bir API token bulun veya oluşturun. -
Bu token’ı kopyalayın.
4. Docker container’ını çalıştırın¶
Docker imajını çalıştırmak için aşağıdaki komutları kullanın. wallarm-node-conf.yaml dosyasını container’a bağlayın.
| Ortam değişkeni | Açıklama | Gerekli |
|---|---|---|
WALLARM_API_TOKEN | Node deployment/Deployment kullanım türüne sahip API token. | Evet |
WALLARM_LABELS | Düğüm örneklerini gruplaştırmak için group etiketini ayarlar, örneğin:WALLARM_LABELS="group=<GROUP>" düğüm örneğini <GROUP> örnek grubuna yerleştirir (varsa mevcut olan, yoksa oluşturulacaktır). | Evet |
WALLARM_API_HOST | Wallarm API sunucusu:
api.wallarm.com. | Evet |
WALLARM_APID_ONLY (0.12.1 ve üzeri) | Bu modda, trafiğinizde tespit edilen saldırılar düğüm tarafından yerel olarak engellenir (etkinleştirildiyse) ancak Wallarm Cloud’a aktarılmaz. Bu arada, API Discovery ve bazı diğer özellikler tam işlevsel kalır, API envanterinizi tespit eder ve görselleştirme için Cloud’a yükler. Bu mod, önce API envanterini gözden geçirmek ve hassas verileri belirlemek, ardından kontrollü saldırı verisi aktarımını planlamak isteyenler içindir. Ancak, saldırı aktarımının devre dışı bırakılması nadirdir; çünkü Wallarm saldırı verilerini güvenle işler ve gerekirse hassas saldırı verisi maskeleme sağlar. Daha fazla bilgi Varsayılan: false. | Hayır |
-
-pseçeneği ana makine ve container portlarını eşler:- İlk değer (
80), dış trafiğe açılan ana makinenin portudur. - İkinci değer (
5050), container’ın portudur vewallarm-node-conf.yamldosyasındakiconnector.addressveyaenvoy_external_filter.addressayarıyla eşleşmelidir.
- İlk değer (
-
Yapılandırma dosyası, container içinde
/opt/wallarm/etc/wallarm/go-node.yamlolarak bağlanmalıdır.
5. Wallarm kodunu bir API yönetim hizmetine uygulayın¶
Düğüm dağıtıldıktan sonra, trafiği dağıtılan düğüme yönlendirmek için Wallarm kodunu API yönetim platformunuza veya hizmetinize uygulamanız gerekir.
-
Connector’ünüz için Wallarm kod paketini almak üzere sales@wallarm.com ile iletişime geçin.
-
Paketi API yönetim platformunuza uygulamak için platforma özel talimatları izleyin:
Düğüm çalışmasını doğrulama¶
Düğümün trafiği algıladığını doğrulamak için günlükleri kontrol edebilirsiniz:
-
Native Node günlükleri varsayılan olarak
/opt/wallarm/var/log/wallarm/go-node.logdosyasına yazılır, ayrıca stdout’a ek çıktı verilir. -
Verilerin Wallarm Cloud’a gönderilip gönderilmediği, tespit edilen saldırılar vb. gibi filtreleme düğümünün standart günlükleri
/opt/wallarm/var/log/wallarmdizininde bulunur. -
Ek hata ayıklama için,
log.levelparametresinidebugolarak ayarlayın.
Ayrıca, http://<NODE_IP>:9000/metrics adresinde sunulan Prometheus metriklerini kontrol ederek düğümün çalışmasını doğrulayabilirsiniz.
Yükseltme¶
Düğümü yükseltmek için talimatları izleyin.