İçerikleri sosyal medya üzerinden paylaşarak daha fazla kişiye ulaşmasına yardımcı olabilirsiniz.




Fırat Boyan 23.01.2018 0

Windows Server 2016'da PowerShell İle Fine Grained Password Policy (FGPP) Oluşturma

Fine Grained Password Policy (FGPP) özelliği, Windows Server 2008 ile tanıtılmıştır ve bu nedenle bu özelliği kullanabilmek için Active Directory ortamınızın en az Windows Server 2008 Forest Functional Level (FFL) seviyesinde olması gerekmektedir. Windows Server 2016'da FGPP kullanabilmek için de aynı gereksinim geçerlidir; yani Forest Functional Level'in Windows Server 2008 veya daha üst bir seviyede olması zorunludur.

Fine Grained Password Policy (FGPP), Windows Server 2008 ile birlikte tanıtılan ve Windows Server 2016'da da mevcut olan bir özelliktir. Bu özellik, Active Directory (AD) ortamlarında farklı kullanıcı grupları için farklı parola ve hesap kilitleme politikaları oluşturmanızı sağlar. FGPP, özellikle büyük ve karmaşık AD yapılarında, farklı güvenlik ihtiyaçlarına sahip kullanıcı gruplarının yönetimini kolaylaştırır. FGPP özelliği, Windows Server 2008 ile birlikte gelen bir özellik olup, bu nedenle Forest Functional Level'in (FFL) en az Windows Server 2008 seviyesinde olması gerekmektedir. Windows Server 2016'da FGPP kullanabilmek için Active Directory Forest Functional Level'in Windows Server 2008 veya daha üst bir seviyede olması zorunludur.

FGPP kullanmanın çeşitli avantajları vardır. Özelleştirilmiş güvenlik sağlar; farklı kullanıcı grupları için farklı parola politikaları uygulayarak güvenliği artırabilirsiniz. Esneklik sunar; tek bir Active Directory ortamında birden fazla parola politikası tanımlayabilirsiniz. Merkezi yönetim imkanı verir; tüm parola politikalarını merkezi bir yerden yönetebilir ve uygulayabilirsiniz. FGPP'nin çeşitli özellikleri vardır ve bu özelliklerin her biri, kullanıcıların parola ve hesap yönetimini daha etkili ve güvenli hale getirmeye yöneliktir.

Örneğin, msDS-PasswordReversibleEncryptionEnabled özelliği, parolaların geri çevrilebilir şekilde şifrelenip şifrelenmeyeceğini belirlerken, msDS-PasswordHistoryLength kullanıcıların eski parolalarını kaç kez kullanamayacağını belirler. msDS-PasswordComplexityEnabled, parola karmaşıklık gereksinimlerini etkinleştirir ve msDS-MinimumPasswordLength, parolanın en az kaç karakter uzunluğunda olması gerektiğini belirler.

msDS-MinimumPasswordAge, bir parolanın değiştirilmeden önce ne kadar süreyle kullanılabileceğini belirlerken msDS-MaximumPasswordAge, bir parolanın ne kadar süreyle geçerli olacağını belirler. msDS-LockoutThreshold, hesabın kaç başarısız giriş denemesinden sonra kilitleneceğini belirlerken, msDS-LockoutObservationWindow, hesabın kilitlenme sayısının sıfırlanacağı zaman penceresini belirler. Son olarak, msDS-LockoutDuration hesabın kilitli kalacağı süreyi belirler.

Fine Grained Password Policy (FGPP), AD ortamlarında parola politikalarının daha esnek ve özelleştirilebilir olmasını sağlayan güçlü bir özelliktir. Windows Server 2016'da bu özelliği kullanabilmek için AD Forest Functional Level'in en az Windows Server 2008 seviyesinde olması gerekmektedir. FGPP, farklı kullanıcı grupları için farklı güvenlik gereksinimlerini karşılamada büyük bir avantaj sağlar ve AD yönetimini daha esnek hale getirir. FGPP'nin detaylı özellikleri ve kullanım alanları, AD yönetimini daha güvenli ve esnek hale getirmek isteyen sistem yöneticileri için vazgeçilmezdir.

