Skip to content
Smarter by Design.Simpler for Business

TCP Connection Management ​

TCP Connection Management Aksiyonu Nedir? ​

TCP Connection Management aksiyonu, TCP seviyesinde bağlantı kontrolü sağlar. Bu aksiyon, TCP bağlantılarını reddetme, sessizce düşürme veya içerik bekletme işlemleri için kullanılır.

Bu aksiyon hem istek (request) hem de yanıt (response) aşamasında çalışabilir ve yalnızca L7 TCP vService'lerde kullanılabilir.

Reject
İstemci: SYN →
TR7: ← SYN-ACK
İstemci: ACK →
TR7: ← RST
Bağlantı kurulduktan sonra RST ile kapatılır.
Silent Drop
İstemci: SYN →
TR7: ← SYN-ACK
İstemci: ACK →
TR7: (bildirim yok)
İstemci: Timeout
Bağlantı kurulduktan sonra istemciye bildirim gönderilmeden sessizce düşürülür.
Wait for Content
İstemci: SYN →
TR7: ← SYN-ACK
İstemci: ACK + DATA →
Belirtilen süre içerik analizi yapılır.

TCP Connection Management Neden Gereklidir? ​

TCP protokolü seviyesinde trafik kontrolü, HTTP katmanı öncesi güvenlik ve performans optimizasyonu sağlar.

TCP Seviyesi vs HTTP Seviyesi:

KatmanKontrol ZamanıAvantaj
TCPBağlantı kurulduktan sonra, ilk veri beklenirkenDüşük kaynak tüketimi
HTTPİstek parse edildikten sonraDetaylı içerik kontrolü

TCP seviyesinde bloklama, kötü niyetli trafiği erken aşamada durdurarak sistem kaynaklarını korur.

TCP Connection Management Aksiyonunun Önemi ​

TCP katmanında trafik kontrolü, performans ve güvenlik açısından kritik öneme sahiptir.

TCP Connection Management aksiyonu;

  • IP tabanlı erişim kontrolü sağlar,
  • DDoS saldırılarında erken müdahale imkanı verir,
  • Belirli IP/port kombinasyonlarını bloklar,
  • İçerik analizi için bekleme süresi tanımlar,
  • Sessiz bloklama ile saldırganlara bilgi vermez.

Bu nedenle TCP Connection Management aksiyonu, TCP vService'lerde güvenlik ve performans için kritik bir araçtır.

Bağlantı el sıkışması her durumda tamamlanır

Bu aksiyonun üç seçeneği de, TCP bağlantısı kurulduktan sonra (istemciden ilk veri beklenirken) değerlendirilir. Bağlantı kurulum aşamasında (SYN paketine yanıt verilirken) müdahale edilmez.

Bunun pratik sonuçları:

  • Reject seçildiğinde istemci bağlantıyı kurar; Wait for Content tanımlı değilse kural istemciden veri beklenmeden değerlendirilir ve bağlantı kapatılır.
  • Silent Drop seçildiğinde de bağlantı kurulmuştur; istemci bağlantıyı açık sanmaya devam eder ve yanıt bekleyerek zaman aşımına düşer.
  • Port taraması yapan bir istemci, bu aksiyondan bağımsız olarak portu açık görür.

Bağlantı kurulumundan önce engelleme gerekiyorsa güvenlik duvarı kuralları veya IP itibar listeleri kullanılmalıdır.

Kullanılabildiği vService Tipleri ​

HTTP
L7 TCP
Network

Çalışma Anı ​

İstek Anı (On Request)
Cevap Anı (On Response)

Nasıl Eklenir? ​

Yeni bir TCP Connection Management Aksiyonu, TR7 web yönetim arayüzü üzerinden aşağıdaki adımlar izlenerek eklenebilir:

  1. Sol altta bulunan TR7 logosuna tıklanarak Configuration Menu açılır.
  2. Load Balancer → Actions → Add adımları takip edilir.
  3. Aksiyon için benzersiz ve açıklayıcı bir isim girilir.
  4. Action Type olarak TCP Connection Management seçilir.
  5. Aksiyona ait ilgili konfigürasyonlar yapılandırılır.
  6. Conditions sekmesinden aksiyonun hangi koşul/koşullarda devreye gireceği belirlenir.
  7. Add butonuna tıklanarak aksiyon eklenir.

TCP Connection Management Aksiyonu Ekleme Formu ​

