Objective 2.3 – Describe the options for securing a vSphere environment
Merhaba,
VCP-DCV Study Guide makale serimizin bu bölümünde sizlere vSphere ortamının güvenlik seçeneklerinden bahsedeceğim. Daha önce yazmış olduğum VCP-DCV Study Guide makale serisine aşağıdaki linkten ulaşabilirsiniz.
vCenter Server ve ESXi Server sanallaştırma altyapısının önemli bileşenlerinden biridir. Bu katmanlar üzerinde güvenlik konularına oldukça dikkat etmeniz gerekmektedir. Ben bu yazımda öncelikle vCenter Server özelinde çeşitli bilgiler vereceğim daha sonrasında ESXi Server üzerindeki güvenlik konularını ele alacağız.
vCenter Server sayesinde altyapımızda bulunan ESXi host’ları toplu bir şekilde yönetebiliyoruz. Yani vCenter Server bize merkezi yönetim hakkı sağlıyor. vCenter Server kullanıyorsanız güvenlik konularına dikkat etmeniz gerekiyor aksi halde altyapınızda istenmeyen sonuçlar ile karşılaşabilirsiniz. vCenter Server bağlanan tüm kullanıcılarda Administrator rolü bulunmamalıdır. Kullanıcılara özel roller oluşturabilir veya mevcut rolleri seçerek kullanıcılara rol atayabilrisiniz. Eğer tüm kullanıcılara administrator rolü verirseniz inventory içerisinde bulunan virtual machine’ler üzerinde istenmeyen durumlar ile karşılaşabilirsiniz. Örneğin bir kullanıcı virtual machine’i veya virtual machine üzerinde bulunan bir disk’i silebilir. Bundan dolayı administrator rolü vermek yerine daha düşük yetkileri, rolleri verebilirsiniz. Birden fazla administrator rolü verilmesi/bulunması altyapınızdaki gizliliği ortadan kaldırabilir altyapı bütünlüğünü bozabilir.
vCenter Server üzerinde Administrator rolüne sahip kullanıcılar vCenter Server altında bulunan tüm objeleri kontrol edebilir. Yani ESXi Server, virtual machine, storage, network vs herşeyi kontrol edebilir. vCenter Server üzerinde hiyerarşik bir rol yapısı vardır. Siz isterseniz vCenter Server bazında rol verebilir isterseniz de virtual machine bazlı rol verebilirsiniz.
Kullanıcıların doğrudan vCenter Server’da bulunan kullanıcılar ile oturum açmasına izin vermeyin. Yani Use Windows Credentials seçeneğini kullanılmasına izin vermeyin. Çünkü kullanıcılar ayarları değiştirerek kasıtlı olarak veya istemeyerek zarar verebilir. Bu kullanıcılar SSL Sertifikası gibi vCenter Server’in kimlik bilgilerine de erişebilir.
vCenter Server’in aynı zamanda bir database’i bulunmaktadır. Database’e erişen kullanıcılar için minimum yetkiler vermelisiniz. Database’in bozulması, yanlış müdahale edilmesi durumunda vCenter Server’in servisleri başlamayacaktır. Bazı yetkiler sadece installation ve upgrade sırasında gereklidir. Eğer bu işlemler yapılmıyor ise database üzerindeki yetkiyi kaldırabilirsiniz.
Virtual machine’ler datastore’larda barınırlar. Sanallaştırma adminleri harici hiç kimsenin datastore içerisinde yer alan verileri görmemeli, müdahale etmemelidir. Eğer datastore üzerinde işlem yapma yetkisi verirseniz datastore’da birşeyleri değiştirebilir veya silebilir.
Virtual machine’lerde kullanıcıların komutları çalıştırmasını sınırlayabilirsiniz. Varsayılan olarak vCenter Server üzerinde, Administrator rolüne sahip bir kullanıcı, virtual machine üzerinde bulunan guest OS ‘da bulunan programlara erişebilir veya bunlar üzerinde değişiklik yapabilir. Bu bağlamda kullanıcıların yanlızca kendi makinalarına erişebileceği özel role tanımları yapmalısınız.
vpxuser için parola politikasını değiştirebilirsiniz. vCenter Server her 30 günde otomatik olarak vpxuser şifresini değiştirir. Bu ayarın şirket politikalarını karşıladığından emin olmalısınız.
vpxuser ‘ın şifre değiştirme sıklığını şirket politikanıza göre değiştirebilirsiniz. Default olarak bu değer 30 gün olarak gelmektedir. Bunu değiştirmek için vCenter Server > Configure > Advanced Settings seçeneğine girebilir ve VimPasswordExpirationInDays değerini aşağıdaki değeri değiştirebilirsiniz.
Eğer Windows Server üzerine kurulu bir vCenter Server kullanıyorsanız mutlaka ve mutlaka Windows’un güvenlik açıklarını kontrol etmeniz gerekiyor. Windows vCenter Server çalıştıracaksanız, Windows Server’in support edilen bir versiyonda olduğuna dikkat etmelisiniz. Eğer vCenter Server, support edilmeyen bir Windows sürümü üzerinde çalışıyor ise yapınız düzgün çalışmaz. Windows Server’in sürekli update’lerini yaparak işletim sistemini koruyabilirsiniz. Hatta Windows üzerine antivirus, anti-malware software yükleyebilir böylece güvenliğini üst seviyelere çıkarabilirsiniz. Windows sunuculara RDP yapılabileceği için, RDP sırasında kullanılan password’lerin güçlü olması gerekmektedir.
Virtual Machine Güvenliği Nasıl Sağlanır?
UEFI Secure Boot, bilgisayarınızın yalnızca PC üreticisi tarafından güvenilen bir yazılımı kullanarak boot etmesini sağlamaya yardımcı olan bir güvenlik standardıdır. Bazıvirtual machine donanım sürümleri ve işletim sistemleri için, fiziksel bir makine için olduğu gibi secure boot’u etkinleştirebilirsiniz.
UEFI secure boot destekleyen bir işletim sisteminde, işletim sistemi çekirdeği ve işletim sistemi sürücüleri dahil olmak üzere her önyükleme yazılımı parçası imzalanır. Virtual machine’in varsayılan yapılandırması birkaç kod imzalama sertifikası içerir.
- Yalnızca Windows’u başlatmak için kullanılan bir Microsoft sertifikası.
- Linux önyükleyicileri gibi Microsoft tarafından imzalanan üçüncü taraf kodları için kullanılan bir Microsoft sertifikası.
- Yalnızca sanal bir makinede ESXi’yi önyüklemek için kullanılan bir VMware sertifikası .
Virtual machine’in varsayılan yapılandırması, bir Microsoft KEK (Key Exchange Key) sertifikası olan virtual machine’in içinden, secure boot iptal listesi de dahil olmak üzere secure boot yapılandırmasını değiştirme isteklerinin doğrulanması için bir sertifika içerir. Her durumda, mevcut sertifikaların değiştirilmesi gerekli değildir. Sertifikaları değiştirmek istiyorsanız, VMware Knowledge Base ‘e bakmanız gerekiyor.
UEFI secure boot kullanan virtual machine’ler için VMware Tools sürüm 10.1 veya üstü gerekir. Bu virtual machine’leri, kullanılabilir olduğunda VMware Tools’un daha sonraki bir sürümüne yükseltebilirsiniz. Linux virtual machine’lerde, VMware Host-Guest File System güvenli secure boot desteklenmez. Secure boot’u etkinleştirmeden önce VMware Host-Guest Filesystem’ı VMware Tools’dan kaldırın.
Virtual machine üzerinde secure boot’u enable etmek için virtual machine üzerinde sağ click Edit Settings > VM Options > Boot Options > bölümüne girdiğinizde Secure Boot seçeneğini Enabled olarak işaretlemeniz gerekiyor.
vTPM ile Virtual Machine Güvenliği:
TPM’ler, yazılım katmanında şifreleme işlemcisi yeteneklerinin gerçekleştirilmesine izin verir. Günümüzde güvenliğe büyük bir odaklanma var. Hedef sistemden gelen hassas bilgileri çalmak isteyen kötü amaçlı yazılım ve diğer kötü niyetli kodlar genellikle bunu, normal işletim sistemiyle erişilebilen bellekten gelen güvenli ve savunmasız işlemlerin bazıları ile uygulanan engellerin eksikliği ile başarır. VTPM ile sistemin durumunu ve üzerinde çalışan yazılımı onaylamak için kullanılabilecek şifreli key’ler için ayrı, güvenli ve yalıtılmış bir alan bulunmaktadır.
Bir virtual machine’e eklendiğinde, bir vTPM Guest OS‘un private key oluşturmasını ve saklamasını sağlar. Bu key’ler işletim sistemine açık değildir. Bu nedenle, virtual machine’in saldırı yüzeyi azalır. Genellikle konuk işletim sisteminden ödün vermek sırlarını tehlikeye atar, ancak vTPM’yi etkinleştirmek bu riski büyük ölçüde azaltır. Bu key’ler yalnızca işletim sistemi tarafından şifreleme veya imzalama için kullanılabilir. Bağlı bir vTPM ile, üçüncü bir taraf, işletim sisteminin kimliğini uzaktan doğrulayabilir (onaylayabilir).
Yeni bir virtual machine’e veya mevcut bir virtual machine’e vTPM ekleyebilirsiniz. Bir vTPM, hayati önem taşıyan TPM verilerini korumak için sanal makine şifrelemesine bağlıdır. Bir vTPM’yi yapılandırdığınızda, VM encryption, virtual machine dosyalarını otomatik olarak şifreler, ancak diskleri değil. Virtual machine ve diskleri için ayrıca şifreleme eklemeyi seçebilirsiniz.
Ayrıca vTPM ile etkinleştirilmiş bir virtual machine’i yedekleyebilirsiniz. Yedekleme, * .nvram dosyası dahil tüm sanal makine verilerini içermelidir . Yedeklemeniz * .nvram dosyasını içermiyorsa , sanal bir makineyi vTPM ile geri yükleyemezsiniz. Ayrıca, vTPM özellikli bir virtual machine’in VM dosyaları şifreli olduğundan, şifreleme anahtarlarının geri yükleme sırasında kullanılabilir olduğundan emin olun.
vTPM ile ilgili detaylı bir makale yazacağım. Orada daha detaylı olarak bu konuyu ele alacağım.
Virtual Network Güvenliği:
Virtual machine’ler üzerinde bulunan işletim sistemlerine mutlaka ve mutlaka güvenlik duvarı yükleyerek ve yapılandırınız. Böylece virtual network’de buluanan başka virtual machine’ler ile güvenlik duvarı yüklü olan virtual machine tampon görevi görür.
Verimlilik için virtual machine’lere private network ethernet adaptor’leri ekleyebilirsiniz. İhtiyaçlarınıza göre belirli virtual machine’leri kendi aralarında haberleştirebilir ve bunların external network’e erişmemesini sağlayabilirsiniz.
Farklı bölgelerde bulunan virtual machine’leri, farklı network segmentlerinde bulunan bir host içerisinde tutun. Her bir virtual machine kendi bölgesini kendi ağ segmentinde izole ederseniz, bir bölgeden diğerine veri sızıntısı riskini en aza indirirsiniz. Segmentasyon, Address Resolution Protocol (ARP) spoofing dahil olmak üzere çeşitli tehditleri önler. ARP spoofing ile bir saldırgan, MAC ve IP adreslerini yeniden eşleştirmek için ARP tablosunu yönetir ve bir ana bilgisayardan ve ana bilgisayardan ağ trafiğine erişim kazanır. Saldırganlar, denial of service (DoS) saldırılarını gerçekleştirmek, hedef sistemi kaçırmak ve sanal ağı bozmak için ARP spoofing kullanıyor.
Planlama segmentasyonu, dikkatlice virtual machine bölgeleri arasında paket iletimi olasılığını azaltır. Bu nedenle segmentasyon, kurbana ağ trafiği gönderilmesini gerektiren saldırıları sniffing’i önler.
İki yaklaşımdan birini kullanarak segmentasyonu uygulayabilirsiniz.
- Bölgelerin izole edildiğinden emin olmak için virtual machine bölgeleri için ayrı fiziksel network adaptorleri kullanın. Bu yaklaşım yanlış yapılandırmaya daha az eğilimlidir.
- Ağınızın korunmasına yardımcı olmak için VLAN oluşturun. VLAN’lar, donanım ek yükü olmadan fiziksel olarak ayrı ağların uygulanmasında doğasında var olan hemen hemen tüm güvenlik avantajlarını sağlar. VLAN’lar, ek aygıtları, kabloları vb. Yerleştirme ve sürdürme maliyetinden tasarruf etmenizi sağlar.
Virtual machine’leri korumak için gerekenler genellikle fiziksel makinelerin güvenliği için gerekenlerle aynıdır.
- Bir virtual machine network’u fiziksel bir network’e bağlıysa, tıpkı fiziksel makinelerden oluşan bir ağ gibi ihlallere maruz kalabilir.
- Bir virtual machine’i fiziksel ağa bağlasanız bile, virtual machine diğer virtual machine’ler tarafından saldırıya uğrayabilir.
Virtual machine’ler birbirlerinden izole edilmiştir. Bir Virtual machine, başka bir Virtual machine’nin belleğini okuyamaz veya yazamaz, verilerine erişemez, uygulamalarını kullanamaz ve benzeri işlemleri yapamaz. Bununla birlikte, network içinde, herhangi bir virtual machine veya virtual machine grubu, diğer virtual machine’lerden yetkisiz erişimin hedefi olabilir. Virtual machine’lerinizi yetkisiz erişime karşı mutlaka koruyun.
Virtual machine’lerin korunması hakkında ek bilgi için, aşağıdaki adresteki “Secure Virtual Network Configuration for Virtual Machine (VM) Protection” başlıklı NIST belgesine bakabilirsiniz:
https://csrc.nist.gov/publications/detail/sp/800-125b/final
Umarım faydalı olmuştur.
İyi çalışmalar.
Virtual machine’ler üzerinde bulunan işletim sistemlerine güvenlik duvarı yüklüyorum ancak bunun haricinde yapabileceğimiz ek bir şeyler var mı?
Maalesef OS katmanı konusunda birşey diyemiyorum.
Güvenlik konusunda bu ayarlamaları yapmanın yeterli olacağını sanıyorum, zaten sanal makineler defenderlı geliyor windows kısmında. 🙂