TCP seviyesinde bağlantıyı reddetmek veya sessizce düşürmek mümkün mü (TCP Connection Management)?
Kısa cevap
Evet. L7 TCP vService'te TCP Connection Management aksiyonu koşula uyan bağlantıları Reject ile hemen kapatır ya da Silent drop ile yanıt vermeden düşürür; Wait for content seçeneği ise koşulların değerlendirilmesi için istemcinin ilk verisini Delay Time kadar bekler. HTTP vService'te aynı iş Block aksiyonunun Silent drop ve Tarpit seçenekleriyle yapılır. İki durumda da TCP bağlantısı önce kurulur; bağlantı kurulmadan önce devreye giren koruma L4 DDoS Protection'dır.
Sorun: İstenmeyen Kaynaklar TCP Servisine Bağlanıyor
Veritabanı, e-posta ya da özel protokol gibi TCP servislerine belirli adreslerden ya da ülkelerden gelen bağlantıların reddedilmesi, bazen de yanıt verilmeden düşürülmesi istenir.
| Seçenek | İstemcinin gördüğü |
|---|---|
| Reject | Bağlantı kurulur, hemen ardından TR7 tarafından sıfırlanarak kapatılır (ör. Connection reset by peer) |
| Silent Drop | Bağlantı kurulur, gönderilen veriye hiçbir yanıt gelmez; istemci kendi zaman aşımına düşer |
| Wait for Content | Bağlantıyı kapatmaz; sonraki koşulların istemcinin ilk verisine bakabilmesi için Delay time kadar veri beklenir |
Çözüm: Beş Yöntem
| Durumunuz | Uygun yöntem |
|---|---|
| L7 TCP vService'te belirli kaynakları reddetmek ya da düşürmek | Yöntem 1: TCP Connection Management |
| HTTP vService'te yanıt vermeden düşürmek ya da yavaşlatmak | Yöntem 2: Block (Silent drop / Tarpit) |
| Eşik aşan kaynakları otomatik ve süreli engellemek | Yöntem 3: Quarantine |
| Bağlantı seli gibi saldırıları bağlantı kurulmadan durdurmak | Yöntem 4: L4 DDoS Protection |
| Komut satırından | Yöntem 5: WEB-CLI |
Yöntem 1: TCP Connection Management Önerilen
- Nasıl çalışır Koşula uyan bağlantı Reject'te sıfırlanarak kapatılır, Silent drop'ta yanıt verilmeden bırakılır; bağlantı Kurum Servisine iletilmez.
- Nerede açılırLoad Balancer → Actions → TCP Connection Management
- Gereksinim Engellenecek kaynakları tanımlayan koşul (koşulsuz aksiyon bütün bağlantılara uygulanır)
- vService tipi L7 TCP
Adım adım yapılandırma
Load Balancer → Conditions → Add tıklanır (nasıl eklenir).
Criteria = Source IP; Source IP Type = Manual (adresler boşluk ya da satır sonuyla ayrılır, ör. 198.51.100.0/24) ya da Country.
Add tıklanır.
Load Balancer → Actions → Add tıklanır (nasıl eklenir).
Action Name girilir, Action Type = TCP connection management seçilir; bu aksiyon yalnızca L7 TCP vService'lerin Actions listesinde görünür. Execution Level = On request (varsayılan); Action = Reject (varsayılan) ya da Silent drop. Wait for content seçilirse Delay Time alanı açılır (varsayılan 5 s; birim s ya da m) ve aksiyon koşulsuz eklenir. Conditions alanında 2. adımdaki koşul seçilir.
Add tıklanır.
Load Balancer → Load Balancer vService List ekranında L7 TCP vService seçilip Edit tıklanır.
Details → Actions alanında aksiyon seçilir.
Save tıklanır. Değişiklik açık bağlantılar kopmadan uygulanır; cluster'da varsayılan auto-sync ile eş cihaza da gönderilir (Manual Sync Mode açıksa Synchronize ile).
Doğrulama
Engellenen adresten nc -v 192.0.2.80 3306 ile bağlanılıp bir satır veri gönderilir.
Reject: bağlantı hemen kapanır · Silent drop: yanıt gelmezYöntem 2: HTTP vService: Block
- Nasıl çalışır Silent drop istemciye yanıt vermeden bağlantıyı bırakır; Tarpit istemciyi vService'in Timeouts profilindeki Connect timeout süresi kadar bekletip ardından Status code ile yanıt verir.
- Nerede açılırLoad Balancer → Actions → Block → Deny Type
- Gereksinim Engellenecek kaynakları tanımlayan koşul
- vService tipi HTTP
Adım adım yapılandırma
Koşul yoksa Yöntem 1'in 1–3. adımlarıyla oluşturulur.
Load Balancer → Actions → Add tıklanır.
Action Name girilir, Action Type = Block seçilir. Execution Level = On request; Deny Type = Silent drop ya da Tarpit (Tarpit yalnızca On request'te listelenir; Silent drop seçilince Status code alanı gizlenir). Conditions alanında koşul seçilir.
Add tıklanır.
Load Balancer → Load Balancer vService List ekranında HTTP vService seçilip Edit tıklanır.
Details → Actions alanında aksiyon seçilir.
Save tıklanır.
Doğrulama
Engellenen adresten curl -sv https://www.example.com/
Silent drop: yanıt gelmez · Tarpit: gecikmeli 403Yöntem 3: Quarantine
- Nasıl çalışır Belirlenen eşiği aşan kaynaklar karantina süresince otomatik olarak engellenir; süre dolunca engel kalkar.
- Nerede açılırLoad Balancer → Actions → Quarantine
- Gereksinim Eşiği tanımlayan koşul (ör. istek ya da bağlantı hızı)
- vService tipi HTTP · L7 TCP
Adım adım yapılandırma
Load Balancer → Actions → Add tıklanır.
Action Name girilir, Action Type = Quarantine seçilir. İzlenecek anahtar Tracking Key (ör. istemci IP'si) ve Tracking Time ile, karantinayı başlatacak eşik Quarantine Condition ile, süre Quarantine Time ile, karantinadaki kaynağa uygulanacak eylem Quarantine Action ile seçilir (Quarantine nasıl çalışır). Alanların ayrıntısı: Quarantine Action nasıl çalışır; eşiği aşan istemci ne kadar süre engellenir?
Add tıklanır.
Load Balancer → Load Balancer vService List ekranında HTTP ya da L7 TCP vService seçilip Edit tıklanır.
Details → Actions alanında aksiyon seçilir.
Save tıklanır.
Doğrulama
Test adresinden eşiği aşacak sayıda bağlantı açılır; ardından yeni bir bağlantı denenir.
Karantina süresince bağlantı seçilen eylemle sonlanırYöntem 4: L4 DDoS Protection
- Nasıl çalışır El sıkışma seli, bağlantı tüketimi ve tarama gibi saldırıları bağlantı kurulmadan, route tablosu düzeyinde durdurur; IP itibar kara listesindeki kaynaklar Blacklist kuralıyla engellenir.
- Nerede açılır Left Monitor Panel → Route Tables & L4 DDoS → route tablosu → L4 DDoS Management
- Gereksinim vService'in IP'sinin bağlı olduğu route tablosu
- Kapsam Route tablosu üzerinden gelen bütün trafik
Adım adım yapılandırma
Left Monitor Panel'de Route Tables & L4 DDoS kategorisi seçilir ve vService'in IP'sinin bağlı olduğu route tablosuna tıklanır (ekrana erişim).
Açılan ekranda L4 DDoS Management sekmesine tıklanır.
Whitelist & Known Peers kutusundaki kalem ikonuna tıklanır. Muafiyet listesi yaptırımdan önce kurulur (tipik devreye alma akışı).
Kurumun kendi adresleri ve ağ blokları girilip her biri için Add tıklanır.
OK tıklanır.
Yaptırıma alınacak kuralın satırındaki kalem ikonuna tıklanır (IP itibar kara listesi için Blacklist kutusundaki kural satırı).
Pencerenin Status alanında kural izlemeden yaptırıma alınır.
Save tıklanır.
Doğrulama
Route tablosunun L4 DDoS Live View sekmesinde karantinaya alınan kaynaklar ve kuralı görülür.
Kaynak, kendisini gönderen kuralla listelenirYöntem 5: WEB-CLI
- Nasıl çalışır Yöntem 1'deki koşul, Silent drop aksiyonu ve vService bağlantısı WEB-CLI komutlarıyla oluşturulur.
- Nerede açılır TR7 WEB-CLI →
lb condition·lb action·lb service - Gereksinim WEB-CLI erişimi; koşulun kimliği (ID). Wait for Content'in Delay time değeri komut satırından verilemez; bu seçenek arayüzden eklenir
- vService tipi L7 TCP
Adım adım yapılandırma
lb condition add criteria src_ip srcIpType manual src "198.51.100.0/24" --name kara-listeAksiyon koşulu adıyla değil kimliğiyle bağlar; lb condition add başarılı olduğunda çıktı vermez; kimlik lb condition list çıktısının id sütununda görülür.
--tcpAction için reject ya da silent-drop yazılır; --ruleLoc yazılmazsa aksiyon istek aşamasında çalışır:
lb action add type tcp_conn_mgmt name kara-liste-dusur --tcpAction silent-drop --cond <koşul-kimliği>lb service show <vService>--rules.N o sıradaki aksiyonun yerine geçer; yeni aksiyon ilk boş sıraya yazılır.
vService'te iki aksiyon (0 ve 1) varsa yeni aksiyon 2. sıraya yazılır; hiç aksiyon yoksa --rules.0 kullanılır:
lb service update id <vService> --rules.2 kara-liste-dusurDoğrulama
198.51.100.0/24 içinden nc -v 192.0.2.80 3306
Bağlantı kurulur, yanıt gelmezSık Yapılan Hatalar
- Portun kapalı görüneceğini sanmak. TCP Connection Management ve Block bağlantı kurulduktan sonra çalıştığı için port taramada port açık görünür; portun hiç yanıt vermemesi için L4 DDoS Protection ya da güvenlik duvarı kuralı gerekir.
- Silent drop'un bağlantı kaynağını koruduğunu sanmak. Bağlantı yine kurulur ve istemci zaman aşımına düşene kadar açık kalır; yoğun saldırılarda L4 DDoS Protection kullanılır.
- Wait for content'i koşula bağlamak. Wait for Content koşulsuz eklenir; amaç sonraki koşulların istemcinin ilk verisine bakabilmesidir (Delay Time).
- Aksiyonu HTTP vService'te aramak. TCP Connection Management yalnızca L7 TCP vService'in Actions listesinde görünür; HTTP'de Block kullanılır.
Dokümantasyonda nasıl yapılır