Windows Server 2008'de FGPP yönetimi için genellikle ADSI Edit ve PowerShell gibi araçlar kullanılırken, Windows Server 2012 ile birlikte Active Directory Administrative Center (ADAC) tanıtılmıştır. ADAC, FGPP yönetimini daha kullanıcı dostu hale getiren grafiksel bir arayüz sunar. Bu sayede, FGPP politikalarını oluşturmak, düzenlemek ve uygulamak daha kolay hale gelmiştir. ADAC ile FGPP yönetimi, AD yöneticilerine sezgisel bir kullanıcı arayüzü üzerinden FGPP politikalarını yapılandırma ve yönetme imkanı tanır, böylece karmaşık komut satırı işlemleri yerine görsel araçlarla daha hızlı ve etkin yönetim sağlanır. 

Fine Grained Password Policy (FGPP) Oluşturma

1- Sol Taraftaki firatboyan (local) > System > Password Settings Container içini görüntülediğimde, Container için boş ve herhangi bir Password Policy Oluşturulmağını görüyorum.

PowerShell İle Fine Grained Password Policy (FGPP) Oluşturma

2- Windows PowerShell'i çalıştırıyorum.

PowerShell İle Fine Grained Password Policy (FGPP) Oluşturma

3- Açılan Windows PowerShell ekranında, aşağıdaki ilgili PowerShell komutunu yazıyorum;

New-ADFineGrainedPasswordPolicy TestFGPP_POL01 -ComplexityEnabled:$true -LockoutDuration:"00:10:00" -LockoutObservationWindow:"00:10:00" -LockoutThreshold:"3" -MaxPasswordAge:"90.00:00:00" -MinPasswordAge:"1.00:00:00" -MinPasswordLength:"9" -PasswordHistoryCount:"3" -Precedence:"1" -ReversibleEncryptionEnabled:$false -ProtectedFromAccidentalDeletion:$true

PowerShell İle Fine Grained Password Policy (FGPP) Oluşturma

4- PowerShell komutu başarılı bir şekilde çalıştı. Active Directory Administrative Center (ADAC) üzerinden oluşturduğum Fine Grained Password Policy (FGPP)'ye göz attığımda, yine başarılı bir şekilde oluştuğunu görebiliyorum.

PowerShell İle Fine Grained Password Policy (FGPP) Oluşturma

5- Oluşturduğum Fine Grained Password Policy (FGPP) detaylarını da görüntülediğimde, PowerShell parametrelerinde tanımladığım değerlerin de oluştuğunu görüyorum.

PowerShell İle Fine Grained Password Policy (FGPP) Oluşturma

Password Settings Object (PSO) Ayarları

Password Settings Object (PSO) Ayarları, Active Directory ortamında kullanıcıların parola yönetimi üzerinde daha hassas ve esnek bir kontrol sağlamak amacıyla kullanılan bir yapılandırmadır. PSO, özellikle Fine-Grained Password Policy (FGPP) olarak bilinen mekanizma ile birlikte çalışarak, belirli kullanıcı grupları veya bireysel kullanıcılar için özelleştirilmiş parola politikaları oluşturulmasına olanak tanır. Bu, geleneksel Group Policy Object (GPO) yapısına kıyasla daha ayrıntılı ve kişiselleştirilmiş parola gereksinimleri uygulamak isteyen organizasyonlar için kritik bir avantaj sağlar.

PSO ayarları, bir kullanıcının veya grubun parolasının minimum ve maksimum uzunluğu, karmaşıklık gereksinimleri, geçmişte kullanılan parolaların tekrar kullanımını önleme gibi birçok parametreyi özelleştirme imkanı sunar. Bu sayede, organizasyonlar, farklı güvenlik seviyeleri gerektiren kullanıcılar veya gruplar için ayrı ayrı politikalar tanımlayabilir, böylece daha dinamik ve güvenli bir parola yönetimi sağlanmış olur. Ayrıca, PSO’lar, kullanıcı veya grup seviyesinde uygulandığı için, genel organizasyon politikalarından bağımsız olarak çalışabilir ve güvenliği artırmak adına stratejik olarak kullanılabilir.

