Offshore bir sunucu satın aldıktan sonra çoğu kişinin sorduğu ilk soru "Önüne bir CDN koymalı mıyım?" sorusudur ve bunun tek bir yanıtı yoktur, çünkü aslında tek bir kılıf altındaki iki sorudur. Bir saldırıyı savuşturmak ile bulunamaz kalmak farklı çözümleri olan farklı sorunlardır ve birini çözen düzenleme, diğerini sessizce bozabilir.
Bu karışıklığın bedeli her iki yönde de ağırdır. Kimileri, DMCA görmezden gelen barındırmayı tam da bunun için seçtikleri içeriğin önüne büyük bir Amerikan CDN'i koyar ve kaçındıkları türden aracıya bir şikayet masasını kendi elleriyle geri verir. Kimileri de her şeyi atlar, ağ düzeyinde filtrelemenin görmek üzere tasarlanmadığı bir uygulama katmanı akınına maruz kalır ve DDoS korumasının bir yalan olduğu sonucuna varır. Bu rehber iki sorunu birbirinden ayırır, her katmanın gerçekte ne yaptığını söyler ve uzunluğunun büyük kısmını, sonucu her durumda belirleyen kısma ayırır: geri kalan her şey doğru yapılandırılsa bile bir kaynak adresin sızdığı altı yol.
Tek gibi görünen iki sorun
Bir sunucunun önüne koyduğunuz her şey iki işten birini yapar: bir saldırıyı ondan uzak tutmak ya da adresini bilinmez kılmak. Birbirine karışacak kadar örtüşür ve yanlış olanı çözmenin para israfı olacağı kadar da birbirinden farklıdır.
| Endişeniz nedir | Bunu gerçekte ne çözer | Ne çözmez |
|---|---|---|
| Hattınızı dolduran hacimsel bir akın (3. ve 4. katman) | Sunucuda ağ ucunda filtreleme, buradaki her planda dahildir | Sunucuya kurduğunuz hiçbir şey — o noktada hat zaten dolmuştur |
| Gerçek görünen isteklerden oluşan bir uygulama akını (7. katman) | Bir CDN veya WAF, önbellekleme, hız sınırları, daha ucuz uç noktalar | Geçerli HTTP'yi görüp geçiren paket filtrelemesi |
| Kimsenin sunucuya doğrudan ulaşamaması gerekiyor | Bir ön yüz (CDN veya kendi düğümünüz) artı yalnızca onu kabul eden bir güvenlik duvarı | Kaynak hâlâ tüm internete yanıt veriyorsa tek başına bir CDN |
| Kimsenin onu kimin işlettiğini öğrenmemesi gerekiyor | No-KYC kayıt, ödeme gizliliği, hesap disiplini | Herhangi bir miktarda altyapı — bu bir kimlik sorusudur |
| İçeriğin şikayetlere rağmen ayakta kalması gerekiyor | Yargı bölgesi ve bunlara göre hareket etmeyen bir barındırma sağlayıcısı | Bir şikayet kanalını ortadan kaldırmak yerine ekleyen bir CDN |
Son satırı iki kez okuyun, çünkü insanları yakalayan odur. Bu sayfadaki her şey mühendisliktir. O satır değildir.

