Azure Just in Time Access (JIT) Nedir ?
Çeşitli yönetimsel operasyonları gerçekleştirebilmek için Azure’da bulunan VM’lerinize Public IP kullanarak erişmeniz gerekebilir (SSH, RDP, WinRM vs.) ancak bu gibi yönetimsel portlarının devamlı açık bırakılması Brute Force v.b saldırı yöntemleri ile sisteminizi ele geçirmek isteyebilecek kötü niyetli kişiler için bir davetiye olacaktır.
Azure üzerinde bir Jump Box VM oluşturmak yada NSG’ler üzerinde belirli Address ve IP Range ‘ler için kurallar oluşturmak bir yöntem olsa da güvenli değildir. Günün sonunda açık portların takibini yapıyor olmamız gerekmektedir.
Azure Security Center üzerinde bulunan Just In Time Access özelliği ile Azure üzerindeki sanal makinalarınızın hangi portunun ne kadar süre boyunca (belirlemiş olduğunuz yetkili IP’ler için) açık kalacağını yönetebilir ve loglayabilirsiniz.
Azure Just In Time VM Access Nasıl Çalışır ?
Azure Just In Time Access kullanabilmek için ilk adım olarak mevcut NSG kurallarını (Public erişim için yapılandırdığınız yönetimsel port ayarlarını 3389, 22, 5985, 5986 vs.) kaldırmanız gerekmektedir. Bu kurallar daha sonra JIT tarafından gerekli olduğunda otomatik olarak eklenecektir.
Just In Time Access’i aktif edebilmek için VM blade’inden Configuration > Enable just-in-time policy yolunu takip ediyoruz.
Dilerseniz direk olarak Security Center üzerinden aynı anda birden Fazla VM için aynı işlemi yapabilirsiniz.
Open Azure Security Center yolunu izlediğinizde karşınıza JIT VM Access Configuration ekranı çıkacaktır
Bu ekrandan Just In Time Access ile yönetmek istediğiniz Public erişim politikalarını berlirliyoruz.
- Port: Public erişim portu. -> 22, 3389 vb.
- Protocol: Kullanmak istediğiniz protocol -> Any, TCP yada UDP
- Allowed Source IPs: Filtrelemek istediğiniz IP adresleri.
- Max Request Time: Belirlemiş olduğunuz Port ve Protokol için erişimin max ne kadar süre açık olabileceği -> 1-2 Saat
Erişim politikalarını belirleyip kaydettikten sonra NSG üzerinde ilgili kuralları Just In Time Access tarafından oluşturulduğu göreceksiniz.
Sanal Makinelere Erişim İsteği
Belirlemiş olduğumuz erişim politikaları gereği Security Center Admin yetkisine sahip olan bir kullanıcı erişim isteğinde (Request Access) bulunana kadar VM’iniz public erişim için kapalı durumdadır.
Public erişim için Security Center üzerinden Request Access yolunu izleyerek erişim talebinde bulunabilirsiniz. Talebinizi kaydettikten sonra Just In Time Access NSG’ler üzerinde gerekli güncellemeleri yapacaktır.
Ben örneğimde 22 ve 3389 portlarını 2 saat boyunca erişilebilir olacak şekilde güncelledim. 2 saat sonra ilgili portlar tekrar Just in Time Access tarafından otomatik olarak kapatılacaktır.
Bir erişim isteği yaptığınızda Security Center NSG’ler üzerinde bu değişikliği yapabilmek için gerekli yetkilere (RBAC) sahip olup olmadığınızı kontrol eder ve sonrasında NSG’ler üzerinde gerekli kural güncelleştirmelerini yapar.
Just In Time Access için gerekli izinler
- Just In Time Access Policy oluşturabilmek ve düzenlemek için:
- Security/locations/jitNetworkAccessPolicies/write
- Compute/virtualMachines/write
- Just In Time Access Policy erişim isteği oluşturabilmek için:
- Security/locations/{the_location_of_the_VM}/jitNetworkAccessPolicies/ initiate/action
- Compute/virtualMachines/read
Just In Time Access ile yaptığınız isteklerin log’larına Activity Log altından ulaşabilirsiniz.
Just In Time Access özelliği Azure Security Center üzerinden lisanslanır ve bu özelliği kullanabilmek için Security Center’in Standart Tier olması gereklidir.
Faydalı olması dileğiyle, Kolay Gelsin