1. Name

Her FGPP için benzersiz bir isim atanır. Bu isim, PSO'yu tanımlarken kolaylık sağlar ve yönetimi kolaylaştırır.

Örneğin, PowerShell ile New-ADFineGrainedPasswordPolicy TestFGPP_POL01 komutu kullanılarak bir FGPP oluşturulabilir. Bu ad, FGPP’nin diğer PSO'lar arasında ayırt edilmesine yardımcı olur.

2. Precedence

Precedence, FGPP'lerin öncelik seviyesini belirler. Eğer bir kullanıcı veya grup birden fazla PSO’ya uygunsa, en düşük Precedence değeri olan PSO geçerli olur. Bu, kullanıcıya hangi PSO’nun uygulanacağını kontrol etmenin en önemli yoludur.

PowerShell ile -Precedence 1 parametresi kullanılarak en yüksek öncelikli PSO atanabilir. Precedence değeri düşük olan PSO, diğerlerinden önce gelir ve böylece en hassas politikaların uygulanması sağlanır.

3. Minimum Password Length

Parolanın sahip olması gereken minimum karakter sayısını belirler. Güvenlik gereksinimlerine bağlı olarak, parola uzunluğunun artırılması önerilir.

PowerShell komutunda -MinPasswordLength 7 parametresi ile parolanın en az 7 karakterden oluşması sağlanır. Minimum karakter uzunluğunun artırılması, brute.force saldırılara karşı ek bir güvenlik katmanı sağlar.

4. Number of Passwords Remembered

Bu ayar, kullanıcının daha önce kullandığı kaç parolayı tekrar kullanamayacağını belirler.

PowerShell komutunda -PasswordHistoryCount 3 parametresi ile en son kullanılan üç parolanın tekrar kullanımını engellemek mümkündür. Bu özellik, kullanıcıların aynı parolaları tekrar tekrar kullanmasını önler ve böylece parola güvenliğinin artmasını sağlar.

5. Password Must Meet Complexity Requirements

Parolanın belirli bir karmaşıklık düzeyine sahip olup olmayacağını belirler. Etkinleştirildiğinde, parola büyük harf, küçük harf, rakam ve özel karakterlerden en az üçünü içermelidir.

PowerShell komutunda -ComplexityEnabled $true parametresi ile bu gereksinim etkinleştirilebilir. Parolanın karmaşıklık gereksinimleri karşılaması, parola kırılma olasılığını düşürerek güvenliği artırır.

6. Store Password Using Reversible Encryption

Bu seçenek, parolanın düz metin modunda saklanmasına benzer bir şifreleme yöntemiyle veritabanında tutulmasını sağlar. Güvenlik açısından riskli bir ayardır ve genellikle etkinleştirilmemesi önerilir.

PowerShell komutunda -ReversibleEncryptionEnabled $false parametresi ile bu özellik devre dışı bırakılır. Reversible Encryption sadece belirli eski uygulamalar için kullanılmalıdır.

7. User Cannot Change the Password Within (Days)

Bu parametre, kullanıcının parolasını değiştirebilmesi için geçmesi gereken minimum gün sayısını belirler.

PowerShell komutunda -MinPasswordAge 1.00:00:00 (1 gün) şeklinde ayarlanabilir. Bu süre, kullanıcıların sürekli olarak parola değiştirerek güvenlik politikalarını aşmasını önler.

8. User Must Change the Password After (Days)

Parolanın maksimum kullanım süresini tanımlar ve kullanıcıya bu süre dolduğunda parolasını değiştirmesi gerektiğini bildirir.

