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.
Windows Server 2012 ile de bu uygulama tamamen grafiksel ara yüze taşındı. Windows Server 2008 ve Windows Server 2008 R2 sürümlerinde bu özelliği ADSIEDIT konsulu üzerinden gerçekleştirirken, Windows Server 2012 Active Directory Administrative Center (ADAC) üzerinden basitçe uygulayabiliyoruz.
Windows Server 2012 Domain Controller sunucusuna Domain Admin hesabı ile Logon oluyorum. Server Manager konsolunda bulunan Active Directory Administrative Center panelini açıyorum. Panelin sağ bölümde bulunan AD ismi (Local) alanına tıklıyorum. System Container'ına tıklıyorum.
Password Settings Container içinde sağ tıklayarak New > Password Settings seçiyorum. Policy ismini girerek, diğer alanları dolduruyorum.
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
PSO’ya verdiğimiz isimdir. Bu isim, PSO'nun tanımlanması ve yönetilmesi için önemlidir, özellikle çok sayıda PSO'nun bulunduğu büyük Active Directory ortamlarında anlaşılabilir bir isim verilmesi önerilir.
2- Precedence
Bir User veya Global Security Group üzerinde birden fazla PSO tanımlı olduğunda, hangi PSO'nun geçerli olacağını belirleyen öncelik değeridir. Değer ne kadar düşükse, PSO’nun önceliği o kadar yüksektir. Örneğin, bir User üzerinde 2 PSO var ise, Precedence değeri daha düşük olan PSO aktif olur. Bu değer, karmaşık PSO yapılandırmalarında çakışmaları önlemek için kritik bir parametredir.
3- Minimum Password Length
Parolanın minimum uzunluğunu belirler. Güvenliğin artırılması için en az 8 karakterlik parolalar önerilir. Ancak, güvenlik gereksinimleri doğrultusunda bu değer artırılabilir. “0” olarak ayarlanırsa, boş parola kullanımına izin verilir, ancak bu güvenlik açısından önerilmez.
4- Number of Password Remembered
Kullanıcının daha önce kullandığı kaç parolanın yeniden kullanılmasının engelleneceğini belirler. Örneğin, 5 olarak ayarlandığında, kullanıcı son 5 parolasını tekrar kullanamaz. Bu, parola tekrarlarının önüne geçmek ve güvenliği artırmak için kullanılan bir yöntemdir.
5- Password Must Meet Complexity Requirements
Parolanın karmaşıklık şartlarını karşılaması gerekip gerekmediğini belirler. Eğer bu özellik aktif edilirse, parola en az bir büyük harf, bir küçük harf, bir rakam ve bir özel karakter içermek zorundadır. Karmaşık parolalar, brute force saldırılarına karşı daha dayanıklıdır.
6- Store Password Using Reversible Encryption
Parolaların düz metin moduna benzer şekilde şifrelenip şifrelenmeyeceğini belirler. Bu seçenek, parola çözme işlemlerine olanak tanıdığı için genellikle güvenlik açısından önerilmez ve devre dışı bırakılmalıdır.
7- User Cannot Change the Password Within (Days)
Kullanıcının parolasını değiştirebilmesi için geçmesi gereken minimum sürenin (gün cinsinden) ayarlandığı alandır. Bu, kullanıcıların parolalarını sık sık değiştirerek güvenlik kurallarını atlatmalarını önlemek için kullanılır.
8- User Must Change the Password After (Days)
Kullanıcının parolasını maksimum kaç gün boyunca kullanabileceğini belirler. Bu sürenin sonunda kullanıcı, yeni bir parola belirlemek zorundadır. Parolanın düzenli olarak değiştirilmesi, güvenliğin sürekli olarak güncel tutulmasını sağlar.
9- Number of Failed Logon Attempts Allowed
Kullanıcının parolasını kaç kez yanlış girerse hesabının kilitleneceğini belirler. Örneğin, bu sayı “5” olarak ayarlandığında, kullanıcı 5 yanlış giriş yaptıktan sonra hesabı kilitlenir. Bu önlem, brute force saldırılarını sınırlamak amacıyla önemlidir.
10- Reset Failed Logon Attempts Count After (Minutes)
Yanlış giriş sayaçlarının sıfırlanması için gereken süreyi (dakika cinsinden) belirler. Bu süre, yanlış deneme yapan kullanıcıların sayacının sıfırlanması için gereklidir. Örneğin, bu süre 30 dakika olarak ayarlandığında, kullanıcının yanlış giriş denemeleri bu süre zarfında sıfırlanmaz.
11- Account Will Be Locked Out
» For a Duration of (Minutes): Hesabın belirtilen süre sonunda otomatik olarak açılmasını sağlayan ayardır. Bu süre dolduktan sonra kullanıcı hesabı tekrar aktif hale gelir.
» Until an Administrator Manually Unlocks the Account: Hesabın sistem yöneticisi tarafından manuel olarak açılmasını zorunlu kılan ayardır. Bu seçenek, ciddi güvenlik ihlali durumlarında hesabın sadece yetkili bir kişi tarafından açılmasını sağlar.
12- Directly Applies To
Bu PSO’nun hangi kullanıcı veya Global Security Group’a uygulanacağını belirlediğimiz alandır. Doğrudan uygulama yapmak, hedeflenen kullanıcı grubu için güvenlik politikalarının özelleştirilmesini sağlar ve Active Directory ortamında güvenliği daha esnek bir şekilde yönetebilmek için kritik bir yapılandırmadır. Bu PSO ayarlarının doğru yapılandırılması, güvenli ve etkin bir parola politikası yönetimi için önemlidir. Active Directory'de PSO kullanımı, organizasyonların farklı güvenlik ihtiyaçlarına uygun, kullanıcı ve grup bazlı esnek çözümler sunarak güvenliği optimize eder.
Firat isimli Domain kullanıcısının Account özelliklerine baktığımızda, oluşturduğumuz Password Policy’nin kullanıcıya link'lendiğini görebiliriz.
Ortamınıza göre düzenlediğiniz Password Policy ayarlarınızı herhangi bir kullanıcı yada Global Securtiy Group üzerinde uyguladığınızda, sadece o kullanıcı ve grup üzerinde etkili olduğunu gözlemleyebilirsiniz.
Dikkat etmeniz gereken en önemli ayar, “Precedence” değeridir. Unutmayın ki, değeri küçük olan PSO, diğerlerinden baskındır. Tüm bu anlattıklarımı PowerShell kullanarak da yapabilirsiniz. Bunun için PowerShell komutlarıyla Fine Grained Password Policy oluşturma isimli makalemi okumanızı tavsiye ederim.
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.