CLB erişim kontrolü, bir dinleyiciye IP izin veya engelleme listesi uygulayarak istemci isteklerini filtreler.
ACL oluşturun
ACL, IP girdilerinden oluşan bir koleksiyondur. İzin veya engelleme listesi filtrelemesini uygulamak için bir ACL'yi dinleyiciyle ilişkilendirin.
Konsol
CLB konsolunun Erişim Kontrolü sayfasına şuraya gidin. Üst gezinme çubuğunda hedef örneğin dağıtıldığı bölgeyi seçin ve ardından Create ACL öğesine tıklayın.
-
Create ACL panelinde bir ACL Name girin, bir IP Version (IPv4 veya IPv6) seçin, gerektiği gibi IP girdileri ekleyin ve sonra Create düğmesine tıklayın.
IPv4 örnekleri yalnızca IPv4 ACL'leri destekler; IPv6 örnekleri ise yalnızca IPv6 ACL'leri destekler. IP sürümünü CLB örneğinizle eşleştirin.
API
Bir ACL oluşturmak için CreateAccessControlList API çağrısını yapın.
IP girdileri ekleyin
Mevcut bir ACL'ye IP girdileri ekleyin.
Konsol
CLB konsolunun Erişim Kontrolü sayfasına gidin ve ayrıntılar sayfasını açmak için hedef ACL'nin ID değerine tıklayın. IP girdilerini aşağıdaki yollardan biriyle ekleyin:
Tek bir girdi ekleyin: Add Entry öğesine tıklayın. İletişim kutusunda bir IP Address/CIDR Block ve bir Remarks girin, ardından Add düğmesine tıklayın.
-
Girdileri toplu olarak ekleyin: Add ACL Entries seçeneğine tıklayın ve girdileri aşağıdaki biçimde girin:
Her satıra bir girdi yazın. Yeni bir satır başlatmak için Enter tuşuna basın.
IP adresini veya CIDR bloğunu açıklamasından dikey çubuk (|) ile ayırın. Örneğin, 192.168.1.0/24|description.
Tek seferde en fazla 50 girdi ekleyebilirsiniz.
Girdi listesinden girdileri silebilir veya dışa aktarabilirsiniz.
API
Bir IP girdisi eklemek için AddAccessControlListEntry API çağrısını yapın.
Bir IP girdisini silmek için RemoveAccessControlListEntry API çağrısını yapın.
Erişim kontrolünü etkinleştirin veya devre dışı bırakın
Erişim kontrolünü etkinleştirmek için bir ACL'yi dinleyiciyle ilişkilendirin. Artık ihtiyaç duyulmadığında istediğiniz zaman devre dışı bırakın.
İlişkili ACL boşsa erişim kontrolü etkili olmaz; dinleyici, izin veya engelleme listesi modundan bağımsız olarak tüm istekleri iletir. Bir izin listesini etkinleştirmeden önce, hizmet kesintilerini önlemek amacıyla ACL'nin izin verilen IP adreslerini içerdiğini doğrulayın.
Tek bir dinleyiciyle birden çok ACL ilişkilendirirseniz, tüm ACL'lerdeki IP girdileri örtüşmemelidir.
Konsol
CLB konsolunun Örnekler sayfasına şuraya gidin. Üst gezinme çubuğunda hedef örneğin dağıtıldığı bölgeyi seçin ve ardından örnek ID değerine tıklayın.
-
Listener sekmesine tıklayın. Hedef dinleyiciyi bulun ve ACL sütununda Enable veya Close seçeneğine tıklayın.
Enable: Görüntülenen iletişim kutusunda bir Access Control Mode (Whitelist: Allows Specified IP Addresses to Access the SLB Instance veya Blacklist: Forbids Specified IP Addresses to Access the SLB Instance) ve bir ACL seçin, ardından Save düğmesine tıklayın.
Close: Onay iletişim kutusunda OK düğmesine tıklayın.
Erişim kontrolünü dinleyici ayrıntıları sayfasının Access Control bölümünden de etkinleştirebilir veya devre dışı bırakabilirsiniz.
Bir dinleyici oluştururken de erişim kontrolünü etkinleştirebilirsiniz.
API
CreateLoadBalancerHTTPSListener veya SetLoadBalancerHTTPSListenerAttribute gibi bir dinleyici oluşturmak veya değiştirmek için bir API işlemi çağırdığınızda, aşağıdaki parametreleri kullanarak erişim kontrolünü yapılandırın:
AclStatus: Erişim kontrolünün etkinleştirilip etkinleştirilmeyeceğini belirtir. Geçerli değerler:
onveoff.AclType: Erişim kontrolü türü. Geçerli değerler:
white(izin listesi) veblack(engelleme listesi).AclId: İlişkili ACL'nin ID değeri.
SSS
İzin listem neden tüm IP'lere izin veriyor?
Neden: Dinleyicide erişim kontrolü devre dışı veya ilişkili ACL boş (boş bir ACL tüm trafiğe izin verir).
Çözüm: CLB örneğinizin Listener sekmesine gidin. Hedef dinleyici için ACL sütununun Enabled gösterdiğini doğrulayın ve ilişkili ACL'nin IP girdileri içerdiğinden emin olun.
Engelleme listem neden IP'leri engelleyemiyor?
Neden: İstekler bir proxy (CDN veya WAF) üzerinden geçtiğinde, CLB gerçek istemci IP'si yerine proxy'nin kaynak sunucuya dönüş IP'sini görür; bu nedenle engelleme listesi kuralları eşleşmez.
Çözüm: Engelleme listesini proxy katmanında (CDN veya WAF) yapılandırın. İstemciler proxy'yi atlayabiliyorsa, yalnızca proxy'nin kaynak sunucuya dönüş IP aralıklarına izin veren bir CLB izin listesi ekleyin.
Nginx allow/deny kuralları Katman 7 dinleyicisinde neden etkisiz?
Neden: CLB Katman 7 dinleyicileri, 100.64.0.0/10 aralığındaki özel IP'lerden trafik iletir. Nginx allow/deny kuralları kaynak IP ile eşleştiğinden gerçek istemci IP'sine göre filtreleme yapamaz.
Çözüm:
(Önerilir) Doğrudan örnek üzerinde bir izin veya engelleme listesi yapılandırmak için CLB erişim kontrolünü kullanın.
Nginx'te gerçek istemci IP'sini
X-Forwarded-Forüst bilgisinden çıkarın ve buna göre allow/deny kurallarını yapılandırın. CLB Katman 7 dinleyicisi aracılığıyla arka uç sunucusunda gerçek istemci IP'sini elde edin.
ECS güvenlik grupları neden CLB trafiğini engelleyemiyor?
Neden: CLB, arka uç ECS örnekleriyle iletişim kurmak için 100.64.0.0/10 aralığını kullanır. Tasarım gereği, ECS güvenlik grubu gelen kuralları bu aralıktaki trafiği kısıtlamaz.
Çözüm: İstekler arka uç sunucularına ulaşmadan önce istemci IP'sine göre engellemek için bir CLB ACL yapılandırın.
Bir istek engellendiğinde ne olur?
Açıklama: CLB, engellenen istekleri yanıt döndürmeden düşürür. İstemci bir bağlantı zaman aşımı yaşar.
İzin listeleri DDoS saldırılarına karşı koruma sağlar mı?
Açıklama: Hayır. DDoS trafiği, erişim kontrolü katmanına ulaşmadan önce örnek bant genişliğini tüketir. Ciddi bir saldırı blackhole yönlendirmesini tetikleyebilir.
Öneri: Anti-DDoS kullanın.
CLB erişim kontrolü (engelleme/izin listesi) neden etkili olmuyor?
Açıklama: Bir ACL ilke grubu bir dinleyiciye eklenebilir ancak erişim kontrolü anahtarı devre dışı kalabilir; yalnızca ilke grubunu yapılandırmak erişim kontrolünü etkinleştirmez. Ayrıca, Cloud Firewall bağlantı noktası kuralları, Anti-DDoS Origin koruması veya gerçek istemci IP'sini maskeleyen çok katmanlı proxy'ler, erişim kontrolünün beklendiği gibi çalışmasını bağımsız olarak engelleyebilir. Aşağıdaki adımları öncelik sırasına göre izleyin.
1. Adım: Erişim kontrolünün etkin olduğunu doğrulayın. CLB örneğinizin Listener sekmesine gidin. ACL sütununda dinleyici durumunun Enabled gösterdiğini doğrulayın. Bir ACL ilke grubu dinleyicide mevcut olabilir ancak erişim kontrolü anahtarı hala kapalı olabilir. Anahtar devre dışıysa Enable seçeneğine tıklayın, erişim kontrolü türü olarak Whitelist: Allows Specified IP Addresses to Access the SLB Instance veya Blacklist: Forbids Specified IP Addresses to Access the SLB Instance seçeneğini belirleyin, bir ACL ilke grubu ilişkilendirin ve Save düğmesine tıklayın.
2. Adım: Cloud Firewall bağlantı noktası kurallarını kontrol edin. Hesabınızda Cloud Firewall etkinse Cloud Firewall konsolunda oturum açın ve CLB dinleyici bağlantı noktasının ağ erişim kontrolü ilkesinde izin verildiğini onaylayın. CLB erişim kontrolü doğru şekilde etkinleştirilmiş olsa bile Cloud Firewall, bir bağlantı noktasındaki trafiği bağımsız olarak engelleyebilir.
3. Adım: Anti-DDoS Origin ayarlarını kontrol edin. CLB örneğiniz Anti-DDoS arkasındaysa Anti-DDoS katmanındaki koruma kuralları CLB tarafındaki engelleme listesi girdilerini geçersiz kılabilir. Bu durumda, engelleme ve izin listesi kurallarını CLB yerine Anti-DDoS örneğinde yapılandırın.
4. Adım: Gerçek istemci IP'sini belirleyin. İstekler birden çok proxy katmanından geçtiğinde, CLB yalnızca yukarı akış proxy IP'sini görür, gerçek istemci IP'sini görmez; bu nedenle erişim kontrolü kuralları eşleşmeyebilir. Gerçek istemci IP'sini bulmak için: CLB erişim kontrolünü geçici olarak devre dışı bırakın, arka uç sunucunuz veya uygulama günlüklerinizi kontrol ederek gerçek kaynak IP'sini belirleyin, bunu ACL'ye ekleyin ve ardından erişim kontrolünü yeniden etkinleştirin.
CLB, istemci IP'sine göre hız sınırlamasını destekler mi?
Hayır. CLB erişim kontrolü, IP adreslerini ve CIDR bloklarını izin-ver veya reddet temeline (izin listesi veya engelleme listesi) göre değerlendirir. Tek bir IP adresinden saniye başına istek sayısı gibi IP'ye göre istek oranını sınırlamayı desteklemez.
IP'ye göre istek oranını sınırlamak için Web Application Firewall (WAF) özel kurallarını kullanarak istemci IP'sine dayalı olarak belirtilen bir zaman penceresindeki istek sayısı için bir eşik ayarlayın. Yalnızca belirli anormal IP adreslerini engellemek istiyorsanız bu IP adreslerini veya CIDR bloklarını erişim kontrolü aracılığıyla bir CLB engelleme listesine ekleyin.
Çok katmanlı proxy senaryoları
Katman 7 proxy'si CLB'nin önünde yer aldığında, erişim kontrolü yalnızca yukarı akış proxy'sinin kaynak sunucuya dönüş IP'sini görür, gerçek istemci IP'sini görmez. Erişim kontrolünü doğru katmanda yapılandırın. Aşağıdaki tabloda, CNAME tabanlı bir WAF entegrasyonundaki (İstemci → CDN → WAF → CLB → ECS) her katmandaki kaynak IP ve önerilen yapılandırma gösterilmektedir.
Şeffaf proxy modunda, trafik ayrı bir kaynak sunucuya dönüş IP aralığı olmadan denetim için otomatik olarak WAF üzerinden yönlendirilir. Ekstra bir CLB erişim kontrolü yapılandırması gerekmez.
Katman | Gözlemlenen kaynak IP | Öneri |
WAF |
| Önerilen: Erişim kontrolünü bu katmanda yapılandırın. WAF, gerçek istemci IP'sine göre engeller ve bölge tabanlı engellemeyi destekler. |
CLB | WAF kaynak sunucuya dönüş IP'si. | Saldırganların WAF'yi atlamasını önlemek için CLB'de yalnızca WAF kaynak sunucuya dönüş IP aralıklarına izin verin. WAF konsolundaki Website Access sayfasında WAF kaynak sunucuya dönüş IP aralıklarını görüntüleyin. |
Arka uç ECS | CLB özel IP'si (100.64.0.0/10 CIDR bloğundan). | Ana bilgisayar güvenlik duvarlarında (iptables, firewalld) 100.64.0.0/10 bloğunu engellemeyin. Bu aralığın engellenmesi sağlık kontrollerini ve istek iletimini bozar. |
Faturalama
Erişim kontrolü ek ücrete tabi değildir. CLB faturalandırmasına genel bakış.
Kota
Aşağıdaki limitler için Kota Merkezi'nde kota artış talebinde bulunabilirsiniz.
Limit | Kota adı | Varsayılan limit | Kotayı artır |
Bir Alibaba Cloud hesabının oluşturabileceği ACL sayısı | slb_quota_acls_num | 200 | |
Her ACL'ye ekleyebileceğiniz girdi sayısı | slb_quota_acl_entries_num | 300 | |
Bir ACL ile ilişkilendirilebilecek dinleyici sayısı | slb_quota_acl_attached_num | 50 |
Aşağıdaki limitler sabittir ve artırılamaz.
|
|
|
|
|
|
|
|
|