Merhaba,
Çok kullanıcılı ve merkezi olarak yönetilbilen son kullanıcı bilgisayarlarının bulunduğu kurumsal ortamlarda sistem yöneticilerinin kafasını sürekli meşgul eden, yüksek risk içeren durumlardan bir taneside bu bilgisayarlar üzerindeki Local Administrator hesaplarının şifrelerinin yönetilmesidir.
Genelde son kullanıcı bilgisayarlarının tümünde, sistem destek ekibine ekstra iş yükü çıkmasın diye tek bir standart şifre ile local’leki Administrator hesabı enable edilir bu hesaba da tüm bilgisayarlarda aynı olan standart bir şifre tanımlanır. Bu şifre belirli aralıklara veya birileri tarafından öğrenildiği hissedildiğinde tüm makinalar gezilerek yeni bir şifre ile değiştirilir.
Merkezi olarak yönettiğimiz ortamlarda, bilgisayarları yönetebildiginiz Microsoft Active Directory ortamını aktif olarak kullanıyor iseniz, bilgisayarların başlangıcında çalışacak bir script ile veya Active Directory group policy üzerinde yapacağımız bir ayar ile uzaktan değiştirilebiliyordu çok kolay bir şekilde.
Fakat bu iki otomatik değiştirme yönteminde de ilgili şifrenin ele geçirilmesi çok kolay olduğu için artık bu şekilde şifre değiştirilmesi AD Group Policy tarafında desteklenmiyor (yapılamıyor) script’in kullanımasıda güvenlik ekipleri tarafından önerilmiyor. Microsoft Group Policy üzerinden yapılabilen bu düzenlemeyi iptal etti, artık istesekte GPO üzerinden bu şifreleri değiştiremiyoruz, script ile değiştirme yönteminde‘de script içeriği çok kolay bir şekilde okunabildiğinden bu yöntemi de kullanmanızı önermiyoruz artık.
Soru : Peki ne yapacak bu sistem yöneticileri? Bir sürü masraf çıkarıp bir program alıp bu şifreleri bu program aracılığı ilemi değiştirteceğiz?
Cevap : Hayır!
Microsoft bu işlem için ücretsiz bir uygulama yayınladı, bu uygulama sayesinde merkezi bir yerden tüm domain’deki bilgisayarların local Administrator şifresini her makinada farklı olacak şekilde belirleniyor ve bu şifreleri sadece izin vermiş olduğunuz Active Directory üzerindeki kullanıcı hesapları görüntüleyebiliyor.
Uygulamamızın adı Local Administrator Password Solutions, kısaca herkes bunu LAPS olarak adlandırılıyor.
LAPS Kurulum ve Çalışma Topolojisi :
Active Directory sunucularımızdan birisi üzerinde LAPS servisi kurulumu yapılır, Active Directory şeması genişletilerek “Bu değişiklik; Domain’e dahil olan Bilgisayar objeleri üzerinde bir alan yaratılarak ilgili Bilgisayar hesabının Local Administrator hesabının şifresini ve bu şifrenin ne saman değiştirileceğini tutan iki satır eklenmesinden ibarettir” LAPS servisi tarafından belirlenecek olan yeni şifre ve şifre değiştirilme tarihine ait gerekli attribute’ler Computer objesi üzerine eklenmesi sağlanır.
Active directory’de yeni bir Group Policy objesi yaratılarak LAPS ile local administrator şifrelerinin merkezi olarak belirlenmesini istediğiniz bilgisayar hesaplarına bu police uygulanır. Bu police de ayarlayacağınız şifre politikasına göre her bilgisayar farklı bir Local Administrator şifresi atanır ve yine belirlemiş olduğunuz gün sayısı sonrasında bu şifreler sıfırlanması için gerekli ayarlar bilgisayar objesi üzerine yazılır ve o tarihte şifreler sıfırlanır.
Son kullanıcı bilgisayarlarına LAPS ajanı kurulumu yapılır.
LAPS ayarlamış olduğunuz aralıklarda bu bilgisayarların local Administrator şifresini değiştirir. Yeni şifre Computer objesi üzerindeki password alanine yazılır, bu şifreye herhangi bir zamanda ihtiyacınız olduğunda Active directory üzerinde yetkili kullanıcı hesabı ile, powershell komutu veya LAPS uygulama arayüzü üzerinden ilgili bilgisayar’ın güncel şifresi okunarak kullanılır.
Yapımız bu şekilde çalışıyor, eğer kafamızda soru işareti kalmadı ise bu sıraya uyarak LAPS uygulamasının test ortamımıza kuruluma geçelim.
LAPS Kurulumu :
En güncel LAPS yazılımı kurulumu dosyalarını indirebilmek için aşağıdaki linki kullanabilirsiniz.
https://www.microsoft.com/en-us/download/confirmation.aspx?id=46899
Ilgili Linkten LAPS uygulamasına ait tüm dosyaları indirdik.
Benim test ortamında kullandığım Active Directory sunucusu üzerinde Windows Server 2016 x64 işletim sistemi yüklü, LAPS.x64 setup dosyasını bu sunucum üzerinde çalıştırıyorum.
AD Sunucumuz üzerinde ihtiyacımız olacak olan modulleri aşağıdaki ekrandaki gibi seçelim.
Management Tools altındaki tüm seçenekleri kuracağız.
Management Tools
Fat client UI,
PowerShell Module,
GPO Editor templates
Kurulumu yaptıktan sonra C:\Program Files\LAPS Folder’i altına aşağıdaki dosyalar kurulmuş olacaktır.
Sunucumuz üzerinde LAPS kurulumu bittikten sonra, aynı sunucumuz üzerine önce LAPS’in PowerShell modulunun kurulumu daha sonra da Active Directory Şemasını genişletme işlemini yapmamız gerekiyor.
LAPS PowerShell Modulun Yüklenmesi AD Sema Genişletme:
PowerShell’i RunAs Administrator modunda açtıktan sonra aşağıdaki iki komutu kullanarak, ihtiyacınız olan power shell modülünün yüklenmesini ve Active Directory Şema üzerine gerekli eklemelerin yapılmasını sağlayabilirsiniz.
- Import-Module AdmPwd.PS
- Update-AdmPwdADSchema
Bilgisayar Objeleri Üzerinde Şifreleri Güncelleme Yetkisinin Verilmesi :
Şimdi Active Directory üzerindeki bilgisayar hesaplarına üzerlerine eklenen LAPS’a ait yeni iki özelliği değiştirebilme yetkisi vermemiz gerekiyor. Bunun için aşağıdaki komut setini kullanabilirsiniz.
Set-AdmPwdComputerSelfPermission -OrgUnit “OU Name” (OU Name= LAPS ile local admin şifrelerini yönetmek istediginiz bilgisayar hesaplarının bulunduğu OU adi)
Eğer ortamınızda bir yardım masası ekibi departmanı varsa ve Domain Administrator yetkili sistem yöneticileri haricinde başka Active Directory kullanıcı hesaplarının da bilgisayarların Local Administrator şifresini görebilmesini istiyorsanız bu kullanıcı hesaplarına yetki vermeniz gerekiyor.
Sadece şifre görebilme yetkisi vermek isterseniz komut seti aşağıdaki gibidir (Read Permission):
OU ya yetki verme
Set-AdmPwdReadPasswordPermission -OrgUnit <OUName> -AllowedPrincipals LAPS_OUName _READ
Şifre resetleme yetkisi vermek istersenis komut seti aşağıdaki gibidir (Reset Permission) :
Set-AdmPwdResetPasswordPermission -OrgUnit <OUName> -AllowedPrincipals LAPS_OUName _RESET
Group Policy Tanımlama :
Local Administrator kullanıcı hesabının şifre değiştirme süresi ve bu şifrenin karakter sayısı için bir Group Policy Objesi oluşturup bunu ilgili bilgisayar hesaplarına uygulamamız gerekiyor.
Group Policy Manager üzerinde yeni bir GPO objesi oluşturalım.
Oluşturmuş olduğumuz bu yeni GPO Objesini edit ettiğimizde,
Computer Configuration \ Administrative Templates altında LAPS isimli yeni bir bölüm olduğunu görebilirsiniz.
Bu bölümde düzenleyip kullanabileceğimiz dört adet seçenek var, bunlar;
Password Settings
Enable local admin password management
Name of administrator account to manage
Do not allow password expiration time longer than required by policy
Password Settings : Bu seçeneği açmak zorundayız ve burada belirlediğimiz karakter sayısına göre şifremiz belirlenecek ve yine burada belirlediğimiz gün sonrasında şifre güncellenecek. Ben 15 karakterlik bir şifres olasun bu hesabın ve 15 günde bir değiştirilsin bu şifre dedim aşağıdaki ekrandaki ayar ile.
Enable local admin password management : LAPS tarafından şifrenin değiştirilebilmesi için bu seçeneği enable etmemiz gerekiyor.
LAPS’in çalışması için yukarıdaki iki özelliği enable edip ayarları yapmamız yeterli.
Açılması zorunlu olmayan fakat ihtiyacınız olduğunda kullanabileceğiniz diğer iki seçenek ise;
Name of administrator to manage: Bu seçeneği eğer Local taraftaki Administrator isimli kullanıcı hesabını kullanmıyor iseniz kullanabilirsiniz. Güvenlik sebebi ile bu hesabı disable olarak tutuyor olabilirsiniz, ismini değiştirimiş olabilirsiniz veya başka bir isimde bir local administrator yetkisi verilmiş bir kullanıcı hesabı kullanıyor olabilirsiniz. O zaman bu seçeneği enable edip buradan ortamınızdaki bu lacal administrator olarak yetkilendirilmiş kullanıcı hesabını seçerek onun şifresinin değiştirilmesini sağlayabilirsiniz.
Eğer mevcut ortamınızda Local Administrator isimli hesabın adını değiştirerek local administrator hesabının adını farklı bir hesapmış gibi kullanıyor iseniz bu ayarı açmanıza gerek yok, çünkü adını değiştirdiğiniz Administrator hesabınını sistem SID numarasından buluyor.
Do not allow password expiration time longer than required by policy :
LABS mevcut şifre eskime policesi ile ayarlanmış şifre değiştirme zamanını izler ve o zaman değişiklik yapar. Mevcut ayarlanan şifrenin son kullanma tarihi belirtilen zamanda daha ilerde değişiklik için o zamanı bekler. Hızlıca şifre değişikliklerin uygulanmasını istiyorsanız bu seçeneği Enable edebilirsiniz.
Hazırlamış olduğumuz bu yeni Group Policy objemizi üzerinde değişiklik yapmak istediğimiz Bilgisayar hesaplarının bulunduğu Organization unit’e uygulayalım.
Benim test ortamımda Bilgisayarlar isilmi bir OU var ve bilgisayar hesaplarını onun altında topladım.
Local admin Şifrelerini yönetmek istediğiniz Bilgisayarların bulunduğu buradaki Blgisayarlar OU’suna yetki vermemiz gerekiyor.
Bu yetki verme işlemi mevcut Computer objeleri üzerine LABS ile alakalı yeni atttiributlerin eklenebilmesi için.
Bunun için aşağıdaki Power Shell komutunu kullanıyoruz:
Set-AdmPwdComputerSelfPermission –OrgUnit OUName (Burada OU Name Bilgisayarlar)
Sunucu tarafında yapacağımız işlemleri tamamlandı. Şimi ilgili bilgisayarlara LAPS ajanın kurulması gerekiyor.
Bilgisayarlara LAPS ajanının kurulma işlemini değişik yöntemler ile yapabilirsiniz. Manuel, SCCM üzerinden veya açılışta çalışacak bir script ile kurulumları gerçekleştirebilirsiniz. Makalenin sounda otomatik olarak nasıl kurabilirsiniz’in anlatıldığı bir makle linklerini bulabilirsiniz.
Biz şimdi manuel kurulum yapalım test bilgisayarımız üzerine. LAPS.x64.exe isimli kurulum dosyamızı son kullanıcı bilgisayarı üzerinde çalıştıralım.
Next ile ilerleyelim,
Kurulcak moduller ekranında sadece en üstteki seçek olan AdmPwd GPO Extension seçeneğini seçip kurulumu tamamlayalım.
Bilgisayar üzerinde C:\Program Files\LAPS\CSE altına AdmPwd.dll isimli dosya eklenmiş olacaktır kurulum sonrasında.
GPO’umuzun uygulanması için bilgisayarımızı restart edelim ve testlerimizi yapalım.
Restart sonrasında ilgili bilgisayar’ın Local Administrator şifresi değiştirilmiş olacaktır. Bu şuanda kimse bilmiyor ve Active Directory üzerindeki Comğuter objesi üzerinde güncel şifre yazılı. Bu şifreye ihtiyacımız olduğunda nasıl görebiliriz Active Directory veya LAPS sunucu üzerinden ona bakalım şimdi.
Birinci ve en kolay yöntemlerden birisi, LAPS’in kurulu olduğu sunucumuz üzerinde LAPS UI çalıştıralım.
Açılan uygulama ekranında şifresini görmek istediğiniz bilgisayarın adını ComputerName kısmına yazıp Search butonuna basarsanız güncel şifreyi Password kısmında görebilirsiniz.
Şifreyi görebilmek için kullanabileceğimiz ikinci yöntem, Active Directory User and Computers üzerinde computer objesini bulmak ve Attributeleri Editor tabında ms-Mcs-AdmPwd attribute değerini okumak.
Bu attribute’I göremezseniz ilk baktığınızda, buradaki Filter butonuna basıp en üstteki Show only attibutes that have values seçeneğini işaretleyiniz.
Şifreyi görebilmek için kullanabileceğimiz ikinci yöntem üçüncü ve son yöntem isePowerShell komutları kullanarak şifreye ulaşmak.
Power Shell’e erişelim ve aşağıdaki komutları çalıştıralım;
Import-Module AdmPwd.PS
Şimdi şifresini görmek istedğimi bilgisayar adını kullanarak aşağıdaki komutu kullanalım;
Get-AdmPwdPassword -ComputerName Bilgisayar Adı
Eğer bir Bilgisayar’ın Local Admin şifresini hızlı bir şekilde zamanından önce değiştirilmesini isterseniz LAPS UI ekranındaki New exparition time’daki tarihi güncellemeniz yeterli. Buraya yazacağınız yeni tarihte şifre değiştirilecektir hemen.
Aşağıdaki ekranda New expiration time bölümünde istediğimiz tarihi bir sonraki expire tarihi olarak seçip Set düğmesi ile onaylarsak bu değişikliği Client makinemiz bu tarihte GPO’yu güncellediğinde şifre yenilenecektir.
Faydası olması dileklerimle.
LAPS Ajanının son kullanıcı bilgisayarlarına uzaktan otomatik kurulumu için yardımcı dökümanlar :
SCCM ile dağıtma: https://www.prajwaldesai.com/how-to-deploy-microsoft-laps-using-sccm/