TCP Connection Management Aksiyonu Ekleme FormuTCP Connection Management Aksiyonu Ekleme Formu

INFO

Action Name ​

Oluşturulacak olan aksiyona benzersiz ve açıklayıcı bir isim girilir.

INFO

Action Type ​

Aksiyon tipi olarak TCP Connection Management seçilir.

INFO

Execution Level ​

Aksiyonun hangi aşamada çalıştırılacağını belirler.

Aksiyon L7 TCP vService'lere özel olduğundan formda Rule Protocol alanı bulunmaz; sayaç da desteklenmediğinden Hit Counter ve Set Variable on Hit alanları yer almaz. Aynı vService'e birden fazla eklenebilir; ancak birden çok Wait for content tanımı beklenmeyen davranışa yol açar.

  • On Request: Aksiyon, istek ilgili Kurum Servisine iletilmeden önce uygulanır. Bu seviye, istek üzerinde değişiklik yapılması veya Kurum Servisine ek bilgi iletilmesi gereken durumlarda kullanılır.
  • On Response: Aksiyon, yanıt istemciye iletilmeden önce uygulanır. Bu seviye, istemciye gönderilen yanıt üzerinde düzenleme veya ekleme yapılması gereken durumlarda kullanılır.

Önerilen Seçenek

Çoğu güvenlik senaryosu için On Request tercih edilmelidir. Bu, kötü trafiği Kurum Servisine ulaşmadan durdurur.

INFO

Action Varsayılan: Reject ​

TCP bağlantısı üzerinde yapılacak işlemi belirler.

  • Reject → Kurulmuş bağlantıyı RST paketiyle kapatır.

    İstemci: SYN →
    TR7: ← SYN-ACK
    İstemci: ACK →
    TR7: ← RST (bağlantı kapatılır)
  • Silent Drop → Kurulmuş bağlantıyı istemciye bildirim göndermeden düşürür; istemci zaman aşımına düşer.

    İstemci: SYN →
    TR7: ← SYN-ACK
    İstemci: ACK →
    TR7: (bildirim yok)
    İstemci: Timeout
  • Wait for Content → Belirtilen süre içerik bekler. Bekletme sonrası devam edilir.

    İstemci: SYN →
    TR7: ← SYN-ACK
    İstemci: ACK + DATA →
    TR7: (belirtilen süre içerik analizi yapar)

Silent Drop Kullanımı

Silent drop, istemciye bağlantının kapatıldığını bildirmez; port taramasını engellemez ve meşru istemcilerin de zaman aşımına kadar beklemesine yol açabilir.

INFO

Delay Time Varsayılan: 5 saniye ​

WARNING

Wait for content seçeneği tek başına içerik analizi veya yönlendirme yapmaz; yalnızca içeriğin gelmesini bekler. İçeriğe göre karar verilmesi için ayrıca içerik koşulları ve koşullu dağıtım tanımlanmalıdır.

Bu seçenek koşulsuz kullanılmalıdır; koşula bağlandığında geçerli bir yapılandırma üretilmez.

Wait for content seçildiğinde görünür ve içeriğin beklenecek en uzun süresini belirler. Değer, sayı ve birim (saniye/dakika) olarak girilir; en küçük değer 1 saniyedir.

Örnek değerler:

  • 5s: en fazla 5 saniye bekle
  • 10s: en fazla 10 saniye bekle
  • 30s: en fazla 30 saniye bekle

Kullanım Amacı

  • Protokol tespiti için içerik analizi
  • Yavaş istemcilere tolerans
  • Deep packet inspection için zaman tanıma

INFO

Conditions ​

Bu alanda, ilgili aksiyonun hangi koşul veya koşullar sağlandığında devreye gireceği tanımlanır.

Bir veya birden fazla koşul eklenerek, and/or yapısı ile davranışın hedefli ve kontrollü şekilde uygulanması sağlanabilir.

Koşullar hakkında detaylı bilgi Conditions sayfasında yer alır.

WARNING

Bu alanda herhangi bir koşul tanımlanmazsa, ilgili aksiyon koşulsuz (Always) olarak çalışır. Bu durumda aksiyon, ilgili vService'e gelen tüm trafiğe uygulanır.

Canlı ortamlarda, koşul tanımlanmadan aksiyon kullanılması beklenmeyen durumlara (servis kesintilerine) yol açabilir. Bu nedenle aksiyon oluşturulurken mutlaka en az bir koşul tanımlanması önerilir.