PowerShell komutunda -MaxPasswordAge 90.00:00:00 (90 gün) olarak yapılandırılabilir. Bu ayar, düzenli parola değişimlerini zorunlu kılarak uzun süre aynı parolanın kullanımını engeller.

9. Number of Failed Logon Attempts Allowed

Yanlış parola girildiğinde kaç kez giriş denemesi yapılabileceğini belirler. Belirlenen limit aşıldığında hesap kilitlenir.

PowerShell komutunda -LockoutThreshold 3 ile yapılandırılabilir. Bu ayar, brute.force saldırılarına karşı koruma sağlar.

10. Reset Failed Logon Attempts Count After (Minutes)

Yanlış giriş denemelerinin sayaç sıfırlanma süresini belirler. Belirtilen süre sonunda, başarısız oturum açma sayacı sıfırlanır.

PowerShell komutunda -LockoutObservationWindow 00:10:00 (10 dakika) şeklinde ayarlanabilir. Bu süre, saldırıların ardışık denemeler yapmasını zorlaştırır.

11. Account Will Be Locked Out

» For a Duration of (Minutes): Kilitlenen hesabın belirtilen süre sonunda otomatik olarak açılmasını sağlar. PowerShell komutunda -LockoutDuration 00:10:00 (10 dakika) olarak yapılandırılabilir. Bu süre dolduğunda, kullanıcı hesabı otomatik olarak tekrar aktif hale gelir.

» Until an Administrator Manually Unlocks the Account: Kilitlenen hesabın manuel olarak yönetici tarafından açılmasını sağlar.

PowerShell komutunda -LockoutDuration 00:00:00 kullanılarak yapılandırılır. Yüksek güvenlik gereksinimi olan ortamlarda bu seçenek kullanılarak hesabın sadece bir yönetici tarafından açılması sağlanabilir.

PSO'yu Kullanıcı veya Grup Atama

Oluşturulan PSO'yu bir kullanıcıya veya Global Security Group'a atamak için PowerShell kullanılır. Bu işlem, FGPP'nin sadece belirli kullanıcılara veya gruplara uygulanmasını sağlar.

Örneğin, belirli bir kullanıcıya PSO atamak için ilgili PowerShell komutunu çalıştırarak gerekli yapılandırma tamamlanır.

Bu detaylar doğrultusunda, FGPP yapılandırması, her bir parametrenin dikkatlice ayarlanmasını ve yönetilmesini gerektirir. Güvenliği sağlamak için bu yapılandırmaların düzenli olarak gözden geçirilmesi ve gerekirse güncellenmesi önemlidir.

6- Oluşturduğum Fine Grained Password Policy (FGPP)'ye bir Active Directory Kullanıcı grubu atayarak, Policy'nin grup içindeki kullanıcılara atanmasını sağlamak için, aşağıdaki PowerShell komutunu yazıyorum.

Add-AdFineGrainedPasswordPolicySubject TestFGPP_POL01 -Subjects Managers

PowerShell İle Fine Grained Password Policy (FGPP) Oluşturma

PowerShell İle Fine Grained Password Policy (FGPP) Oluşturma

PowerShell İle Fine Grained Password Policy (FGPP) Oluşturma

Fine-Grained Password Policy (FGPP) yapılandırmasının, Active Directory ortamında güvenliğin sağlanması ve kullanıcıların kimlik doğrulama süreçlerinin daha hassas hale getirilmesi için kritik bir adım olduğu açıktır. Bu makalede, FGPP’nin doğru ve detaylı bir şekilde nasıl yapılandırılabileceğini ele aldık. FGPP, esnek ve kullanıcı gruplarına özel parola politikalarının oluşturulmasına olanak tanıyarak, hem organizasyonel güvenlik standartlarını yükseltir hem de sistem yöneticilerine yönetim kolaylığı sağlar.

