Health Check'te Host / SNI belirtebilir miyim (Virtual domain)?
Kısa cevap
Evet. Profilin Virtual Domain (Host/SNI) alanına yazılan ad HTTP'de Host başlığı, HTTPS'te hem Host başlığı hem TLS SNI olarak gönderilir; TCPS, FTPS, LDAPS, SMTPS ve Use STARTTLS açık SMTP türlerinde SNI olarak kullanılır. Alana IP adresi yazılırsa SNI gönderilmez. Yalnızca Host başlığı gerekiyorsa HTTP Headers alanına Host eklenebilir; WEB-CLI'da --virtualDomain kullanılır. Health check, Kurum Servisindeki SNI ayarını devralmaz.
Sorun: Sunucu Aynı IP'de Birden Fazla Site Barındırıyor
Aynı IP adresinde birden fazla site barındıran web sunucuları, isteği Host başlığına ya da TLS SNI'ya göre doğru siteye yönlendirir. Virtual Domain boşken health check Host olarak sunucunun IP adresini gönderir ve SNI göndermez; istek varsayılan siteye düşer, yanlış sertifika alır ya da 404 döner ve sunucu çalışırken sağlıksız görünür.
Çözüm: 3 Yöntem
Yöntem 1 Host ve SNI'yı birlikte ayarlar; Yöntem 2 yalnızca Host başlığını ekler; Yöntem 3, Yöntem 1'in WEB-CLI karşılığıdır.
| Durumunuz | Uygun yöntem |
|---|---|
| Sunucu Host başlığına ve/veya SNI'ya göre site seçiyor | Yöntem 1: Virtual Domain (Host/SNI) |
| Yalnızca Host başlığı gerekiyor (SNI gönderilmesin) | Yöntem 2: HTTP Headers → Host |
| Profili WEB-CLI'dan güncelliyorum | Yöntem 3: WEB-CLI |
Yöntem 1: Virtual Domain (Host/SNI) Önerilen
- Nasıl çalışır Girilen ad HTTP'de Host başlığı, HTTPS'te Host başlığı ve SNI, diğer TLS türlerinde SNI olarak gönderilir. Verify Server Certificate açıksa sertifikadaki ad da bu adla karşılaştırılır.
- Nerede açılırLoad Balancer → Profiles → Health Checks → profil → Virtual Domain (Host/SNI)
- Gereksinim Sitenin alan adı
- vService tipi Tümü
Adım adım yapılandırma
Sol alttaki TR7 logosuyla Configuration Menu açılır; Load Balancer → Profiles → Health Checks yolu izlenir.
Mevcut profil seçilip Edit'e, yeni profil için Add'e tıklanır (Nasıl eklenir?).
Yeni profilde önce Name girilir ve Check Type seçilir. Virtual Domain (Host/SNI) alanına sitenin adı yazılır (ör. portal.example.com). Alan HTTP ve HTTPS'te formun sonunda, TCPS, FTPS, LDAPS ve SMTPS'te TLS alanları arasında, SMTP'de yalnızca Use STARTTLS açıkken görünür.
Edit (yeni profilde Add) butonuna tıklanır. Mevcut profil düzenlendiyse işlem burada biter; değişiklik profili kullanan bütün Kurum Servislerine uygulanır.
Yeni profil için Load Balancer → Backend Services ekranında Kurum Servisine sağ tıklanıp Edit seçilir.
Health Check alanında profil seçilir.
Edit butonuna tıklanır.
Doğrulama
Backend Services listesinin Health kolonundaki gösterge kontrol edilir; profil önizlemesinde Virtual Domain (Host/SNI) satırı girilen adı gösterir (Health durumu göstergesi).
OK (yeşil)Sunucunun erişim logunda denetim isteğinin Host değeri görülür (User-Agent tr7-health-check/2.0).
Host: portal.example.comYöntem 2: HTTP headers → Host
- Nasıl çalışır Profildeki özel başlıklar arasına Host başlığı eklenir; SNI gönderilmez. Virtual Domain de doluysa HTTP Version HTTP/1.1 iken Host olarak Virtual Domain'deki ad, HTTP/2 iken HTTP Headers'taki ad kullanılır.
- Nerede açılırLoad Balancer → Profiles → Health Checks → HTTP/HTTPS profili → HTTP Headers
- Gereksinim HTTP ya da HTTPS profili
- vService tipi Tümü
Adım adım yapılandırma
Load Balancer → Profiles → Health Checks ekranında profil seçilip Edit'e tıklanır.
HTTP Headers anahtarı Choose konumuna alınır (varsayılan Automatic); yeni satırda HTTP Header Name Host, HTTP Header Value sitenin adı olarak girilir.
Edit butonuna tıklanır.
Doğrulama
Backend Services listesinin Health kolonundaki gösterge kontrol edilir; profil önizlemesinin HTTP Headers satırında Host: … görünür.
OK (yeşil)Yöntem 3: WEB-CLI
- Nasıl çalışır Virtual Domain
--virtualDomainalanıyla yazılır; alan HTTP, HTTPS, TCPS, FTPS, LDAPS, SMTP ve SMTPS profillerinde kullanılır. - Nerede açılır WEB-CLI →
lb hc add/lb hc update(lb hc · TLS alanları) - Gereksinim WEB-CLI erişimi; profil kimliği (
lb hc list) - vService tipi Tümü
Adım adım yapılandırma
Mevcut profilde:
lb hc update id <profil-kimliği> --virtualDomain portal.example.comYeni HTTPS profilinde:
lb hc add checkType https name portal-saglik --uri /health --virtualDomain portal.example.comDoğrulama
Profil kaydı görüntülenir.
lb hc show <profil-kimliği>virtualDomain portal.example.comSık Yapılan Hatalar
- Kurum Servisindeki SNI ayarının health check'e de uygulandığını sanmak. Health check yalnızca profildeki Virtual Domain'i kullanır; Kurum Servisinden yalnızca istemci sertifikası, CA ve Backend SSL Security Profile'ın en düşük TLS sürümü ile cipher listesi devralınır.
- Virtual Domain'e IP yazıp SNI beklemek. IP adresi SNI olarak gönderilmez.
- HTTP Headers'a Host ekleyip SNI beklemek. Başlık yalnızca HTTP katmanındadır; SNI için Virtual Domain kullanılır.
Dokümantasyonda nasıl yapılır