Barındırma sağlayıcınız zaten neyi yapıyor, nerede duruyor
3. ve 4. katman filtreleme, sattığımız her planda ek ücret olmaksızın dahildir ve sunucunuzda değil ağ ucunda çalışır — çünkü işe yarayabileceği tek yer orasıdır, doymuş bir yukarı bağlantı arkasında çalışan hiçbir şeyle düzeltilemez. Bant genişliği sınırsızdır, dolayısıyla bir saldırı bir faturaya dönüşmez. İnsanların "DDoS" dediği şeylerin büyük çoğunluğu için hikayenin tamamı budur.
Göremediği şey diğer türdür. Bir arama uç noktasına kırk bin ev kullanıcısı adresinden saniyede beş yüz istek, bozuk trafik değildir; sadece trafiktir. Birkaç saniyede bir başlık sızdıran Slowloris bağlantıları, tek tek bakıldığında kibardır. Gerçek POST gövdeleriyle dövülen bir giriş formu, paket düzeyinde yoğun bir pazartesi gününden ayırt edilemez. Hiçbir paket filtresi yardımcı olmaz, çünkü paketlerde yanlış olan hiçbir şey yoktur.
Üzerinde gerçekten işlem yaptığımız tek bir trafik yönü vardır ve bunu açıkça belirtmekte fayda var: ağımızdan kaynaklanan saldırılar ve toplu spam, altyapının geri kalanını sağlıklı tutmak için null-route'a alınabilir. Bu bir içerik önlemi değil operasyonel bir önlemdir — DMCA görmezden gelen barındırma rehberimizin daha ayrıntılı olarak çizdiği ayrım budur.
Bir CDN'in neyi gizlediği ve devraldığınız şikayet masası
Mekanizma basit ve gerçekten etkilidir. Alan adınız sağlayıcının adreslerine çözümlenir, istemciler oraya bağlanır ve sağlayıcı kaynağınızdan veri çeker. Gerçek adres hiçbir zaman bir istemcinin bağlantısında görünmez, dolayısıyla yalnızca alan adını bilen biri tarafından saldırıya uğrayamaz. CDN'in önde tutulmasının sansüre dayanıklı proxy'ler için işe yaramasının nedeni de aynı numaradır: sansürcü, engellemeye gücünün yetmediği bir adrese giden trafiği görür.
Bununla birlikte üç şey de gelir ve hiçbiri küçük yazılarda saklı değildir:
- Ağ ucu TLS'inizi sonlandırır. Trafik, tasarım gereği sağlayıcının ağı içinde düz metindir — önbellekleme ve filtreleme böyle çalışır. Kullanıcılarınızın yazdığı her şey, size ulaşmadan önce bir üçüncü tarafa ulaşır.
- Daha önce var olmayan bir şikayet kanalı. Şikayetler doğrudan CDN'e karşı açılabilir ve CDN bunlara yanıt verir: size ileterek, barındırma sağlayıcınızı belirterek ya da sizi sonlandırarak. Offshore olma nedeniniz şikayetlerin bir yere varamaması ise, önüne bir ABD aracısı koymak, para ödeyerek kırdığınız zinciri yeniden kurar.
- Bir hesap. Alan adınıza bağlı ve süresiz olarak saklanan e-posta adresi, ödeme yöntemi, çoğu zaman bir telefon numarası. Bunun ayrıntısı aşağıda, çünkü genellikle bütün düzenlemenin en zayıf halkası budur.
Bunların hiçbiri bir CDN'i yanlış yapmaz. Onu iki yüzü olan bir karar haline getirir: gerçek kullanıcıları ve gerçek 7. katman baskısı olan bir mağaza veya uygulama için mükemmeldir, kaldırma bildirimi çeken yayıncılık için ise fiilen zarar vericidir. DMCA görmezden gelen barındırma sayfamızdaki soruya kendi yanıtımız her zaman bunun kısa hali olmuştur: kaldırmaya karşı direnç için, zaten sahip olduğunuz ağ filtrelemesini kullanın ve CDN'i atlayın.
Bir kaynak adresin yine de sızdığı altı yol
Önemli olan bölüm burasıdır, çünkü gizlenmişlik satın alınan bir ürün değildir — ya sürdürdüğünüz ya da genellikle birkaç gün içinde altı şeyden birine kaybettiğiniz bir özelliktir. Kaynaklar, gayet iyi yapılandırılmış CDN kurulumlarının arkasında her gün bulunur.
- Sertifika Şeffaflığı (Certificate Transparency) günlükleri. Alan adınız için verilen, kamuya güvenilir her sertifika, dakikalar içinde herkese açık, kalıcı ve aranabilir günlüklere yayımlanır. Bunlar adresinizi değil ana bilgisayar adlarınızı yayımlar —
staging,mail,vpn, 2024'te bir kez kurduğunuz alt alan adı. Her biri çözümlenmeye aday bir kayıttır ve ön yüzü göstermeyen tek bir kayıt, işi bitirir. - DNS geçmişi. Pasif DNS hizmetleri, alan adınızın şimdiye kadar çözümlendiği her adresi arşivler. Daha sonra bir CDN'in arkasına geçmek, zaten kaydedilmiş olanı yayından kaldırmaz — gizlenme, alan adı ilk çözümlenmeden önce başlamalıdır, ya da yeni bir ön yüze değil yeni bir adrese ihtiyacınız vardır.
- Proxy'lenemeyen kayıtlar ve unuttuklarınız. Posta sunucuları (mail exchanger) ulaşılabilir bir şeyi göstermek zorundadır. Yalnızca IPv4'ü proxy'lediğinizde geride kalan bir
AAAAkaydı, eski bir FTP veya panel ana bilgisayar adı, bir joker karakter (wildcard) ya da artık üç yaşında olan "geçici" geliştirme sunucusu da öyledir. - Sunucunun gönderdiği her şey. Kaynaktan gelen posta, adresini
Receivedbaşlıklarında taşır — bir parola sıfırlama mesajı, kendi kendine yapılmış bir ifşadır. Webhook'lar, giden görsel çekmeleri, bağlantı önizlemeleri, pingback'ler, güncelleme kontrolleri ve çökme raporlayıcılarının hepsi gerçek adresten dışarı uzanır ve uygulamanızı kontrolündeki bir ana bilgisayarla konuşturabilen herkes bunu öğrenir. - Tüm interneti tarama. Her IPv4 adresi, kamuya açık hizmetler tarafından sürekli taranır ve indekslenir; sonuçlar saniyeler içinde sorgulanabilir. Kaynağınız 443 bağlantı noktasında sertifikanızla yanıt veriyorsa ya da herhangi bir Host başlığına ana sayfanızı sunuyorsa, onu eşleştirmek bir gövde özeti (hash), bir sertifika parmak izi ya da bir favicon özetine karşı tek bir sorgudur. Çoğu kaynak bu şekilde bulunur ve bulana hiçbir maliyeti yoktur.
- Uygulamanın kendisi hakkında konuşması. Ham adresi içeren mutlak URL'ler ve yönlendirmeler, açık bırakılmış durum veya metrik uç noktaları, iç ana bilgisayarları adlandıran ayrıntılı yığın izleri (stack trace), arka ucu ele veren başlıklar ve adresle soran herkese sitenizi keyifle sunan varsayılan sanal ana bilgisayar.
Kaynağı yalnızca ön yüzün ulaşabileceği şekilde kilitleme
Kimsenin adresi tahmin etmemesine dayanan bir gizlenme, gizlenme değildir. Düzenleme yalnızca kaynak, ön yüz dışında kimseyle konuşmayı reddettiğinde tutar; böylece sızan bir adres bir olay değil, sadece bir sıkıntı olur.
- Önce tümünü reddet, sonra ön yüze izin ver. 80 ve 443'ü yalnızca sağlayıcının yayımladığı adres aralıklarından kabul edin ve bu listeyi otomatik olarak güncelleyin — aralıklar değişir ve eskimiş bir liste en kötü anda ya açık ya kapalı kalarak hata verir. SSH dahil geri kalan her şey, ilk saat sıkılaştırma kontrol listemizde olduğu gibi bir tünele veya bir yönetim adresine aittir.
- Ön yüzü doğrulayın. CDN ile kaynağınız arasındaki istemci sertifikaları — genellikle kimlik doğrulamalı kaynak çekmeleri (authenticated origin pulls) olarak adlandırılır — doğru bir adres artı doğru bir Host başlığının bile sertifika olmadan hiçbir şey elde edemeyeceği anlamına gelir.
- Daha iyisi: hiç gelen bağlantı noktası olmasın. Kaynaktan uç ağa yalnızca giden yönde bir tünel — ister CDN'in kendi konektörü ister sizin işlettiğiniz bir düğüme WireGuard olsun — kaynağın hiçbir zaman herkese açık bir arayüzde dinlemediği anlamına gelir. Tarama, yanıt vermeyeni bulamaz ve bu, düzenlemenin tek başına en güçlü biçimidir.
- Tek bir sanal ana bilgisayar, tek bir Host başlığı. Varsayılan sunucu işe yarar hiçbir şey döndürmemelidir. Siteniz adresle yükleniyorsa, bir hafta içinde bir tarayıcı tarafından eşleştirilecektir.
- Postayı web kaynağından ayırın. Postanın ulaşılabilir olması ve kendini tanıtması gerekir; posta sunucusu rehberinin varsaydığı gibi onu kendi makinesinde tutun.
- Dışarıdan doğrulayın. Bu listedeki her kontrol, sunucunun kendisinden çalıştırıldığında anlamsızdır. Size ait olmayan bir ağdan test edin.
CDN yerine kendi ön yüz düğümünüz
Üçüncü seçenek, pazarlama bütçesi olmadığı için atlanır: herkese açık yüz olarak küçük bir VPS, verinin bulunduğu makineye geri giden şifreli bir tünel ve aralarında trafiği taşıyan nginx veya HAProxy. Dışarıdan bakınca sıradan bir web sunucusu gibi görünür. Gerçek olanı başka bir yerdedir ve hiç gelen bağlantı noktası yoktur.
Elde ettiğiniz şey, düzenlemede başka kimsenin olmadığı bir gizlenmedir — üçüncü taraf hesabı yok, dışarıdan bir şikayet masası yok, TLS'inizi sonlandıran bir yabancı yok. Ayrıca aksi halde satın almanın zor olduğu bir yargı bölgesi ayrımı da elde edersiniz: kullanıcıların bulunduğu yerde ön yüz, hukukun size uyduğu yerde veri; yedi konumumuzdan seçilir. Kayıt sırasında hiçbir kimlik bağlanmadığından, ön yüz de harcanabilirdir — yakılan bir adres pazarlık edilmez, dakikalar içinde değiştirilir.
Elde etmediğiniz şey ise anycast kapasitesidir. Bir düğümün kapasitesi bir düğümün kapasitesidir ve ağ filtrelememiz onu tıpkı başka herhangi bir sunucuyu koruduğu gibi korurken, gerçekten büyük hacimsel bir saldırı, küresel bir ağın kazandığı bir bant genişliği yarışıdır. Dürüst konumlandırma şudur: bir ön yüz düğümü, ağır veya pahalı bir arka ucu — bir depolama dizisi, bir GPU kutusu, bir posta sunucusu, bir veritabanı — gizlemek ve yargı bölgelerini ayırmak için doğru cevaptır. Sürekli 7. katman baskısı altında bir CDN'in yerini tutmaz.
Tek tabloda seçim yapmak
| Durumunuz | Düzenleme | Gerekçe |
|---|---|---|
| Kaldırma bildirimi çeken yayıncılık | Doğrudan, CDN yok, kasıtlı olarak seçilmiş bir yargı bölgesinde | Bir CDN, barındırma sağlayıcınızın kasıtlı olarak sahip olmadığı bir şikayet masası ekler |
| Gerçek kullanıcıları ve 7. katman baskısı olan mağaza veya SaaS | Önde CDN, kaynak kendi aralıklarına kilitli | 7. katman, bir CDN'in gerçekten yapıldığı sorundur |
| Sansürlü bir ülkede sansür aşma uç noktası | CDN'in önde tutulması | Sansürcü, engellemeye gücünün yetmediği bir adresi görür |
| Büyük statik veya medya trafiği | Önbellek yükünü azaltmak için CDN | Asıl mesele bant genişliği ve gecikmedir; gizlenme yan etkidir |
| Anonimlik birincil gereksinim | Kendi ön yüz düğümünüz ya da önde hiçbir şey olmaması | Üçüncü taraf hesabı, daha önce sahip olmadığınız bir kimlik kaydıdır |
| Gizlenmeye değer ağır bir arka uç | Ön yüz düğümü artı yalnızca giden yönlü tünel | Pahalı makine hiçbir zaman herkese açık internette görünmez |
En zayıf halka genellikle hesaptır
Altyapı kusursuzken evrak işlerinin öyle olmadığı durumda ne olduğunu düşünün. Sunucu, no-KYC barındırma sayfalarımızda anlatılan düzenlemeyle, kimlik belgesi ve e-posta adresi olmadan Monero ile ödenmiştir. Ardından, koruduğu alan adını listeleyen bir kart, kişisel bir adres ve bir telefon numarasıyla bir CDN hesabı açılır. Bu hesap, celplere yanıt veren bir şirket tarafından tutulan, sunucudaki her şeyden daha güçlü ve daha kalıcı bir kimlik kaydıdır ve ödeme gizliliğini tamamen boşa çıkarır.
Çözüm karmaşık değildir, sadece unutması kolaydır: hedef anonimlikse, ya ön yüz size aittir ya da önündeki hesap, arkasındaki sunucu kadar harcanabilir ve isnat edilemez olmalıdır. Sunucu OpSec bu disiplini gerektiği gibi ele alır ve offshore anonimliği hakkındaki dürüst yanıtımız, zincirdeki hangi halkaların genellikle önce kırıldığı konusunda açık sözlüdür. Bunlar neredeyse hiçbir zaman teknik olanlar değildir.
Kendi maruziyetinizi on dakikada denetlemek
Aşağıdaki her madde, ilgili bir tarafın ilk birkaç dakikada kontrol edeceği bir şeydir. Yanıtlara ihtiyaç duymadan önce bunları sunucu olmayan bir makineden kendiniz çalıştırın.
- Şimdiye kadar sertifikalandırdığınız her ana bilgisayar adını listeleyin. Kök alan adınızı bir Sertifika Şeffaflığı arama motorunda arayın ve her sonucu çözümleyin. Artık kullanmadığınız ana bilgisayarlar dahil, ön yüzü göstermeyen her şey bir sızıntıdır.
- Kendi DNS geçmişinizi okuyun. Bir pasif DNS sorgusu, alan adınızın CDN'den önce çözümlendiği adresleri gösterir. Dünkü kaynak hâlâ bugünkü kaynaksa, gizlenme hiçbir zaman gerçek olmamıştır.
- Kaynağa doğrudan sorun.
curl -sI --resolve example.com:443:198.51.100.10 https://example.com/— site yanıt veriyorsa güvenlik duvarınız ön yüzü kısıtlamıyordur ve aday bir adrese sahip herkes bunu tek bir istekle doğrulayabilir. - Ona kabaca sorun.
curl -skI https://198.51.100.10/tanınabilir hiçbir şey döndürmemelidir. Ana sayfanızı sunan varsayılan bir sanal ana bilgisayar, bu sayfadaki en yaygın tek hatadır. - Yalnızca A değil, her kayıt türünü kontrol edin.
dig +short AAAA example.com,dig +short MX example.comve şeffaflık günlüklerinin ortaya çıkardığı her alt alan adı için aynısı. Proxy'lenmemiş bırakılan IPv6, klasik bir hatadır. - Uygulamadan kendinize posta gönderin. Bir parola sıfırlama tetikleyin ve tam
Receivedzincirini okuyun. Kaynak adres oradaysa, şimdiye kadar gönderdiğiniz her mesajda da vardır. - Bağlantı noktalarının kapalı olduğunu doğrulayın. İlgisiz bir ağdan,
nmap -Pn -p80,443 198.51.100.10açık değil filtrelenmiş göstermelidir. - Tarayıcıları arayın. Sertifika parmak izinizi ve ana sayfanızın favicon özetini kamuya açık bir internet tarama indeksinde arayın. Kaynağınız indekslenmişse, bulunma şekli budur.
Adres zaten yakılmışsa
Yakılmış kalacağını varsayın. Pasif DNS'te ve tarama indekslerinde görünmüş bir adres kalıcı kamu kaydındadır ve hiçbir yapılandırma değişikliği bunu geri çekmez. Yanıt, zekice değil mekaniktir.
- Önce sızıntıyı düzeltin. Deliği kapatmadan yeni bir adrese geçmek, durumu birkaç gün içinde yeniden üretir ve bir geçişi hiçbir şey öğrenmeden harcamış olursunuz.
- Sonra değiştirin. Neden hukuki idiyse farklı bir yargı bölgesinde olmak üzere bir yedek devreye alın, geri yükleyin ve geçişi tamamlayın. İlk sunucuya hiçbir kimlik bağlanmadığından bu, bir pazarlık değil taze bir başlangıçtır — hesap geçmişi olmadan sunucu satın almanın pratik ve gösterişsiz kazanımı budur.
- Geçişi acil durumdan önce hazırlayın. Kısa bir DNS TTL'i, bir depodan yeniden dağıtabileceğiniz yapılandırma ve test edilmiş bir geri yükleme, kötü bir öğleden sonrayı yirmi dakikaya indirir. Bunu bir saldırı sırasında kimse ayarlamaz.
- Eski adresi düzgün biçimde emekliye ayırın. Eski sunucuyu aynı içeriği sunarak eski adreste bırakmayın; bu, izleyen herkes için canlı bir doğrulamadır ve kaydı taze tutar.
Kısa özet
Ağ düzeyinde filtreleme hacimsel saldırıları karşılar, sunucuyla birlikte gelir ve ek bir maliyeti yoktur. Bir CDN uygulama katmanını karşılar ve kaynağı gizler; bunun bedeli TLS'inizi sonlandıran, şikayetlere yanıt veren ve kim olduğunuzu bilen bir aracıdır. Kendi ön yüz düğümünüz, aracı olmadan gizlenme satın alır ama küresel kapasite satın almaz. Yargı bölgesi, hukuki soruya karar verir ve üçünden hiçbiri buna dokunmaz. Ve hepsi, proxy'lenmemiş tek bir kayıt, kaynaktan gelen tek bir e-posta ya da varsayılan tek bir sanal ana bilgisayarla boşa çıkarılabilir.
Alışkanlığa göre değil hedefe göre karar verin, ardından on dakikanızı denetime ayırın — herhangi bir yükseltmeden daha fazla gerçek maruziyet bulur. Mimariyi üçüncü taraf olmadan istiyorsanız, ön yüz olarak küçük bir VPS ve arkasında özel donanım üzerinde gerçek iş, daha önce bir kez bulunmuş insanlar arasında en sık gördüğümüz düzenlemedir.