Active Directory Nedir?

Selam arkadaşlar bu makalemde sizlere Active Directory hakkında bilgiler vermeye çalışacağım.

Microsoft tarafından Windows Server ve Client sistemleri için tasarlanan bu sistem ile sunucu, client bilgisayarlar, kullanıcılar ve yazıcılar gibi bilgileri tutan bir dizin servisidir. Bu servis ile birlikte gelen Group Policy yönetim aracı ile çeşitli kısıtlamalar yapılabilir veya tek bir noktadan istenilen uygulamanın dağıtımını gerçekleştirebiliriz. Bu sayede sistemimizde bulunan kaynakların kontrolünü ve yönetimini kolaylaştıran bu sistem sayesinde çok tercih edilen bir sistemdir.

Active Directory ilk olarak Windows Server 2000 ile hayatımıza girmiştir ve bu süre zarfı içersinde gelişerek günümüze kadar ulaşmış olan popüler bir servistir. Tüm sorgulama ve değişiklik işlemleri ve veritabanı yönetimi gibi işlemler ESE (Extensible Storage Engine) Veritabanı motoru tarafından yürütülmektedir.

Bu servis, Domain Controller olarak adlandırılan sunucu üzerinde tutulmaktadır ve sunucu üzerindeki varsayılan konumu “%systemroot%NTDS” şeklindedir. Veritabanının ismi ise ntds.dit’dir. Ayrıca yapılan işlemlerin veritabanına yazılmadan önce saklandığı Transaction log olarak bilinen edb.log dosyasıda AD için kritik bir dosyadır. Ve son olarak edb.log dosyasından ntds.dit dosyasına dataların doğru olarak aktarılıp aktarılmadığını kontrol eden edb.chk dosyası da önemli dosyaların arasındadır.

Yukarıdaki resimde de olduğu gibi AD kurulu bir sistem olan dosyalardır.

Active Directory Özellikleri :

– Yönetilebilirlik
– Ölçeklenebilirlik
– Genişletebilirlik
– Güvenlik
– Diğer AD-DC’ler ile çalışabilme
– Kimlik doğrulama işlemleri ve Yetkilendirme
– GPO yönetimi
– DNS ve DHCP gibi servislerle beraber çalışabilirliği

Active Directory üzerinde bulunan roller :

– Domain Naming Master
– RID Master
– Infrastructure Master
– PDC Emulator
– Schema Master

Yukarıdaki komut yardımı ile ActiveDirectory yüklü olan bir serverda rolleri görmeniz mümkün olacaktır.

Schema Master : Yapıda bulunan nesnelerin sahip olacağı özellikleri belirleyen bileşendir.Örnek olarak vermek gerekirse AD üzerinde oluşturulan kullanıcının ad, soyad, şehir gibi bilgilerin olacağı Schema’yı belirler. Bu rol üzerinde sadece Domain Admins ve Enterprice Admins grup üyelerinin yetkileri vardır.

Domain Naming Master : Domain (Etki Alanı) isimlerini bünyesinde tutan rehberdir. Yeni bir domain kurulacağı zaman isim onayını bu rol verir. İsim çakışmalarını önler.

RID Master : Sistemimizde oluşturmuş olduğumuz her bir nesnenin benzersiz bir SID’si vardır. RID Master bunları belirler ve çakışmalarını önler.

Infrastructure Master : Farklı etki alanlarından gelen kullanıcıların SID numarasını ile ilgili ayarlamaları yapmaktadır. Global Catalog sunucusu ile replikasyonu sağlar.

PDC : Ortamımızda bulunan DC’ler arasında replikasyonu sağlar. Windows oturumlarını kontrol eder.

Active Directory Terimleri :

