ICAP ve üçüncü taraf ağ geçitleri
Mevcut bir güvenli web ağ geçidini CID222 denetim hizmetine bağlayın — hat sözleşmesi, dinleyicinin kimin çağırabileceğine nasıl karar verdiği ve yolun çalıştığının nasıl kanıtlanacağı.
- Sürüm: 0.4
- Özellik: icap
- Rol: admin_user
- Tür: görev
Müşteri zaten bir güvenli web ağ geçidi çalıştırıyorsa, o ürün çalışanın şifreli oturumunun uç noktasıdır ve sertifika otoritesi zaten her yönetilen cihazdadır. CID222, onun çağırdığı tarayıcıya dönüşür. Dinleyiciyi açar, ağ geçidinin konsolunda tek bir hizmet girdisi eklersiniz, bunu sağlayıcı ana bilgisayar adlarıyla sınırlar, kimin çağırabileceğine karar verir ve bir tespitin tetiklendiğini kanıtlarsınız.
Neye ihtiyacım var?
- Lisans
- Herhangi biri
- Rol
admin_user
Ön koşullar
- Cihaz ilk açılış kurulum sihirbazını tamamladı ve panele oturum açabiliyorsunuz.
- Müşterinin güvenli web ağ geçidi, giden oturumların şifresini uç noktalarının güvendiği bir sertifika otoritesiyle zaten çözüyor.
- Ağ geçidinden cihaza TCP 1344 üzerinden ya da ağ geçidinin bulutundan cihaza HTTPS üzerinden bir ağ yolu var.
- Ağ geçidinin kaynak adreslerini biliyorsunuz; çünkü dinleyici çağıranları yalnızca adrese göre kabul eder.
- Cihaz genelindeki denetim politikasını kaydetmek superadmin hesabını gerektirir.
Ağ geçidi neyle konuşur
CID222, aynı hat için iki giriş biçimi sunar. Hangisini kullanacağınıza CID222 değil, ağ geçidi ürünü karar verir.
| ICAP dinleyicisi | HTTP denetim uç noktası | |
|---|---|---|
| Adres | Cihazda TCP 1344 | Cihazın HTTPS ön yüzü üzerinden POST /inspect/v1/:hostname |
| Protokol | Internet Content Adaptation Protocol, RFC 3507 | JSON istek, JSON yanıt |
| Tipik çağıran | Yerinde ağ geçitleri: FortiProxy, Forcepoint, Symantec ProxySG, Cisco WSA | Bulut tabanlı ağ geçitleri: Netskope, Prisma Access ve çağrıyı tercih ettiği yerde Zscaler |
| Kimlik doğrulama | Yok — aşağıya bakın | Taşıyıcı jeton olarak bir ağ geçidi API anahtarı, isteğe bağlı olarak bir istemci sertifikası |
Dinleyici üç yöntemi yanıtlar. Bir OPTIONS isteği hizmetin yeteneklerini döndürür:
Bu yanıtın dört özelliği, bir ağ geçidinin nasıl yapılandırılması gerektiğine karar verir.
- Bilinçli olarak önizleme duyurulmaz. Dolayısıyla ağ geçidi, CID222'nin göndermediği bir devam yanıtını bekleyerek gövdeyi tutmak yerine tamamını baştan gönderir. Önizleme duyurmak, katı istemcileri kapalı biçimde başarısızlık hatasına kilitler.
- Temiz bir istek için, ağ geçidi
Allow: 204sunduysa çıplak bir 204 döndürülür ve hiç kapsüllenmiş bölüm eklenmez. Bazı ağ geçitleri, bölüm taşıyan bir 204'ü reddeder. - Yanıt, yöntemle eşleşen bölümü yankılar — istek değişikliği için istek bölümleri, yanıt değişikliği için yanıt bölümleri. Uyuşmazlık, katı ağ geçitlerini kapalı biçimde başarısız kılar.
- Yetenek yanıtı 60 saniye önbelleklenir; yani cihazdaki bir değişiklik bir dakika içinde alınır.
CID222, ICAP hizmet yoluna göre yönlendirme yapmaz. Ağ geçidinizin konsolu hangi yolu isterse
istesin — /inspect, /reqmod ya da başka bir şey — aynı hizmete ulaşır.
Üç karar iki giriş biçiminde de aynıdır: isteği olduğu gibi geçirmek, özgününün yerine maskelenmiş bir gövde iletmek ya da reddetmek. Ret durumunda CID222 bir 403 sayfası döndürür ve ağ geçidi ya onu sunar ya da kendi şablonunu koyar.
Warning
Tamponlanmış tek bir mesaj 64 MB ile sınırlıdır. Önizleme duyurulmadığı için ağ geçidi her gövdeyi tam gönderir; bu tavan olmasa kimliği doğrulanmamış bir eş, cihazın ne kadar bellek tutacağına karar verirdi.
Dinleyiciyi kim çağırabilir
ICAP dinleyicisi eşini doğrulayamaz. CID222'nin tümleştiği ağ geçidi ürünlerinin hiçbiri denetim profilinde bir kimlik bilgisi ya da özel başlık alanı sunmaz; yani bir eşin gönderebileceği bir şey yoktur. Kabul yalnızca kaynak adrese göredir ve kabul edilen bir eşe, iddia ettiği kimliğe kadar inanılır: dinleyici, her istekteki kimliği doğrulanmış kullanıcı için onun sözüne güvenir. Gerçek denetimi ağ yerleşimi, adres listesini ise ikinci bir kilit olarak görün.
| Allowed ICAP peer IPs / CIDRs (izin verilen ICAP eş adresleri) | Kim bağlanabilir |
|---|---|
| Boş | Özel adres uzayındaki her adres — tarihsel varsayılan |
| Dolu | Yalnızca listelenen adresler, başka hiçbir şey |
Bir liste, özel adres aralığı varsayılanını genişletmez; onun yerine geçer. Alanın birbirine zıt iki işi vardır: kamusal dış erişim aralıklarından arayan bulut tabanlı bir ağ geçidi için kabulü genişletmek ve özel adres uzayının binadaki her makineyi kabul ettiği bir müşteri ağında kabulü daraltmak. Bu yüzden alan tek bir girdi taşımaya başladığı anda diğer her çağıran reddedilir — bir dakika önce çalışan yerinde ağ geçitleri ve cihazın ana makinesinden çalıştırdığınız her sınama dâhil. Her eşi listeleyin.
Ayarlamadan önce bilinmeye değer diğer davranışlar:
- Girdiler çıplak adresler, CIDR aralıkları ya da IPv6 değişmezleri olabilir. Hiçbir zaman eşleşemeyecek bir girdi — bir ana bilgisayar adı, bir yazım hatası, imkânsız bir önek uzunluğu — kaydederken reddedilir; çünkü yazım hatalarından oluşan bir liste her eşi reddeder ve denetimi devre dışı bırakır.
- Liste önbelleklenir ve her beş dakikada bir, ayrıca bir yönetici kaydettiğinde hemen yenilenir. Başarısız bir yenileme, kimin bağlanabileceğini değiştirmek yerine önceki listeyi korur.
- Denetim, bir bağlantı açıldığında çalışır. Ağ geçitleri ICAP bağlantılarını açık tutar ve yeniden kullanır; bu yüzden listeyi daraltmak, zaten akan trafiği kesmez. Yeni listenin yürürlükte olduğunu varsaymak yerine ağ geçidini yeniden bağlanmaya zorlayın ve günlüğü okuyun.
- Reddedilen bir eş, ICAP yanıtı olmadan kapatılmış bir soket alır ve cihaz, eşi ve onu reddeden kuralı adlandıran bir uyarı günlükler.
- Liste; HTTP denetim uç noktasına, satır içi vekile ve tarayıcı eklentisine kapı tutmaz.
Danger
Bu sürüme yükseltmek, eş listesinin ve istemci konu adının daha önce saklanmış her değerini temizler ve eski değerleri olay günlüğüne kaydeder. Bu iki alan da daha önce saklanıyor ama hiçbir şey tarafından okunmuyordu; bu yüzden bunları bir yükseltme sırasında başında kimse yokken ilk kez uygulamak her çağıranı reddedebilirdi. Bunları etkiyi görebileceğiniz çalışan bir sistemde, bilinçli olarak yeniden uygulayın.
Ağ geçidini bağlayın
Dinleyiciyi ağ geçidine açın
Dinleyici konteynerin içinde her arayüze bağlanır, ancak cihaz portu varsayılanı 127.0.0.1
olan ICAP_PUBLISH üzerinde yayımlar. Ağın başka bir yerindeki bir ağ geçidi buna erişemez.
Cihazın ortam dosyasında ICAP_PUBLISH=0.0.0.0 ayarlayın ve ağ geçidi hizmetini yeniden
başlatın, ardından TCP 1344'ü yalnızca erişmesi gereken adreslere açacak biçimde güvenlik
duvarıyla sınırlayın.
ICAP_ENABLED varsayılan olarak true değerindedir; cihaz günlüğündeki
ICAP listener bound to 0.0.0.0:1344 satırı dinleyicinin başladığını doğrular.
Ağ geçidinden yolu doğrulayın
Ağ geçidinin kendi ağındaki bir ana makineden portun yanıt verdiğini denetleyin:
Bağlantı kurulur. Kurulmuyorsa ağ geçidi konsoluna dokunmadan önce yönlendirmeyi ve güvenlik duvarını düzeltin — sonraki her belirti oradan aynı görünür.
CID222'yi bir denetim hizmeti olarak ekleyin
Ağ geçidi konsolunda, istek değişikliği etkin olacak biçimde
icap://<appliance-ip>:1344/inspect adresini gösteren bir dış denetim hizmeti ekleyin.
Menü, alan adları ve varsayılanlar ürüne göre değişir; bu bölümde kendi ürününüzün sayfasını izleyin. İlk dağıtımda yanıt değişikliğini kapalı bırakın — o, modelin yanıtını tarar; daha gürültülüdür ve gecikme ekler.
Sağlayıcı ana bilgisayar adlarıyla sınırlayın
Hizmeti yalnızca sağlayıcı ana bilgisayar adlarını içeren bir kategoriye ya da adres grubuna bağlayın ve geri kalan her şeyi şifre çözmeyen bir politikaya bırakın.
Yalnızca konuşma ana bilgisayarlarını değil, yüklenen dosya baytlarını taşıyan ana bilgisayarları da ekleyin. Yalnızca sohbet alan adlarını listeleyen bir politika üstveriyi denetler ve dosyanın kendisini doğrudan, denetlenmeden depolamaya gönderir.
Kimin çağırabileceğine karar verin
Tespit ve Filtreleme → Tarayıcı Denetimi ekranını seçin ve Policy configuration (politika yapılandırması) panelinde Allowed ICAP peer IPs / CIDRs alanını, dinleyiciyi meşru olarak çağıran her adresi içerecek biçimde ayarlayın. Save policy (politikayı kaydet) düğmesini seçin.
Panel Inspection policy updated (denetim politikası güncellendi) bildirir. Alanı yalnızca portun ağ geçidi dışında hiçbir yerden erişilemediği durumda boş bırakın.
Denetim yavaşladığında ne olacağını uzlaştırın
Ağ geçidinin arıza davranışını ve cihazdaki Fail closed (BLOCK) on timeout ayarını aynı duruşa getirin.
Bunlar uyuşmalıdır. Arıza durumunda atlayan bir ağ geçidiyle zaman aşımında reddeden bir cihaz size ikisinin de en kötüsünü verir: ağ geçidinin yok saydığı bir ret.
Olay kime aittir
Kişiyi adlandırabilecek tek şey ağ geçididir ve bunu CID222'nin doğrulayamadığı bir başlıkta yapar. Çözümleme sabit bir sırayla çalışır ve ilk isabet kazanır: ağ geçidinin kimliği doğrulanmış kullanıcı başlığı; kullanıcı kimliği ajanı yapılandırılmışsa gerçek zamanlı bir dizin sorgusu; bir adres aralığını bir etikete eşleyen, panelden yönetilen bir kural; ve son olarak adres dizini olarak kullanılan kayıtlı cihaz filosu. Dördü de ıskaladığında olay kaynak adresini korur ve bir tire gösterir.
Kullanıcı adları kullanılmadan önce normalleştirilir; böylece bir kişinin etki alanıyla nitelenmiş adı, dizin URI biçimi ve kullanıcı asıl adı dört kimliğe değil tek bir kimliğe iner.
Doğrulama
-
Bağlanmasına izin verilen bir ana makineden dinleyicinin yeteneklerini isteyin:
Yanıt, yukarıda gösterilen yetenek başlıklarının izlediği
ICAP/1.0 200 OKsatırıdır. Yanıtsız kapanan bir bağlantı, eş listesinin bu ana makineyi reddettiği anlamına gelir. -
Ağ geçidinin arkasındaki bir iş istasyonundan bir sağlayıcı sitesi açın ve tanınabilir bir test değeri içeren bir istem gönderin. Sağlayıcı onu maskelenmiş alır ya da tarayıcı bir engelleme sayfası gösterir.
-
Tespit ve Filtreleme → Tüm Tespitler ekranını seçin ve tarayıcı trafiğine göre süzün. Deneme saniyeler içinde
MESSAGE_MASKEDya daMESSAGE_BLOCKEDolarak; ana bilgisayar adı, kaynak adresi, karar ve — ağ geçidi iletiyorsa — kullanıcı adıyla birlikte görünür. -
Tarayıcı Denetimi ekranında ağ geçidi, bağlı kaynaklar tablosunda yakın bir zaman damgasıyla görünür. "Ağ geçidi çağırmıyor" ile "ağ geçidi çağırıyor ve hiçbir şey eşleşmedi" durumlarını ayırmanın en hızlı yolu o tablodur.
Başarısız olursa
- Port sınaması başarısız → dinleyici yayımlanmamıştır (
ICAP_PUBLISH), araya bir güvenlik duvarı girmiştir ya daICAP_ENABLEDkapatılmıştır. - Ağ geçidi hizmete erişilemediğini bildiriyor ve cihaz, eşi adlandıran bir reddedilmiş bağlantı günlüklüyor → eş listesi bu ağ geçidini içermiyordur. Listenin, özel adres aralığı varsayılanının yerine geçtiğini unutmayın.
- Her çağıran aynı adresle geliyor ve liste ya hepsini ya hiçbirini kabul ediyor → Her ICAP çağıranı aynı docker köprü adresiyle geliyor.
- Ağ geçidi geçersiz başlık bildiriyor ya da her istekte kapalı biçimde başarısız oluyor → profil bir önizleme duyuruyordur ya da diğer yöntemin kapsüllenmiş bölümlerini bekliyordur. 1344 üzerindeki alışverişi kaydedin ve ağ geçidinin kendi izlemesiyle birlikte gönderin.
- İstemler denetleniyor ama yüklemeler denetlenmiyor → dosya baytlarını taşıyan ana bilgisayar kapsam dışıdır ya da profilin yöntem kümesi yükleme yöntemini dışarıda bırakıyordur.
- Olaylar kullanıcı adı olmadan geliyor → ağ geçidi kimliği doğrulanmış kullanıcı başlığını iletmiyordur. Hizmetin gelişmiş ayarlarından bunu açın ya da bunun yerine adrese göre atıf yapın.
Sonraki adımlar
- FortiProxy ve FortiGate — laboratuvarda uçtan uca doğrulanmış tek tümleşme; bir kabul testi planıyla birlikte.
- Yakalama topolojileri — bu dağıtımın neyi göremediği.
- Satır içi vekili dağıtma — bağlanacak bir ağ geçidi olmadığında geçerli seçenek.
Son güncelleme