System Center Configuration Manager ile Organization Unit Yapısının Oluşturulması ve Objelerin Otomatik Olarak Atanması

Merhabalar,

Bu yazımda kurumlar için önem arz eden Active Directory Organization Unit yapısına değiniyor olacağım. Tabikide System Center Configuration Manager ile… Bilipte aslında pek özen gösteremediğimiz veya ilk başında özen gösterip sonrasında dikkat etmediğimiz Organization Unit’ ler aslında Active Directory yönetiminin en önemli hususlarından birisidir.

Organization Unit’ ler bir düzen içinde kurum yapınıza göre dizayn edilerek yönetilmelidirler ve active directory objeleri (Kullanıcılar, İstemciler, Sunucular, Gruplar vb. ) konumuna, statüsüne, lokasyonuna vb. durumlara göre oluşturulan Organization Unit’ ler içerinde barındırılmalıdır.

Organization Unit’ lerin yapılandırılması ve yönetilmesi Active Directory konusunun en başında sistem yöneticilerine öğretilmesi gereken bir konudur aslında. Nasıl güvenlik bir prensip ise Active Directory yönetimide bir prensip gerektirir.

Peki neden özen göstermemiz gerekir Organization Unit’ lerin yönetilmesine ?

Sistem yöneticilerinin neredeyse en çok kullandığı özelliklerden birisi Group Policy’ ler dir. GPO’ lar merkezi olarak kurum prosedürlerine, gereksinimlerine, istemci yönetimi ve daha bir çok konuda etki alanında bulunan istemci, kullanıcı, sunucu vb. bütün objeleri ayrıntılı bir şekilde yönetmenizi ve aksiyonları uygulamanızı sağlayan bir özelliktir.

Düzensiz ve kontrolden çıkmış olan active directory objelerine uygulanan group policy’ ler içinden çıkılamaz sorunlara sebebiyet verebilirler. Oluşturulan bir gpo, uygulanmaması gereken bir sunucu veya istemciye uygulanması durumunda iş yüklerine etki edebileceği gibi iş akışının durmasınada sebebiyet verebilir.

Bu gibi durumların yaşanmaması ve sorun gidermede problemin analizini daha iyi anlayabilmek için Organization Unit yapınızın düzenli olması ve ilgili active directory objelerininde ilgili OU’ lar içerisinde bulunuyor olması gerekir.

İşte bu noktada System Center Configuration Manager ile Organization Unit yapınızı nasıl oluşturabileceğinizi ve ilgili objelerin nasıl ilgili OU’ lara otomatik olarak taşınabileceğine değiniyor olacağım.

System Center Configuration Manager ile Organization Unitleri oluşturmanın ve ilgili objelerin oluşturulan OU’ lar içerisine taşınmasını gerçekleştirmek için iki özelliğini kullanarak gerçekleştirebilirsiniz.

Bunlar’ dan ilki Scripts ikincisi Compliance Settings’ dir.

Ben burada Scripts özelliğini ile Organization Unit yapısını oluştururken Compliance Setting özelliği ilede ilgili active directory objelerini olması gereken OU’ lara taşıttırıyor olacağım.

Öncelikle Organization Unit yapısınıcı oluşturacağız. Bunun SCCM Yönetim Konsolu içerisinde Software Library > Scripts içerisinde Create Script diyerek hazırlamış olduğumuz PowerShell script’ imizi ekliyoruz.

Hazırlamış olduğumuz PowerShell script’ imiz sccm üzerine başarılı bir şekilde ekliyoruz.

Eklemiş olduğumuz script’ imizi dağıtmadan önce Approve ederek onaylamamız gerekmetedir. Bunun için üst ribon’ da veya üzerinde sağ click diyerek Approve/Deny diyoruz.

Açılan sihirbazda Approve or Deny script adımında Approve kutucuğunu işaretledikten ve Description’ a yapılacak olan işlem hakkında bir açıklama girdikten sonra devam ediyoruz.

Artık oluşturduğumuz script’ imizide başarılı bir şekilde aktif ettikten sonra çalıştırmaya hazır hale getirmiş olduk.

SCCM Yönetim Konsolumuz üzerinde Assets and Compliance > Device Collections’ a geldikten sonra ilgili Device Collection’ ımıza uyguluyor olacağız. Tabikide bu script’ i Primary Active Directory’ imize uygulamamız gerekmektedir. Bunun için bir device collection oluşturarak primary domain controller’ ımızı bu collection’ a member ediyoruz.

Sonrasında üst ribonda bulunan Run Script butonuna basarak sihirbazımızı başlatıyoruz.

Açılan Run Script sihirbazında OU yapımızı oluşturacak olan script’ imizi seçtikten sonra Next diyerek devam ediyoruz.

Son olarak Monitoring adımında çalıştırmış olduğumuz script’ imize ait script çıktısını başarılı veya başarısız olmuş olan işlem varsa görebiliyoruz. Hazırlamış olduğumuz script’ imiz başarılı bir şekilde tamamlandı.