Domain :
Domain sistemi her zaman benzersiz bir isim seçilerek oluşturulmalıdır. Oluşturulan bu domain de güvenlik anlamında sınırlandırmalar mevcuttur ve sistem yöneticisi ayrıca bir izin belirlememişse, bir kullanıcının hakları sadece o domain içerisinde geçerli olacaktır. Domain’ler replikasyonda yapabilirler. AD Veritabanında değişiklikleri diğer domainlerde olan veritabanları ile eşleştirmek için birbirlerine kopyalayarak replikasyon yapabilirler.

Organizational Unit :
Bir domain içerisindeki kullanıcıları, grupları ve ya bilgisayarları yönetmek adına oluşturulan bir nesnedir. Bu nesne içersine eklenen diğer yönetilebilir objeler ile yönetimi kolaylaştırmak adına gruplar oluşturmuş oluruz.

Tree :
Aynı isim altında toplanan domainler topluluğuna denir. Tree, mevcut bir parent domain’e child domain’lerin eklenmesi ile genişletilebilir. Tree altında bulunan domainler hiyerarşik bir isim yapısı ile oluşturulur. Tree içersinde bulunan Child domainler isim yapılarındaki parent domainin ismini, kendi isimlerinin sonuna . ile eklerler.

Forest :
Birden fazla Tree’nin birleşmiş halidir. Oluşturulan ilk domain bir Tree’yi ifade eder ve bununla birlikte Forest’ta oluşmuş olur. Daha sonrasında bu Forest içersine eklenecek olan Tree’ler, diğer Tree’ler ile aynı isim aralığını paylaşmayacaklardır ama aynı Schema ve Global Catalog’a sahip olacaklardır. Forest yapısında oluşturulan ilk Tree, Forest-Root olarak bilinir ve diğer Tree’ler bu root altında toplanırlar.

Global Catalog :
AD domain yapısında bulunan objelerin ve kaynakların tümünün adres bilgisini tutan ve bir kaynağa ya da objeye erişmeye çalışıldığı zaman, objenin adres bilgisini veren yapıya denir. Forest içerisinde ancak kendi domain yapınızın dışında bulunan bir domaindeki kaynağa ya da objeye ulaşmak istediğiniz zaman gerekli olan adres bilgisini veren ve yönlendirmeyi yapan domain controller sunucusuna da GC server adı verilmektedir. Forest ortamında ilk kurulan DC, Forest Root DC olarak atanır ve bu cihaz otomatik olarak GC Server olarak görev yapacaktır. Ancak isteğe bağlı olarak bu değiştirilebilmektedir.

Ayrıca AD Domain yapılarında Universal Grup üyelikleri de GC Server sistemlerinde sorgulanır. GC aynı Forest içerisinde bulunan bütün domainler içerisindeki tüm DC arasında ortak olarak kullanılan bir roldür.

Active Directory Schema :
Kullanıcı, grup, bilgisayar ve yazıcılar gibi bütün objelere ait bilgileri içerir. Forest içerisinde sadece bir adet Schema bulunur ve bütün obje bilgileri bu schema üzerine yazılır. Oluşturulan bu Schema AD Veritabanı içerisinde depolanmaktadır.

Kullanıcı uygulamaları için dinamik bir yapı sunar. Kullanıcıların obje arama işlemi Schema üzerinden gerçekleşir. Yeni oluşturulan bir obje dinamik olarak Schema üzerinden güncellenecektir. Objelerin sınıf ve niteliklerinin korunması işleminde DACLs (Discretionary Access Control Lists) kullanılır. Bu sayede Schema üzerinde sadece yetkisi olan kullanıcılar değişiklik yapabilirler.

Lightweight Directory Access Protocol (LDAP) :
LDAP, TCP/IP üzerinde çalışan dizin servislerini sorgulama ve değiştirme amacıyla kullanılan uygulama katmanı protokolüdür. AD içersindeki rolü ise Sorgulama (Query) ve Güncelleme (Update) işlemlerinde kullanılan Directory Servis protokolüdür. AD objeleri, OU ve CN (Common Name) kullanılarak Active Directory içerisinde yeniden tanımlanır. LDAP isimlendirme yöntemini AD objelerine erişimde kullanır ve iki tanım içermektedir.

