Bu ilk yazımda Linux Ubuntu nun şuan ki son versiyonu olan 15.04 ün Active Directory Domain Controller mode’unda kurulumu hakkında olacak.
Ubuntu dağıtımını seçmemin sebebi kütüphanesinin çok geniş ve güncel olmasıdır. Diğer dağıtımlarda da aynı yol izlenirse sonuca ulaşmak anlamında mesafe katedilebilir diye düşünüyorum.
Linux üzerinde sambayı AD olarak ayarlıcaz ve windows AD den pekte farklı olmadığını görücez. Daha güçlü yönleri olabilir mi? Tartışılır…
Not:komutlar kırmızı renktedir. Root yetkileri ile çalıştırılmıştır. Root ile çalıştırmak istemeyenler komutların başına sudo eklemelidir.
Senaryo;
Linux Ubuntu = dc.ubuntsrv.local 192.168.0.10 (AD-DC)
Linux Ubuntu = server.ubuntsrv.local 192.168.0.5 (Bu makine sadece bizi internete çıkarmak için)
Windows client= test-pc 192.168.0.12 (dhcp)
DC isimli ubuntu server a logon olarak başlayalım..
Önce güncellemeleri alalım;
apt-get update
apt-get upgrade
dc.ubuntsrv.local adlı makinenin IP ayarlarında şu aklemeleri yapıyoruz
nano /etc/network/interfaces
Hosts dosyasına dc isimli makinenin bilgilerini giriyoruz
nano /etc/hosts
192.168.0.10 dc.ubuntsrv.local dc
Nano editörü ile yapılan değişiklikten sonra ctrl+x ile kayıt yapılır. Kaydetmeden çıkmak için ise ctrl+z
Yetkilendirme gibi işlemler için acl ve attr paketlerini kuruyoruz
apt-get install acl attr
Bunlar daha sonra oluşturacağımız dosya ve klasörlerin yetkilendirmesinde işe yarayacaklar. Şimdi linux’ un dosya yapısında değişiklik yapalım. Yapacağımız share’lerin bulunduğu bölüme girip..
nano /etc/fstab
user_xattr,acl,barrier=1,
ekliyoruz. Kayıt edip çıktıktan sonra yeniden mount edelim
mount –a
Samba windows AD gibi LDAP ve kerberos kullanıyor bu sebeple NTP (network time protocol) kurmak zorundayız.
apt-get install ntp
Saat güncellemesi yapıyoruz..
service ntp stop
ntpdate -B 0.ubuntu.pool.ntp.org
service ntp start
Şimdi samba kurulumundan önce ihtiyazımız olan bu listedeki paketleri kuralım
apt-get install attr build-essential libacl1-dev libattr1-dev libblkid-dev libgnutls-dev libreadline-dev python-dev libpam0g-dev python-dnspython gdb pkg-config libpopt-dev libldap2-dev dnsutils libbsd-dev attr krb5-user docbook-xsl libcups2-dev
Kurulum sırasında kerberos sorularına BÜYÜK HARFLERLE sırasıyla
UBUNTSRV.LOCAL, DC.UBUNTSRV.LOCAL, DC.UBUNTSRV.LOCAL diyerek devam..
Şimdi sambayı kuruyoruz
apt-get install samba smbclient
Sambanın conf dosyasını yedekliyoruz.
mv /etc/samba/smb.conf /etc/samba/smb.conf.ydk
smb.conf samba tool u ile yapacağımız domain provizyonu sırasında otomatik olarak oluşturacak. Bu işlemi yapmazsanız, samba tool işlemi yaparken zaten bu dosya mevcut diyerek işlemi tamamlamaz.
Samba DNS backend olduğundan network interface’inde ekleme yapıyoruz.
nano /etc/network/interfaces
dns-nameservers 192.168.0.10 192.168.0.5
Not: Bu senaryoda 192.168.0.5 numaralı IP internet bacağı olduğundan bu girişi yaptık. Örneğin internet için modem kullanan bir yapıda durum farklı olacaktır. Networkün durumuna göre dizayn edilmesi gerekir.
Ekstra bir DNS kurmaya gerek yok kurulan samba DNS forwarder gibi çalışıyor.
Serverı RESTART ediyoruz…
DNS setup ı kontrol edelim
cat /etc/resolv.conf
search ubuntsrv.local
nameserver 192.168.0.10
nameserver 192.168.0.5
görünüyorsa devam.
İnteraktif mode da domaini oluşturuyoruz
samba-tool domain provision –use-rfc2307 –interactive
Not; Bu tool u kullanmadan da samba AD kurulabilir. Ancak samba-tool otomatik kurulum için ideal olduğundan seçildi.
Şimdi smb.conf a bir bakalım
cat /etc/samba/smb.conf
Sıra kerberos ta. Provizyon sırasında sambaya uygun krb5.conf oluşturulduğu için mevcut dosyayı güvenli bir alana taşıyıp oluşturulan dosyaya link veriyoruz. Yetki sorunu çıkmasın istiyorsak /etc nin altında olmalı.
cat /etc/krb5.conf
mv /etc/krb5.conf /etc/krb5.conf.ydk
ln -sf /var/lib/samba/private/krb5.conf /etc/krb5.conf
Serverı RESTART ediyoruz…
Şimdi LDAP ve kerberos testlerini yapalım
host -t SRV _ldap._tcp.ubuntsrv.local
host -t SRV _kerberos._udp.ubuntsrv.local
host -t A dc.ubuntsrv.local
Bu sorgulara doğru cevaplar alamazsanız işlem tamamlanamamıştır. DNS ayarlarını kontrol etmek gerekir!
Şimdi de Samba DC level ı yükseltelim
samba-tool domain level raise –domain-level 2008_R2 –forest-level 2008_R2
Windows 7 client a RSAT kurarak aşağıda ki işlemler kontrol edilebilir.
Yaptığım testlerde DNS – AD Users and Computers – GPO sorunsuz çalıştı. Diğerlerine henüz bakamadım. Tamamının çalışacağı garantisini ne yazık ki veremiyorum.
Domaine alınan windows client
Linux Ubuntu server 15.04 artık AD domain controller olarak hayatına devam edebilir.