Merhabalar ben Turan, bu yazımda iki farklı domain arasında nasıl trust ilişkisi kurulacağını göstereceğim. Hadi başlayalım :)
Trust Nedir?
Bir domain'e trust oluşturularak, domainler arası kullanıcılara, gruplara ve kaynaklara erişim sağlanabilir. Yani A domaininden B domainine trust oluşturulursa A domaini üzerindeki admin, B domaini kullanıcıları ve gruplarına erişebilir ve A domaini içerisindeki kaynakları kullanmaları için gerekli yetkileri bu kullanıcı ve gruplara sağlayabilir.
Ön Gereklilikler
Her iki samba DC'nin de zaman ayarı doğru olmalıdır.
Zaman servislerinin doğru konfigure edilmesi ve çalışır durumda olduğundan emin olunmalıdır.
DNS Konfigurasyonu
İlk olarak iki farklı domain'imiz olan turan.lab ile narut.lab domainlerinin ilk domain controller (DC)'ları üzerinde DNS ayarı yapılmalıdır ki birbirlerini görebilsinler. Bunun için /etc/samba/smb.conf
dosyası düzenlenmelidir.
nano /etc/samba/smb.conf
Bu dosya içerisinde [global] başlığı altında dns forwarder kısmına diğer DC'nin IP adresi yazılır:
Daha sonra dosya kaydedilip çıkılır ve "samba4" servisi yeniden başlatılır.
systemctl restart samba4.service
Bu işlemlerin aynısı diğer domainin DC'si üzerinde de gerçekleştirilir:
systemctl restart samba4.service
Eğer iki taraf birbirlerine ping atabiliyorsa, SRV record'a sahipseler ve kerberos ticket alabiliyorlarsa, DNS ayarı olmuş demektir.
Ping Atabilme
ping narut.lab (TURAN.LAB DC üzerinde çalıştırılır.)
ping turan.lab (NARUT.LAB DC üzerinde çalıştırılır.)
SRV Record Kontrolü
host -t srv _kerberos._tcp.narut.lab (TURAN.LAB üzerinde çalıştırılır.)
host -t srv _kerberos._tcp.turan.lab (NARUT.LAB üzerinde çalıştırılır.)
Kerberos Ticket Alınması ve Listelenmesi
kinit administrator@NARUT.LAB
klist
kinit administrator@TURAN.LAB
klist
ONE-WAY Trust Oluşturma
One-way trust ilişkisi oluşturulurken "--direction=" parametresi için iki farklı seçenek bulunmaktadır. Bunlar outgoing ve incoming şeklinde isimlendirilmektedir. Eğer bir A domaininden B domainine tek yönlü bir trust oluşturulursa, bu trust A tarafından outgoing olarak nitelendirilirken B tarafından incoming olarak nitelendirilir.
Aşağıdaki komut ile diğer domain'e tek yönlü trust oluşturulabilir: (USER yerine yetkili domain kullanıcısı yazılmalıdır.)
samba-tool domain trust create toour --type=forest --direction=outgoing --create-location=both -U USER@TOOUR.LAB
Yukarıdaki komut çalıştırıldığında Success sonucu görüntülenir. Gerekli Trust'ın oluşturulduğunu Trust Listing ile görebiliriz. Aşağıdaki komut ile trust'lar listelenir:
samba-tool domain trust list
TWO-WAY Trust Oluşturma
Çift yönlü trust oluşturulurken "--direction=" parametresine both anahtar kelimesi girilir. Aşağıdaki komut ile çift yönlü trust oluşturulabilir: (USER yerine yetkili domain kullanıcısı yazılmalıdır.)
samba-tool domain trust create narut --type=forest --direction=both --create-location=both -U USER@NARUT.LAB
Yukarıdaki komut çalıştırıldığında Success sonucu görüntülenir. Gerekli Trust'ın oluşturulduğunu Trust Listing ile görebiliriz. Aşağıdaki komut ile trust'lar listelenir:
samba-tool domain trust list
Eğer bu komut çıktısı olarak ikinci domain listeleniyorsa, trust başarılı bir şekilde kurulmuş demektir.
Not: Eğer bir domainden diğer domaine trust oluşturulursa (two-way), diğer domain üzerinde trust oluşturma komutunun tekrar çalıştırılmasına ihtiyaç yoktur. Eğer komut yine de çalıştırılırsa aşağıdaki hata ile karşılaşılır: