Platform mühendisliği
Herkese açık adlar, kapalı staging: split-DNS olmadan HTTPS
Staging, prodüksiyon gibi davranmalı: gerçek adlar, geçerli HTTPS. Bir yandan da ekip dışındaki herkese kapalı kalmalı. İkisini de kendi DNS sunucumuzu kurmadan sağladık.
İhtiyacımız
Her Hullcore ürününün prodüksiyonun yanında geliştirme ve staging ortamları var. Bu ortamların IP adresi ve portla değil, düzgün HTTPS adlarıyla çalışmasını istedik; uygulamalar, oturumlar ve sertifikalar prodüksiyonda nasıl davranacaksa burada da öyle davransın diye. Aynı zamanda internetten erişilemez olmalarını istedik.
Neden split-DNS kurmadık
Bilinen çözüm split-DNS: şirket ağındakilere bir cevap, diğer herkese başka bir cevap. İşe yarıyor ama çalıştırılması gereken bir servis daha demek; o servis düşerse staging de onunla birlikte düşüyor. Bizim ağımızda ekip cihazlarını özel bir DNS sunucusuna güvenilir biçimde bağlamak, çözdüğü sorundan daha fazla iş çıkaracaktı.
Adlar herkese açık, adresler özel
Bu yüzden staging adları sıradan, herkese açık DNS kayıtları. Herkes sorgulayabilir. Dönen adres ise ekibimizin özel ağında; internet bu adrese yönlendirme yapmıyor.
Ekip ağındaysanız staging adı tam bir prodüksiyon adı gibi çalışır: bağlantı kurulur, sertifika eşleşir. Diğer herkesin elinde ulaşamayacağı bir adres kalır.
Bu adların hepsini tek bir wildcard sertifika kapsıyor. Bunun bir yan faydası da var: staging adları tek tek sertifika şeffaflık kayıtlarına düşmüyor, yani yeni bir ortam eklemek onu ilan etmek anlamına gelmiyor.
Neyi çözmüyor
Staging’e ulaşabilmek, içeri alınmak demek değil. Ağ yalnızca kimin bağlanabileceğine karar veriyor. Staging API’leri, prodüksiyonda olduğu gibi yine kimlik doğrulama istiyor.
Adlar herkese açık olduğu için bir staging ortamının var olduğunu herkes öğrenebilir. Bu yüzden adları sade tutuyoruz ve bir adrese hassas hiçbir bilgi koymuyoruz.
Neden bu çözümde kaldık
Ortaya çıkan şey birkaç DNS kaydı, tek bir sertifika ve zaten kullandığımız ekip ağı. Ayakta tutulması gereken bir DNS sunucusu yok, staging’i düşürebilecek yeni bir parça yok ve prodüksiyon kayıtlarına hiç dokunulmadı.