Active Directory Users and Computers’ a baktığımızda hazırlamış olduğumuz Organization Unit yapımızın başarılı bir şekilde oluşturulduğunu görebiliyor.

Not : Burada hazırlamış olduğumuz OU yapısı eğitim amaçlıdır. Sizler kendi kurum yapınıza göre Organization Unit yapınızı hazırlayarak yapılandırmalısınız.

Organization Unit yapısının oluşturulması sağlamak için hazırladığım PowerShell script’ i aşağıdaki gibidir.

$ADDomain = “mcorp”

$TLD = “local”

$Protect = $False

 

#Organization Unitlerin Olusturulmasi

New-ADOrganizationalUnit -Name “Sunucu Sistemleri” `

-Path “dc=$ADDomain,dc=$TLD” `

-ProtectedFromAccidentalDeletion $Protect -verbose

 

New-ADOrganizationalUnit -Name “Uygulama Sunuculari” `

-Path “ou=Sunucu Sistemleri,dc=$ADDomain,dc=$TLD” `

-ProtectedFromAccidentalDeletion $Protect -verbose

 

New-ADOrganizationalUnit -Name “Web Sunuculari” `

-Path “ou=Sunucu Sistemleri,dc=$ADDomain,dc=$TLD” `

-ProtectedFromAccidentalDeletion $Protect -verbose

 

New-ADOrganizationalUnit -Name “Veritabani Sunuculari” `

-Path “ou=Sunucu Sistemleri,dc=$ADDomain,dc=$TLD” `

-ProtectedFromAccidentalDeletion $Protect -verbose

 

New-ADOrganizationalUnit -Name “Servis Hesaplari” `

-Path “dc=$ADDomain,dc=$TLD” `

-ProtectedFromAccidentalDeletion $Protect -verbose

 

New-ADOrganizationalUnit -Name “Guvenlik Gruplari” `

-Path “ou=Servis Hesaplari,dc=$ADDomain,dc=$TLD” `

-ProtectedFromAccidentalDeletion $Protect -verbose

 

New-ADOrganizationalUnit -Name “Servis Kullanicilari” `

-Path “ou=Servis Hesaplari,dc=$ADDomain,dc=$TLD” `

-ProtectedFromAccidentalDeletion $Protect -verbose

 

New-ADOrganizationalUnit -Name “Istanbul” `

-Path “dc=$ADDomain,dc=$TLD” `

-ProtectedFromAccidentalDeletion $Protect -verbose

 

New-ADOrganizationalUnit -Name “Kullanicilar” `

-Path “ou=Istanbul,dc=$ADDomain,dc=$TLD” `

-ProtectedFromAccidentalDeletion $Protect -verbose

 

New-ADOrganizationalUnit -Name “Bilgisayarlar” `

-Path “ou=Istanbul,dc=$ADDomain,dc=$TLD” `

-ProtectedFromAccidentalDeletion $Protect -verbose

 

New-ADOrganizationalUnit -Name “Izmir” `

-Path “dc=$ADDomain,dc=$TLD” `

-ProtectedFromAccidentalDeletion $Protect -verbose

 

New-ADOrganizationalUnit -Name “Kullanicilar” `

-Path “ou=Izmir,dc=$ADDomain,dc=$TLD” `

-ProtectedFromAccidentalDeletion $Protect -verbose

 

New-ADOrganizationalUnit -Name “Bilgisayarlar” `

-Path “ou=Izmir,dc=$ADDomain,dc=$TLD” `

-ProtectedFromAccidentalDeletion $Protect -verbose

Son olarka geldik Active Directory objelerinini ilgili Organization Unit’ ler içerisine taşınması….

Objelerin taşınması için Compliance Settings özelliğini kullanıyor olacağız. Bunun için Assets and Compliance > Compliance Settings > Configuration Items’ da Create diyerek bir Configuration Item oluşturuyoruz.

Açılan Configuration Item sihirbazında General adımında oluşturacağımız Item’ a bir isim vererek aşağıda bulunan Windows Desktops and Servers’ ı seçerek bir sonraki adıma geçiyoruz.

Supported Platforms adımında oluşturacağımız Configuration Item’ ımızın hangi işletim sistemleri üzerinde çalışabileceğini belirliyoruz. Hazırladığım script 2012, R2 ve 2016 sürümleri için destek verdiğinden dolayı bu işletim sistemleri seçerek bir sonraki adıma geçiyoruz.

Settings adımında yapılandırma öğemizi oluşturuyoruz. Bunun için New diyerek Create Setting penceremizi açıyoruz. Burada Name kısmında yapılandırmamıza bir isim tanımlıyoruz. Setting Type kısmında Script ve Data type kısmında String’ i seçerek oluşturduğumuz PowerShell script’ imizi kullanıyoruz.

Discovery Script kısmında Add Script diyerek hazırladığımız script’ imizi ekliyoruz.

Edit Discovery Script penceresi üzerinde hazırlamış olduğumuz script’ imiz PowerShell dilinde yazıldığı için Script Language’ i Windows PowerShell yapıyor ve Script kısmında hazırladığımız script’ imizi ekleyerek OK diyerek ekliyoruz.

