Kong Ingress Controller için Wallarm Connector¶
Kong Ingress Controller tarafından yönetilen API’leri korumak için Wallarm, Kubernetes ortamınıza sorunsuzca entegre olan bir connector sağlar. Wallarm filtreleme düğümünü dağıtıp özel bir Lua eklentisi aracılığıyla Kong’a bağlayarak, gelen trafik gerçek zamanlı analiz edilir ve istekler hizmetlerinize ulaşmadan önce Wallarm kötü amaçlı istekleri engelleyebilir.
Kong Ingress Controller için Wallarm connector yalnızca in-line modunu destekler:
Kullanım senaryoları¶
Bu çözüm, Kong API Gateway çalıştıran Kong Ingress Controller tarafından yönetilen API’lerin güvenliğini sağlamak için önerilir.
Sınırlamalar¶
Bu kurulum, Wallarm’ın yalnızca Wallarm Console UI üzerinden ince ayar yapılmasına izin verir. Dosya tabanlı yapılandırma gerektiren bazı Wallarm özellikleri bu uygulamada desteklenmez, örneğin:
Gereksinimler¶
Dağıtıma devam etmeden önce aşağıdaki gereksinimleri karşıladığınızdan emin olun:
-
Kubernetes kümesinde dağıtılmış ve API trafiğinizi yöneten Kong Ingress Controller
-
Helm v3 paket yöneticisi
-
https://us1.api.wallarm.com
(US Wallarm Cloud) veyahttps://api.wallarm.com
(EU Wallarm Cloud) erişimi -
Wallarm Helm chart’ını eklemek için
https://charts.wallarm.com
erişimi -
Docker Hub üzerindeki Wallarm depolarına
https://hub.docker.com/r/wallarm
erişimi -
Saldırı tespit kurallarının güncellemelerini indirmek ve allowlisted, denylisted veya graylisted ülkeleriniz, bölgeleriniz veya veri merkezleriniz için kesin IP’leri almak amacıyla aşağıdaki IP adreslerine erişim
-
US Cloud veya EU Cloud için Wallarm Console’a Administrator erişimi
-
Node örneği alan adı için güvenilir bir SSL/TLS sertifikası gereklidir. Öz imzalı sertifikalar henüz desteklenmemektedir.
Dağıtım¶
Kong Ingress Controller tarafından yönetilen API’leri güvenceye almak için şu adımları izleyin:
-
Kubernetes kümenizde Wallarm filtreleme düğümü servisini dağıtın.
-
Gelen trafiği analiz için Kong Ingress Controller’dan Wallarm filtreleme düğümüne yönlendirmek üzere Wallarm Lua eklentisini edinin ve dağıtın.
1. Wallarm Native Node dağıtın¶
Wallarm düğümünü Kubernetes kümenizde ayrı bir servis olarak dağıtmak için talimatları izleyin.
2. Wallarm Lua eklentisini edinin ve dağıtın¶
-
Kong Ingress Controller’ınız için Wallarm Lua eklenti kodunu edinmek amacıyla support@wallarm.com ile iletişime geçin.
-
Eklenti kodu ile bir ConfigMap oluşturun:
<KONG_NS>
, Kong Ingress Controller’ın dağıtıldığı ad alanıdır. -
Wallarm Lua eklentisini yüklemek için Kong Ingress Controller’a ait
values.yaml
dosyanızı güncelleyin: -
Kong Ingress Controller’ı güncelleyin:
-
Bir
KongClusterPlugin
kaynağı oluşturarak ve Wallarm düğüm servis adresini belirterek Wallarm Lua eklentisini etkinleştirin:echo ' apiVersion: configuration.konghq.com/v1 kind: KongClusterPlugin metadata: name: kong-lua annotations: kubernetes.io/ingress.class: kong config: wallarm_node_address: "http://native-processing.wallarm-node.svc.cluster.local:5000" plugin: kong-lua ' | kubectl apply -f -
wallarm-node
, Wallarm düğüm servisinin dağıtıldığı ad alanıdır. -
Seçili servisler için eklentiyi etkinleştirmek üzere Ingress’inize veya Gateway API rotanıza aşağıdaki anotasyonları ekleyin:
Test¶
Dağıtılan connector’ün işlevselliğini test etmek için şu adımları izleyin:
-
Wallarm pod’larının çalışır durumda olduğunu doğrulayın:
wallarm-node
, Wallarm düğüm servisinin dağıtıldığı ad alanıdır.Her pod durumunun STATUS: Running veya READY: N/N olması gerekir. Örneğin:
-
Kong Gateway IP’sini alın (genellikle bir
LoadBalancer
servisi olarak yapılandırılır): -
Test Path Traversal saldırısıyla balancera istek gönderin:
Düğüm varsayılan olarak monitoring mode modunda çalıştığından, Wallarm düğümü saldırıyı engellemez ancak kaydeder.
-
Wallarm Console → US Cloud veya EU Cloud içindeki Attacks bölümünü açın ve saldırının listede görüntülendiğinden emin olun.
Wallarm Lua eklentisini yükseltme¶
Dağıtılmış Wallarm Lua eklentisini daha yeni bir sürüme yükseltmek için:
-
Kong Ingress Controller’ınız için güncellenmiş Wallarm Lua eklenti kodunu edinmek üzere support@wallarm.com ile iletişime geçin.
-
Eklenti kodu ile ConfigMap’i güncelleyin:
<KONG_NS>
, Kong Ingress Controller’ın dağıtıldığı ad alanıdır.
Eklenti yükseltmeleri, özellikle ana sürüm güncellemelerinde, bir Wallarm düğüm yükseltmesi gerektirebilir. Sürüm güncellemeleri ve yükseltme talimatları için Wallarm Native Node değişiklik günlüğüne bakın. Kullanımdan kaldırmaları önlemek ve gelecekteki yükseltmeleri kolaylaştırmak için düzenli düğüm güncellemeleri önerilir.