INFO

Form Butonları ​

Add ​

Add butonuna tıklanarak aksiyon ekleme işlemi tamamlanır.

Add & Repeat ​

Add & Repeat butonu ile aksiyon ekleme işlemi tamamlanır ve farklı konfigürasyonlarla ilgili pencereden çıkılmadan yeni bir aksiyon daha eklenebilir.

Aksiyon EklendiAksiyon Eklendi

Operasyonel ve Güvenli Kullanım Önerileri ​

  • Reject ve Silent drop seçimi. Reject meşru istemciler için tercih edilir; hızlı hata dönüşü sağlar. Silent Drop saldırı senaryolarında tercih edilir; istemciye kapatma bildirimi gönderilmez ve istemci zaman aşımına kadar bekler. İki seçenek de port taramasını engellemez.
  • Koşullarla hedefli kullanım. Koşulsuz TCP reject/drop tüm trafiği etkiler; aksiyon mutlaka IP listesi ya da GeoIP koşuluyla birlikte kullanılır.
  • Wait for content süresi ayarlanır. Çok kısa süre meşru trafiği etkiler, çok uzun süre kaynak tüketir; ilgili protokole uygun bir değer seçilir.
  • Loglama ile birlikte kullanılır. TCP seviyesinde bloklama yapılırken log tutulur; bu, hatalı pozitiflerin tespit edilmesini sağlar.
  • El sıkışma öncesi engelleme için bu aksiyona dayanılmaz. Aksiyon bağlantı kurulduktan sonra çalıştığından yoğun bağlantı girişimlerinde bağlantı tablosunu korumaz; bu durumda L4 DDoS Protection ve IP itibar listeleri kullanılır.

Canlı Ortamlarda Yaygın Kullanım Senaryoları ​

Aşağıdaki örnekler, ilgili aksiyonun gerçek sistemlerde en sık karşılaşılan kullanım senaryolarında nasıl uygulandığını göstermektedir. Bu senaryolar, canlı ortamlarda yaygın olarak tercih edilen ve sahada edinilmiş deneyimlere dayanan pratikleri temel alır.

Senaryo 1: Bilinen Saldırgan (Blacklist) IP'leri Silent Drop ​

Problem: Threat intelligence feed'lerinden tespit edilen scanner ve botnet IP'leri L7 TCP servisine bağlantı açıp veri gönderiyor. Bu bağlantıların Kurum Servisine ulaşmaması ve istemciye bağlantının kapatıldığı bilgisinin verilmemesi isteniyor.

Çözüm: Bilinen saldırgan IP listesinden gelen TCP bağlantılarını silent drop ile düşürün, istemciye kapatma bildirimi göndermeyin ve istemciyi zaman aşımına zorlayın.

Konfigürasyon:

  • Execution Level: On Request
  • Action: Silent Drop
  • Conditions:
    • Source IP Threat Intelligent (Blacklist) List'te var

Sonuç:

  • ✅ Kurum Servisi korunur → Bağlantı Kurum Servisine iletilmez.
  • ✅ Yavaşlatma → İstemci her bağlantıda zaman aşımını beklemek zorunda kalır.
  • ✅ Kapatma bildirimi yok → RST paketi gönderilmez.
  • ⚠️ Port durumu → El sıkışma tamamlandığından port açık görünür; port durumunun gizlenmesi güvenlik duvarı kurallarıyla sağlanır.

TCP Akışı:

Scanner IP (threat list): SYN (port 8080) →
TR7: ← SYN-ACK
Scanner IP: ACK →
TR7: [Source IP eşleşmesi: Silent Drop, bildirim yok]
Scanner: [Yanıt beklerken timeout]

Threat Intelligence Integration:

  • AbuseIPDB feed'i ile otomatik güncellenen IP listesi
  • Botnet C2 IP'leri
  • Known port scanner source'lar

Senaryo 2: GeoIP Bloklama (High-Risk Ülkeler) ​

Problem: Servis sadece Türkiye'den müşterilere hizmet veriyor ancak Çin, Rusya, Kuzey Kore gibi high-risk ülkelerden sürekli brute force, credential stuffing ve DDoS saldırıları geliyor. Bu ülkelerden gelen trafikten meşru kullanıcı yok ama sistem kaynakları tüketiliyor.