Compliance Rules sekmesinde New diyerek bir kural oluşturuyoruz. Rule type Existential ve The setting must comply with the following rule kısmında The specified script returns at least one value seçeneği seçiyoruz. Noncompliance severity for reports kısmında Warning’ ı seçiyoruz. Böylelikle Non-Compliant duruma düşen istemcimiz olursa Warning olarak rapor üretecektir.

Summary penceresinde son olarak gerçekleştirdiğimiz yapılandırmaya yönelik ayarlamalarımı gördükten sonra Configuration Item’ ımızı oluşturmamızı tamamlıyoruz.

Oluşturmuş olduğumuz Configuration Item’ ımızı bir Configuration Baseline’ a dahil etmemiz gerekmetedir. Bunun için Create Configuration Baseline diyerek açılan sihirbazda baseline’ a bir isim verdikten sonra Configuration Data kısmında ilgili Item’ ımızı ekliyoruz ve OK diyerek tamamlıyoruz.

Son olarak Configuration Baseline’ ımızı ilgili Active Directory sunucumuza dağıtıyoruz. Bunun için Baseline üzerinde Deploy diyerek dağıtım sihirbazımızı açıyoruz. Collection kısmında ilgili Device Collection’ ımızı ekledikten sonra Schedule kısmında Simple schedule’ da bırakarak her yedi günde bir çalışmasını sağlıyacağız.

Active Directory’ mize baktığımızda ilgili objelerin ilgili Organization Unit’ ler içerise taşındığını görebiliyoruz. Tabikide bunu açıklamak ve öncesinde yapılması gereken bazı hususlar var.

Active Directory Objelerinin ilgili Organization Unitlere taşınması için hazırladığım script aşağıdaki gibidir.

Script’ i biraz açıklamak gerekir ise;

İstemci (Computer) objelerinin taşınması için istemciler üzerinde bazı bilgilerin oluşturulması gerekir. Ben burada Description’ ı baz alarak filtreleme gerçekleştirdim ve doğru OU’ lara taşınmasını sağladım. Computer objelerimin üzerinde hengi lokasyona bulunduğunu belirtmek için Description kısmına ilgili bilgiyi girmek gerekir.

Tabikide sizler yapınıza göre farklı LDAP Filtreleri ve attribute’ lar kullanarak gerçekleştirebilirsiniz.

Aşağıda ki PowerShell script’i Computer, User ve Group objelerini kapsamaktadır. Geliştirebilirsiniz…

#############ISTANBUL-ISTEMCILER######################

$computerstomove = Get-ADComputer -LDAPFilter “(description=istanbul)” -SearchBase “DC=mcorp,DC=local”

foreach ($computertomove in $computerstomove) {

Move-ADObject $computertomove -TargetPath “OU=Bilgisayarlar,OU=Istanbul,DC=mcorp,DC=local”

}

#############IZMIR-ISTEMCILER######################

$computerstomove = Get-ADComputer -LDAPFilter “(description=izmir)” -SearchBase “DC=mcorp,DC=local”

foreach ($computertomove in $computerstomove) {

Move-ADObject $computertomove -TargetPath “OU=Bilgisayarlar,OU=Izmir,DC=mcorp,DC=local”

}

#############ISTANBUL-KULLANICILAR######################

$userstomove = Get-ADUser -LDAPFilter “(description=istanbul)” -SearchBase “DC=mcorp,DC=local”

foreach ($usertomove in $userstomove) {

Move-ADObject $usertomove -TargetPath “OU=Kullanicilar,OU=Istanbul,DC=mcorp,DC=local”

}

#############IZMIR-KULLANICILAR######################

$userstomove = Get-ADUser -LDAPFilter “(description=izmir)” -SearchBase “DC=mcorp,DC=local”

foreach ($usertomove in $userstomove) {

Move-ADObject $usertomove -TargetPath “OU=Kullanicilar,OU=Izmir,DC=mcorp,DC=local”

}

#############ISTANBUL-GUVENLIK GRUPLARI######################

$userstomove = Get-ADGroup -LDAPFilter “(description=istanbul)” -SearchBase “DC=mcorp,DC=local”

foreach ($usertomove in $userstomove) {

Move-ADObject $usertomove -TargetPath “OU=Kullanicilar,OU=Istanbul,DC=mcorp,DC=local”

}

#############IZMIR-GUVENLIK GRUPLARI######################

$userstomove = Get-ADGroup -LDAPFilter “(description=izmir)” -SearchBase “DC=mcorp,DC=local”

foreach ($usertomove in $userstomove) {

Move-ADObject $usertomove -TargetPath “OU=Kullanicilar,OU=Izmir,DC=mcorp,DC=local”

}

Böylelikle Active Directory Organization Unit yapınızı ve objelerin ilgili OU’ lar içerisine taşınmasını otomatik olarak System Center Configuration Manager ile gerçekleştirebilirsiniz.

Leave a Comment

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Twitter Auto Publish Powered By : XYZScripts.com