İki bölümden oluşacak yeni bir makale serisi ile sizlerle Windows Server 2012 R2 yeteneklerini paylaşmaya devam ediyoruz. Bu serimizde de sizlerle Microsoft’un yeni nesil işletim sistemi olan Windows Server 2012 R2 bakış açısı ile Active Directory Domain Servislerinde “Grup Seviyesinde Yönetilen Servis Hesapları (Group Managed Service Accounts (gMSA) ) konusunu detaylarıyla ve uygulamalı olarak ele alacağız. Bundan önceki makalelerimizde Stand-Alone Managed Service Account konusunu hem Windows Server 2008 R2 hem de Windows Server 2012 R2 için incelemiştik. Stand-Alone MSA hesapları kısıtlarından dolayı çok fazla öne çıkmamıştı. Windows Server 2012 ve Windows Server 2012 R2 ile gelen gMSA ile yönetilen servis hesaplarının yetenekleri daha da geliştirilmesiyle BT çalışanları için her geçen gün daha da önemli olduğunu gözlüyoruz. Zira hem servis hesaplarında otomatik parola ve SPN yönetimi, hem güvenlik risklerinin minimum seviyede olması ve operasyonel kolaylık avantajları ile kurum ve kuruluşlarda “servis hesaplarının dönüşümü” ya da “yeni servis hesabı modeline geçiş” gibi başlıklar altında gündemdeki yerini çoktan almış durumda. Makalemizde Windows Server 2012 R2 ile Group Managed Service Account (gMSA) yani Grup Seviyesinde Yönetilen Servis Hesaplarını detaylarıyla, uygulamalı olarak inceliyoruz.
Grup Seviyesinde Yönetilen Servis Hesaplarını (gMSA) Tanıyalım:
Servis hesabı kullanan ya da gereksinim duyan SQL Server, IIS (Internet Information Server), SCCM (System Center Configuration Manager), SCOM (System Center Operations Manager) ve 3.parti diğer uygulamaların kurulumunu yapmış ya da kurulan uygulamayı halihazırda kullanıyor olabilirsiniz. Bu uygulamaların çalışmasını, işlevini yerine getirmesini ve kullanıcıların da bu uygulamalara bağlanıp işlemlerini yapmaları için uygulamalara ait alt yapıda gerekli servislerin sağlıklı bir şekilde çalışıyor olması gerekiyor. Uygulamalara ait bu servislerin çalışmasını sağlayan servis hesapları uygulamanın kurulumu esnasında ya da uygulama kurulumundan sonra tanımlanabilir. Örneğin bir SQL Server kurulumunu yaparken (SQL Server 2008 kurulumu ve kurulum aşamasındaki ayarları SQL SERVER 2008 – Kurulum makalesinden inceleyebilirsiniz.) kurulum esnasında SQL Server uygulamasına ait bileşenler için servis hesabı tanımlamasını gerçekleştiririz. Servis hesabı sadece kurulan uygulamalarda değil, özellikle Windows içerisinde zamanlanmış görevleri (scheduled tasks) çalıştıracak spesifik bir hesap tanımlarken de sıklıkla kullandığımız yapılardır. Burada kullanacağımız servis hesabını bugüne kadar active directory domain yapısında ya da yerel bilgisayarımızda normal bir kullanıcı hesabı gibi oluşturup, güvenli bir parola tanımı yaparak gerçekleştiriyorduk. Bu hesabın şifresinin sınırsız süre ile yenilenmemesi için de hesap özelliklerinden “Password Never Expires” seçeneğini aktif hale getirerek çözüyorduk.
Uygulamaların kurulumu ya da kurulum sonrası servisler üzerinde tanımlanan bu hesapların zaman içerisinde şifrelerinin değiştirilmesi durumunda o andan itibaren bu kullanıcı hesabını kullanan uygulama servisleri çalışmayacaktır. Böyle bir durumda çözüm olarak kullanıcı heasabına eski şifreyi tanımlamanız gerekecek, ya da yeni şifreyi uygulamaya ait tüm servislerde yeni şifreyi tek tek tanımlamanız gerekecektir. Tabi burdaki en büyük handikap bu servis hesabının hangi sunucular üzerinde ve hangi uygulamalar için kullanıldığının elinizde dökümantasyonu yoksa başlıyor. Bu durumda ya tek tek sunuculara bağlanıp bu servis hesabının kullanıldığı yerleri tespit edip güncellemek ya da bu ayrı bir makalede inceleyeceğimiz PowerShell script çözümü ile sunucuları uzaktan tarayıp bir CSV dosyasına bu hesabı kullanan listeyi çıktı veren çözümü uygulamak olacaktır. Group Managed Service Account’lara geçiş ile bütün bu dertlerden kurtulmuş olacaksınız. Windows Server 2012 & R2 ile daha da geliştirilen ve sadece uygulamalara ait servisler üzerinde kullanmak için tasarlanmış Group Managed Service Account (gMSA) – Grup Seviyesinde Yönetilen Servis Hesapları sayesinde artık yukarda söz ettiğimiz zorluklar ortadan kalkmış olacak. gMSA Servis Hesapları ile active directory domain ortamlarındaki Service Principal Names (SPNs) yönetimi de daha da iyileştirilmiş oldu. Bu özellik sayesinde uygulamalar meydana gelebilecek kesilmeleri de azaltılarak toplam sahip olma maliyeti düşürülmüş olacak (Örneğin yukarıda da bahsettiğimiz gibi değiştirilen servis hesabı şifrelerinin yeniden tanımlanmasından doğan kesintiler.) .
Yönetilen servis hesabına active directory tarafından parola ataması domain controller sunucu ile uygulamaya ait servisin çalıştığı sunucu arasında bizim herhangi bir müdahalemize gerek kalmadan arka planda otomatik şifre yönetimi gerçekleştilen bir süreçtir. Ve bu atanan parola yine parola yenilenme dönemlerinde active directory tarafından otomatik olarak yenilenerek hesabın kullanıldığı bilgisayarlardaki servislere de otomatik olarak güncellenir. Burada manager service account şifre yönetimi standart bilgisayar hesaplarına atanan şifre yönetimine benzer bir süreçte gerçekleşmektedir.
Yönetilen servis hesapları ile Windows Server 2008 R2 işletim sisteminde tanıştığımız makalemizin başlangıcında da bahsetmiştik. Windows Server 2008 R2 üzerinde tek tip yönetilen servis hesabı vardı :Stand-alone managed service accounts(MSA).
Stand-alone MSA hesaplarının belli kısıtları bulunuyordu. Bu konuda detaylar ve uygulama adımları için Windows Server 2008 R2 İle Active Directory Domain Servislerinde Gelen Yenilikler – Managed Service Accounts (Yönetilen Servis Hesapları) makalemizi inceleyebilirsiniz.
Windows Server 2012 ve Windows Server 2012 R2 ile yönetilen servis hesapları iki tipte geliyor:
· Stand-alone Managed Service Accounts (MSA)
· Group Managed Service Accounts (gMSA)
Stand-Alone Managed Service Accounts (MSA) konusunu daha önceki makalemizde detaylarıyla ele almıştık. gMSA hesapları stand-alone MSA hesaplarından farklı olarak aynı anda çoklu sunucularda kullanılabilme özelliğine sahiptirler. Bu özelliği sayesinde özellikle cluster servislerinin kullanıldığı sunucu farm yapılarında, örneğin IIS Network Load Balance yapıları, Exchange DAG üyeleri ve SQL Failover Cluster mimarilerinde kullanılma desteğini getirmiştir. Böylece cluster mimarilerinde de servis hesapları Windows işletim sistemi tarafından otomatik yönetilme desteği gelmiş oldu.
gMSA Servis Hesaplarının Karakteristik Özellikleri :
gMSA yönetilen servis hesaplarının genel özellikleri:
Standart kullanıcı hesapları gibi domainden uygulanan password politikaları ya da fine-grained password politikalarına bağlı olarak tanımlanmazlar.
gMSA hesaplar için kompleks, 240 byte yani 120 karakter uzunluğunda ve kriptolanmış yapıda atanırlar. Domain controller tarafından belirlenen bu şifreler gMSA hazırlık aşamasında oluşturulan root key, gMSA hesabının SID değeri ve o anki zaman bilgisine bağlı otomatik olarak oluşur.
Not: Root Key, gMSA oluşturulmaya başlamadan önce Windows Server 2012 R2 ya da Windows Server 2012 domain controller sunucular üzerinde üretilen bir kimlik bilgisidir. Bu anahtar bilgisi tüm KDC server rolüne sahip domain controller sunucular arasında replikasyona tabi tutulur.
gMSA şifre üretme işlemi Windows Server 2012 R2 ya da Windows Server 2012 KDC domain controller sunucular tarafından gerçekleştirilebilir.
gMSA hesabı için atanan şifrelere bilgisayar hesaplarında olduğu gibi sadece Windows kimlik doğrulama altyapısı ile erişmek mümkündür.
gMSA hesaplarına ait şifreler Windows Server 2012 ve Windows Server 2012 R2 Domain Controller sunucular üzerinde Key Distribution Center (KDC) servisi tarafından üretilir ve yönetilirler.
gMSA hesapları domain içerisindeki bilgisayar hesaplarına benzer bir modelde çalıştırılır.
Stand-alone MSA hesapları aynı anda tek bir sunucu üzerinde kullanılabilirken, Group Managed Service Accounts (gMSA) çoklu sunucular üzerinde kullanılabilme desteğini getirmiştir.
gMSA hesapları zamanlanmış görevlerde de kullanılabilir.
gMSA hesaplarda lock olma durumu söz konusu değildir.
gMSA hesaplarının yenilenme süresi varsayılan olarak 30 gündür.
gMSA hesaplar normal kullanıcı hesapları gibi interaktif logon olma yetenekleri yoktur. Dolayısıyla herhangi bir şekilde gMSA şifresini ele geçiren birinin sistemlere standart kullanıcı hesaplarındaki gibi logon olması söz konusu değildir.
gMSA hesaplarının hangi sunucular ya da sistemler üzerinde kullanılabileceğini sistem yöneticileri belirlerler.
gMSA hesapları yetki olarak standart kullanıcı hesapları gibi minimum seviyede yetkiye sahiptirler ve ilave grup üyeliği vb. yetkiler atanmadıkça yüksek seviyede yetkileri de yoktur.
Sistem yöneticileri de gMSA hesaplarının şifrelerini belirleyebilirler, fakat bunu tavsiye etmiyoruz, genel olarak bir anlam da ifade etmiyor.
gMSA hesaplarının şifreleri sistem yöneticileri tarafından istenildiği zaman varsayılan 30 günü beklemeden de resetlenebilir.
Tüm yönetilen servis hesapları varsayılan olarak domain içerisinde CN=Managed Service Accounts, DC=<domain>, DC=<com> kabı altında oluşmaktadır. İstenirse farklı organizational unit ya da kaplar içerisinde de tanımlanabilirler.
Active Directory Schema yapısı Windows Server 2012 ya da Windows Server 2012 R2 seviyesine yükseltildikten sonra schema içerisinde msDS-GroupManagedServiceAccount adında bir obje sınıfı (class) otomatik olarak oluşur.
Active Directory Schema konsolu içerisinden bu sınıf nesnelerine ait objeleri aşağıdaki şekilde görüntüleyebilirsiniz.
msDS-GroupMSAMembership niteliği gMSA hesabını kullanacak bilgisayar ya da bilgisayarları yönetmek için kullanılır. Bu nitelik (attribute) sayesinde gMSA hesabının kullanılabileceği bilgisayarlar bu nitelikte tanımlanmış hesaplarla sınırlandırılmıştır.
msDS-ManagedPassword niteliği gMSA hesabının önceki şifresi, mevcut şifresi ve şifre değiştirme aralığı gibi bilgileri tutar. gMSA kullanan sunucular domain controller bilgisayarını mevcut şifre bilgisi için sorgularlar.
msDS-ManagedPasswordInterval niteliği gMSA hesabı oluşturulmasında belirlenir ve sonrasında değiştirilemez, şifrenin kaç günde bir değiştirileceği bilgisini tutar.
msDS-ManagedPasswordID niteliği gMSA hesabı için Key Distribution Center (KDS) tarafından kullanılan anahtar tanımlayıcıdır ve şifre üretiminde görev alır.
msDS-ManagedPasswordPreviousID niteliği gMSA hesabına ait önceki şifre anahtar tanımlayıcısıdır.
Yönetilen Servis Hesabı Ortam Gereksinimleri:
Yönetilen Servis Hesaplarının oluşturulması ve kullanımı için belli gereksinimlerin sağlanması gerekir. Bunlar:
Group Managed Service Account kullanımı için active directory schema versiyonunun minimum Windows Server 2012 olması gerekir.
Group Managed Service Account kullanımı için domain ortamında minimum bir adet Windows Server 2012 ve üzeri versiyonda domain controller olmalıdır.
gMSA şifrelerinin üretilmesi için öncelikle root KDS anahtarı oluşturulmalı ve diğer domain controller sunucularına replikasyonun tamamlanması gerekir. Uygulama adımlarında bunu daha detaylı inceliyor olacağız.
gMSA hesabı kullanılacak sunucuların işletim sistemi Windows Server 2012 ve üzeri versiyonda sunucu işletim sistemi ya da Windows 8 ve üzeri client işletim sistemi olmalıdır. Ayrıca bu sistemler üzerinde Windows PowerShell Active Directory modülünün yüklenmesi gerekir.
gMSA hesabı yönetimi Windows 2012 ya da Windows 8 işletim sistemi ve üzerinde çalışan sistemler üzerinden PowerShell komut satırı araçları ile gerçekleştirilir. 3rd parti GUI araçlar kullanılarak da bu yönetim gerçekleştirilebilir.
Otomatik şifre ve Service Principal Name (SPN) yönetimi için domain fonksiyonel seviyesinin minimum Windows Server 2008 R2 seviyesinde olmalıdır. Windows Server 2008 R2 domain seviyesi altındaki senaryolarda şifre yönetimi otomatik gerçekleşir, fakat otomatik SPN yönetimi çalışmaz, SPN yönetimi sistem yöneticileri tarafından gerçekleştirilmelidir.
gMSA Yönetilen Servis Hesabı Oluşturma Aşamaları
Yönetilen Servis Hesaplarının uygulama aşamalarını şu şekilde tanımlayabiliriz:
Active Directory domain içerisinde KDS Root Key oluşturulması
Bu işlem her domain için sadece bir defa yapılır.
gMSA hesabı Oluşturulması ve Yapılandırılması
gMSA hesabının Kullanıcılak Sunucular Üzerinde Yapılandırılması
SONUÇ
İki bölümden oluşacak makale serimizin ilk bölümünün sonuna geldik. Bu bölümde sizlerle Windows Server 2012 R2 ile Group Manager Service Accounts(gMSA) mimarisini, bu özelliğin bizlere neler sağladığı, bu özelliği kullanmaya başlamadan önce yapmamız gereken ön hazırlıkları ve altyapı gereksinimlerini paylaştık. Bir sonraki bölümde de Windows Server 2012 R2 ile gMSA yönetilen servis hesabı adım adım uygulama aşamalarını inceliyor olacağız. Bir sonraki bölümde görüşmek dileğiyle esenkalın.
Makalemizin ikinci bölümü için aşağıdaki linki kullanabilirsiniz