1 – Distunguished Names : Tüm AD objeleri, network ortamında kendilerine ulaşılmasını sağlamak adına bir path içerir. Bu path’e Distunguished Name denir.

CN=Semih, OU=Istanbul, DC=deneme, DC=local

CN = Common Name
OU = Organizational Unit
DC = Domain Controller anlamına gelmektedir.

2 – Relative Distunguished Names : LDAP, Distunguished Names içersinde yer alır ve objeye ait eşsiz (Unique) tanımlamayı içerir.

Delegasyon Yönetimi :

AD içerisinde açmış olduğunuz OU’lara delege ataması yaparak domainin asıl yöneticisi olan Administrator kullanıcısının yükü azalabilir. Bu sayede departman, bölge ve şube bazında; domain yapısını bilen adminlere temel görevler atanarak domain yönetimi kolaylaştırılabilir. Ve bu alanlara atanacak olan delegelere verilen görevler Administrator tarafından belirlenir.

Active Directory Fiziksel yapısı :

Fiziksel yapı sayesinde network trafiğinin kontrolü ve konfigürasyonu gerçekleştirilebilir. Fiziksel yapı içerisinde DC (Domain Controller) ve Site’lar oluşturulur. AD fiziksel yapısı, replikasyonun yer ve zamanı ile network’e katılımını (Logon) belirler.

Domain Controller :
AD veritabanının bir kopyasını (Replica) barından sunucudur. Domain ortamında yapılan her değişiklik bir DC üzerinde gerçekleştirilir ve aynı ortamdaki tüm DC sunuculara Replication yöntemi ile kopyalanırlar. DC’ler dizin bilgisini saklarlar ve kullanıcıların logon işlemlerini, kimlik doğrulama işlemlerini ve dizin arama işlemlerini üstlenirler. Ortamınız da bir ya da daha fazla DC olabilir. Ortamımızda birden fazla DC olmasındaki amaç ise Hata Toleransı sağlamak ve DC’ler arasında yük dağılımı yapmaktır.

Sites :
Birbirlerine yüksek bant genişliğine sahip dış hatlarla bağlanmış bir ve ya birden fazla IP alt ağlarını ifade etmektedir. Site’ların doğru şekilde yaplandırılması durumunda kullanıcıların login işlemleri sırasında oluşacak olan ağ trafiğini ve replikasyon işlemleri sırasında ki yoğunluğu aza indirmektir.
Replikasyon trağinin optimize edilmesi ve Kullanıcıların login işlemleri sırasında hızlı bir şekilde en yakın domain kontrolleri bulabilmesi, sites yapısının avantajlarındandır.

Active Directory ve DNS :
AD ve DNS entegrasyonu Windows Server sisteminin en önemli özelliklerinden biridir. Active Directory ve DNS, Objelerin hem AD hem de DNS domainleri ve kaynak kayıtları (Resource Records) olarak sunulabilecek şekilde benzer bir hiyerarşik isimlendirme yapısına sahiptirler. Bu entegrasyonun sonucu olarak Windows Server ağındaki bilgisayarlar, AD’ye özgü bir takım servisleri çalıştıran bilgisayarların yerini tespit edebilmek için DNS sunucuları kullanmaktadırlar. Örnek olarak kullanıcınız domain ortamındaki bir cihazdan login olmaya çalışıyor. Bu kısımda hangi domain controller üzerinden logon olacağını DNS serverda bulunan SRV kayıtları üzerinden kontrol ediyor. Bu kısımdan da anlayabileceğiniz gibi Domaininizin düzgün olarak çalışabilmesi için AD kurulumu sırasında SRV kayıtlarının DNS üzerinde düzgün bir şekilde yapılmış olması gerekmektedir. Ayrıca Windows Server, DNS bilgilerinin AD veritabanı ile tümleşik olarak saklanmasına olanak vermektedir. Bu sayede DNS bilgilerinin replikasyonu daha güvenli hale gelmektedir.