Çözüm: Yüksek riskli ülkelerden gelen TCP bağlantıları kurulduktan hemen sonra reddedilir ve Kurum Servisine ulaşmadan engellenir.

Konfigürasyon:

  • Execution Level: On Request
  • Action: Reject
  • Conditions:
    • Kaynak (istemci) ülkesi Çin eşittir
    • OR Kaynak (istemci) ülkesi Rusya eşittir
    • OR Kaynak (istemci) ülkesi Kuzey Kore eşittir

Sonuç:

  • ✅ Perimeter defense → High-risk ülkeler TCP seviyesinde engellenir.
  • ✅ Brute force önleme → Credential stuffing attack'ları erken durdurulur.
  • ✅ Compliance → Bazı regulasyonlar belirli ülkelerden erişimi yasaklar.
  • ✅ False positive yok → Meşru kullanıcı bu ülkelerden gelmediği için etki yok.

Kullanım Notu:

  • GeoIP database güncel tutulmalı
  • VPN/proxy kullanımı bypass edebilir (ek kontroller gerekebilir)
  • Whitelist mekanizması ile özel IP'ler hariç tutulabilir

Senaryo 3: Protocol Detection için Wait for Content ​

Problem: L7 TCP vService birden fazla protokol kabul ediyor (örn: custom binary protocol, HTTP, MQTT). Ancak protokol tespiti yapmak için ilk byte'ları okumak gerekiyor. Bağlantı hemen Kurum Servisine iletilirse yanlış Kurum Servisine yönlenme olabiliyor veya protokol parse hatası oluşuyor.

Çözüm: TCP bağlantısı açılır ancak 5 saniye boyunca içerik beklenir; ilk payload analiz edilerek istek doğru Kurum Servisine yönlendirilir.

Konfigürasyon:

  • Execution Level: On Request
  • Action: Wait for Content
  • Delay Time: 5s
  • Conditions:
    • Koşulsuz (tüm TCP bağlantılarında protocol detection)

Sonuç:

  • ✅ Protocol detection → İlk byte'lar okunarak protokol tespit edilir.
  • ✅ Smart routing → HTTP ise HTTP Kurum Servislerine, MQTT ise MQTT Kurum Servislerine gider.
  • ✅ Error önleme → Yanlış Kurum Servisine yönlenme engellenir.
  • ✅ Deep packet inspection → 5 saniye içinde payload analizi yapılır.

Kullanım Örneği:

İstemci: SYN →
TR7: ← SYN-ACK
İstemci: ACK →
İstemci: [HTTP GET / HTTP/1.1] →
TR7: [5s içerik analizi]
TR7: [Protocol = HTTP] → HTTP Kurum Servisleri

Protokol Tespiti:

  • İlk 4 byte "GET " ise → HTTP
  • İlk 2 byte "0x10 0x**" ise → MQTT CONNECT
  • İlk byte "0x16" ise → TLS/SSL ClientHello

Senaryo 4: DDoS Botnet IP Listesi ile Silent Drop ​

Problem: DDoS saldırısı gerçekleştiriliyor ve bilinen botnet IP'lerinden yüksek miktarda TCP bağlantı girişimi geliyor. Bu bağlantılar Kurum Servislerine iletilerek arka uç kaynaklarını tüketiyor ve meşru kullanıcıları etkilemeye başlıyor.

Çözüm: Bilinen DDoS botnet IP listesinden gelen TCP bağlantıları silent drop ile düşürülür; istemciye bildirim gönderilmeden bağlantı düşürülür ve Kurum Servisi kaynakları korunur.

Konfigürasyon:

Sonuç:

  • ✅ Kurum Servisi korunur → Botnet bağlantıları Kurum Servisine iletilmez.
  • ✅ Kapatma bildirimi yok → Botnet'e RST paketi gönderilmez.
  • ✅ Meşru trafik korunur → Botnet IP'leri drop edilerek normal kullanıcılar bağlanabilir.
  • ⚠️ El sıkışma → SYN-ACK yine gönderilir ve bağlantı tablosunda kayıt oluşur; bağlantı girişimlerinin el sıkışmadan önce düşürülmesi için L4 DDoS Protection kullanılır.

DDoS Mitigation Akışı:

Botnet IP (DDoS list): SYN →
TR7: ← SYN-ACK
Botnet IP: ACK →
TR7: [IP check: Botnet list match]
TR7: [Silent Drop, bildirim yok]

[Botnet yanıt beklerken timeout]