Active Directory (AD) kullanıcıların, bilgisayarların, grupların ve kaynakların merkezi olarak yönetilmesini sağlayan bir dizin hizmetidir. Microsoft ortamlarında varsayılan olarak Windows Server + Active Directory Domain Services ile sağlanan bu işlevsellik Samba sayesinde Linux tabanlı sistemlerde de kurulabilir. Samba dosya ve yazıcı paylaşımı işlevlerinin ötesine geçerek tam teşekküllü bir Active Directory Domain Controller (AD DC) görevi üstlenebilir. Bu sayede:
- Windows istemciler Linux tabanlı DC’ye domain join olabilir,
- Grup ilkeleri (GPO) uygulanabilir,
- Kullanıcı/Grup yönetimi yapılabilir,
- DNS hizmeti Samba ile birlikte sağlanabilir.
Bu makalede Ubuntu 22.04 / 24.04 LTS üzerinde Samba AD DC kurulumu adım adım ele alınacaktır.
Ubuntu Üzerinde Samba AD DC Kurulumu
Domain adı: kadirkozan.local
Kısa domain (WORKGROUP): KADIRKOZAN
Domain Controller hostname: dc1
DC IP adresi: 192.168.100.11
Domain admin kullanıcı adı: adminuser (örnek, istediğine göre değiştirebilirsin)
Sunucu ve Ağ Hazırlığı
Hostname ayarı
sudo hostnamectl set-hostname dc01
Hosts dosyası
sudo nano /etc/hosts
Satır ekle:
192.168.100.11 dc01.kadirkozan.local dc01
2. Statik IP Yapılandırması (Netplan)
/etc/netplan/01-netcfg.yaml dosyası (örnek):
network:
version: 2
ethernets:
ens18:
dhcp4: no
addresses:
- 192.168.100.11/24
gateway4: 192.168.100.1
nameservers:
addresses:
- 192.168.100.11
- 8.8.8.8
Uygula:
sudo netplan apply
Test et:
ping 8.8.8.8
ping google.com
3. Gerekli Paketlerin Kurulumu
sudo apt update && sudo apt upgrade -y
sudo apt install samba krb5-user winbind smbclient -y
4. Eski Samba Kalıntılarını Temizleme
sudo systemctl stop smbd nmbd winbind
sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
sudo rm -rf /var/lib/samba/*
sudo rm -rf /var/cache/samba/*
5. Domain Provision
sudo samba-tool domain provision --use-rfc2307 --interactive
Yanıtlar:
- Realm: KADIRKOZAN.LOCAL
- Domain: KADIRKOZAN
- Server Role: dc
- DNS backend: SAMBA_INTERNAL
- DNS forwarder: 8.8.8.8
- Administrator password: (güçlü bir parola seç)
6. Kerberos Yapılandırması
/etc/krb5.conf içeriği:
[libdefaults]
default_realm = KADIRKOZAN.LOCAL
dns_lookup_realm = false
dns_lookup_kdc = true
Test:
kinit administrator
klist
7. Samba Servisini Başlat
sudo systemctl stop smbd nmbd winbind
sudo systemctl disable smbd nmbd winbind
sudo systemctl enable samba-ad-dc
sudo systemctl start samba-ad-dc
sudo systemctl status samba-ad-dc
8. Güvenlik Duvarı Ayarları
sudo ufw allow 53,88,135,137,138,139,389,445,464,636,3268/tcp
sudo ufw allow 53,88,137,138,464/udp
sudo ufw reload
9. DNS Kontrolü
sudo ss -tulnp | grep :53
Eğer systemd-resolved aktifse kapat:
sudo systemctl stop systemd-resolved
sudo systemctl disable systemd-resolved
sudo nano /etc/resolv.conf
İçeriğe:
nameserver 127.0.0.1
10. DNS A Kaydı
sudo samba-tool dns add localhost kadirkozan.local dc01 A 192.168.100.11 -U administrator
nslookup dc01.kadirkozan.local 127.0.0.1
11. Domain Admin Kullanıcısı
sudo samba-tool user create adminuser
sudo samba-tool group addmembers "Domain Admins" adminuser
sudo samba-tool user setprincipalname adminuser adminuser@kadirkozan.local
12. Windows PC’yi Domaine Eklemek
- DNS adresini
192.168.100.11yap. - Domain: KADIRKOZAN.LOCAL
- Kullanıcı:
administratorveyaadminuser - Parola: provision sırasında belirlediğin
Saat senkronizasyonu:
w32tm /resync
13. RSAT ile Yönetim
Windows’ta RSAT kur:
- Active Directory Users and Computers
- DNS Manager
- Group Policy Management