Güven İlişkileri (Trust Relationships) :
Farklı iki domain arasında bilgi ve kaynak paylaşımı amacıyla kurulan ilişkiye Trusted Relationship denmektedir. Eğer iki farklı domain aynı Forest içerisinde ise otomatik olarak bu ilişkiyi oluşturmuş olurlar. Bu tür ilişkini iki farklı çeşiti vardır.

– Çift yönlü (Two Way)
– Geçişli (Transitive)

Çift yönlü olması her iki tarafında birbirinin kaynaklarına erişebilmesi demektir. Geçişli ise; güven ilişkisine sahip olmayan iki domainin, her ikisinin de parent domain ile kurdukları güven ilişkisi üzerinden birbirlerinin kaynaklarına erişmesi anlamına gelmektedir.

– Parent-Child Trust
– Tree-Root Trust

Parent-Child Trust : Bir üst domain ile hem de bağlı olduğu domainin altındaki alt domain arasında kurulan güven ilişkisidir. Bu tip güven ilişkisi Child domainden bakınca Parent Trust, Parent yani en üstteki domainden bakınca Child Trust olarak görülmektedir. Kısaca Parent domainin Child domain ile, Child domaininde Parent domain ile kurmuş olduğu güven ilişkisidir. Bu iki ilişki çift yönlülük ya da geçişlilik özelliğine sahiptir. Bu sayede bir birlerinin kaynaklarına erişimleri olacaktır.

Tree-Root Trust : Forest Root domain ile farklı isim alanı altında kurulmuş her domain Tree’nin Tree Root domaini arasında oluşan güven ilişkisidir. Farklı domain Tree’ler ve onun altında kurulan Child domainler ve aynı Forest içersinde bulunan diğer domain tree altındaki child domainler Tree-Root Trust hiyerarşisini kullanarak geçişlilik özelliği ile birbirlerinin kaynaklarına verilecek olan yetkiler doğrultusunda erişebileceklerdir. Dolayısıyla Tree-Root Trust ilişkiside çift yönlü ve geçişlilik özelliğine sahiptir.

SID (Security IDentifiers) : Domain içerisinde kullanıcı, grup ve bilgisayar hesapları oluşturulduklarında, bu hesaplara otomatik olarak benzersiz bir key atanır. Bu key’e verilen ad ise SID’dir. Bu key oluşturulan objeyi temsil eden Unique bir numaradır. Sistem objeleri adları ile bilmez SID numarasından bilir ve tanır. Görmüş olduğunuz isimler görsel arayüzden oluşturulan halidir. Çünkü bir nesneyi sildiğiniz de ve ardından aynı isimle tekrar açtığınızda SID numarasının değiştiğini fark edeceksiniz. Bu iki obje bir birlerinden farklıdırlar. Kullanılan bir SID farklı bir obje için tekrar kullanılmayacaktır.

Örnek SID : S-1-5-21-1659004503-193565697-854245398-1002

NOT 1 : Ortamınızda kurulan ilk domain Parent’dır. Her Domainde minimum 1 adet master dc olmalıdır. Additional DC bir sistemde yedek dc olarak kullanılır.

NOT 2 : Yeni sistemlerde Child yapısı kaldırılmıştır. Çünkü Group Policy seviyesinde yapılan güncelleme ile OU seviyesinde GPO kuralları uygulanabilmesidir.

NOT 3 : Her Domainde oluşturulabilecek maximum obje sayısı 4Milyondur. Fazlasını istememiz durumunda Child oluşturmamız gerekmektedir.

Bir sonraki makalemde görüşmek üzere. Kolaylıklar dilerim.

Bir Cevap Yazın