Kullanıcı bazında veya belirli gruplara yönelik parola politikalarının tanımlanması, geniş kapsamlı bir güvenlik yaklaşımı benimseyen organizasyonlar için olmazsa olmaz bir unsurdur. Bu tür yapılandırmaların doğru uygulanması, parola karmaşıklık gereksinimlerinin karşılanmasını, hesap kilitleme politikalarının etkin şekilde devreye alınmasını ve güvenlik tehditlerine karşı dayanıklı bir altyapı oluşturulmasını sağlar. Bu süreçte, her bir parametrenin doğru yapılandırılması, FGPP’nin sistem genelinde etkili olmasını ve organizasyonun güvenlik hedeflerini karşılamasını mümkün kılar.

FGPP’yi yönetirken, her bir PSO'nun öncelik sıralaması ve kullanıcı veya grup atamalarının dikkatlice planlanması, özellikle büyük ölçekli ortamlarda karmaşıklıkların önüne geçmek açısından önem taşır. Bu yapılandırma, organizasyonların parola güvenliği konusundaki standartlarını artırmakla kalmaz, aynı zamanda yönetim süreçlerinde esneklik sağlar.

Sonuç olarak, bu makalede detaylandırılan adımları uygulayarak, Active Directory ortamınızda FGPP’nin etkili bir şekilde hayata geçirilebileceğini, yönetim kolaylığının ve güvenliğin aynı anda sağlanabileceğini net bir şekilde görebiliriz. Organizasyonlar için parola güvenliği ve kimlik doğrulama süreçlerinin güçlendirilmesi yolunda atılan bu adım, uzun vadede güvenlik standartlarını yükseltecek ve operasyonel süreçleri daha verimli hale getirecektir.

Faydalı olması dileğiyle...


Her türlü görüş ve önerilerinizi aşağıdaki yorum panelinden bırakabilir, kafanıza takılanları veya merak ettiklerinizi sorabilirsiniz.



Yazar Hakkında

firatboyan.com


1985 yılında Alanya'da doğdum. İlk, orta ve lise öğrenimimi Alanya'da tamamladım. Liseden mezun olduktan sonra Akdeniz Üniversitesi Bilgisayar Teknolojisi Ön Lisans programına yerleştim ve bu programdan mezun oldum. Ön Lisans programından mezun olduktan bir süre sonra Dikey Geçiş Sınavı (DGS) ile İstanbul Teknik Üniversitesi (İTÜ) Bilgisayar Mühendisliği Lisans programına yerleştim.

2003 yılından beri Bilgi Teknolojileri sektöründe Sistem ve Network alanlarında çalışıyorum. Bir çok firma bünyesinde onlarca farklı projelerde yer alarak bu alanda yıllar içinde ciddi bir bilgi birikimi ve deneyimler kazandım. Bilgi Teknolojileri sektöründeki profesyonel çalışma hayatımın uzunca bir dönemini entegratör firma bazında, ağılıklı olarak Microsoft ürünleri üzerine danışman olarak sürdürüyor ve yüksek seviyeli projeler geliştiriyorum. Uzunca bir süredir de Türkiye'nin önde gelen entegratör firmalarından olan Data Market bünyesinde Senior Cloud Engineer olarak çalışıyorum.

Ek olarak, 2015 yılında Network Akademi bünyesinde Microsoft Certified Trainer (MCT) ünvanı ile Sistem ve Network Uzmanlık eğitimleri vermeye başladım. Sistem ve Network Uzmanlığı alanındaki eğitmenlik serüvenime Network Akademi bünyesinde devam etmekteyim.

YORUMLAR
Bu makaleye henüz yorum yapılmadı! İlk yorum yapan sen ol.
Her türlü görüş ve önerilerinizi aşağıdaki yorum panelinden bırakabilir, kafanıza takılanları veya merak ettiklerinizi sorabilirsiniz.

   
   
  750 karakter yazabilirsiniz.
 
Captcha
Güvenlik kodunu BÜYÜK harflerle giriniz.
* Yorumlar, onaylandıktan sonra yayınlanmaktadır.
* E-posta, yorum onay bildirimi için gereklidir. Yayınlanmaz.