Episode ini memasuki dunia Active Directory: provision AD DC penuh dengan samba-tool domain provision, DNS internal yang terintegrasi, replikasi antar Domain Controller, dan analisis kasus menggantikan Windows Server DC untuk skala kecil-menengah. Kalian juga memahami perbedaan arsitektur daemon pada mode DC dan member.

Sampai episode 8, Samba bekerja sebagai standalone file server — user dikelola lokal. Di episode 9 kita menaiki level tertinggi Samba: menjadikannya Domain Controller Active Directory penuh. Fitur yang dibawa Samba 4 sejak 2012 ini berarti kalian bisa mengganti Windows Server DC — dengan DNS, Kerberos, dan replikasi AD — semuanya di atas Linux. Inilah kasus penggunaan yang membuat Samba tidak bisa dianggap "sekadar file server".
Domain Controller adalah server yang menyimpan database Active Directory (pengguna, komputer, group, kebijakan) dan menyediakan autentikasi domain (Kerberos + LDAP) serta DNS AD. Komputer Windows "bergabung ke domain" artinya mempercayai DC untuk login dan menerapkan kebijakan.
Ingat episode 2: pada mode standalone kita memakai smbd + nmbd. Pada mode AD DC, Samba memakai satu daemon samba yang menjalankan semuanya — file server, autentikasi, dan DNS AD — dalam satu proses. Ini bukan sekadar perbedaan nama; arsitektur internalnya dirancang khusus untuk menyajikan database AD dan replikasi.
Sebelum provision, smb.conf harus disetel ulang ke mode DC — Samba menyediakan samba-tool domain provision yang menulis konfigurasi yang benar untuk kalian. Mulai dari config yang bersih:
sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
sudo samba-tool domain provision \
--use-rfc2307 --interactive--interactive memandu kalian memasukkan:
LAB.LOCAL (formatnya UPPERCASE).LAB.dc.SAMBA_INTERNAL — DNS AD dijalankan Samba sendiri.--use-rfc2307 menambahkan skema POSIX (UID/GID) ke AD — diperlukan agar user AD bisa dipetakan ke identitas Unix di episode 10 (winbind). Tanpa opsi ini, integrasi login Linux ke domain akan kesulitan.
sudo systemctl unmask samba-ad-dc
sudo systemctl enable samba-ad-dc
sudo systemctl start samba-ad-dcDi sistem Ubuntu/Debian, service smbd/nmbd dan samba-ad-dc saling eksklusif — nonaktifkan smbd/nmbd agar tidak bentrok dengan port 445/139 (keduanya milik daemon samba pada mode DC):
sudo systemctl disable --now smbd nmbdWarning
Kesalahan paling umum di sini: membiarkan smbd/nmbd hidup bersamaan dengan samba-ad-dc. Keduanya berebut port 445/139, dan yang kalah akan gagal start. Saat mode DC aktif, systemctl status samba-ad-dc harus active (running) dan port 445 dilayani daemon samba — bukan smbd. Cek dengan sudo ss -tlnp | grep 445.
DNS adalah tulang punggung AD: klien mencari DC lewat SRV record (_ldap._tcp.lab.local), bukan menebak alamat. Pada mode DC, DNS AD dijalankan internal oleh samba (backend SAMBA_INTERNAL). Verifikasi service DNS AD:
sudo samba-tool domain info 127.0.0.1
samba-tool dns query localhost LAB.LOCAL @ A -U Administratordomain info menampilkan nama domain, forest, dan level fungsional. samba-tool dns query memeriksa record yang tersimpan di DNS AD. Untuk klien, arahkan DNS-nya ke alamat DC ini — itulah satu-satunya cara mereka menemukan domain.
Samba tidak menyediakan DHCP server — itu di luar cakupannya. Pola yang umum: DHCP server (ISC dhcpd, dnsmasq, atau router) memberi klien IP sekaligus DNS = alamat DC. Jadi "DNS/DHCP terintegrasi" artinya arsitekturnya dirancang agar DHCP menunjuk klien ke DNS DC, bukan Samba yang menjalankan DHCP.
Satu DC adalah titik kegagalan tunggal. Dengan dua DC, database AD direplikasi otomatis — user yang dibuat di DC1 muncul di DC2 dalam hitungan detik. Untuk menambah DC kedua:
sudo samba-tool domain join LAB.LOCAL DC -U Administrator --dns-backend=SAMBA_INTERNALSetelah bergabung, cek kesehatan replikasi:
sudo samba-tool drs showreplsamba-tool drs showrepl menampilkan daftar replikasi dengan DC partner, status success, dan waktu terakhir sinkron. Ini analog dari repadmin /replsummary di dunia Windows — tool yang wajib kalian hafal saat mengelola domain Samba.
Skenario paling umum: organisasi kecil-menengah (50-2000 user) yang ingin lepas dari lisensi Windows Server. Langkahnya: siapkan Samba DC sebagai DC tambahan di forest yang sama, replikasi berjalan, migrasi objek, lalu turunkan Windows DC. Catatan jujur soal batasan:
Samba AD DC bukan pengganti Windows Server untuk semua skenario enterprise besar — tapi untuk skala kecil-menengah dengan kebutuhan standar (login domain, file, DNS, GPO dasar), ia menawarkan penghematan lisensi yang signifikan dengan risiko yang terkendali.
Important
Keputusan migrasi Windows DC ke Samba bukan teknis murni — ia keputusan bisnis. Lakukan assessment fitur (GPO, DFS, Exchange, aplikasi line-of-business yang menulis ke AD) sebelum berkomitmen. Domain yang sudah diprovision tidak "murah" untuk dibatalkan; Samba menyediakan samba-tool domain demote tapi itu bukan jalan pintas untuk desain yang buruk.
Paket verifikasi lengkap:
sudo samba-tool domain level show
samba-tool domain info 127.0.0.1
samba-tool user list -U Administrator
host -t SRV _ldap._tcp.lab.localdomain level show: level fungsional domain/forest.user list: user yang tersimpan (harusnya sudah ada Administrator dan krbtgt).host -t SRV: verifikasi klien bisa menemukan DC lewat DNS — ujian akhir keandalan domain.Inti yang harus dibawa pulang:
samba; smbd/nmbd harus nonaktif.samba-tool domain provision --use-rfc2307 membuat domain, DNS, dan admin awal.SAMBA_INTERNAL) adalah jantung penemuan domain; arahkan klien ke DC sebagai DNS.samba-tool drs showrepl; DC kedua ditambahkan dengan samba-tool domain join.Di episode 10 selanjutnya kita akan membahas winbind: integrasi AD user — bergabung sebagai member domain dengan net ads join, mapping AD → UID/GID oleh winbindd, autentikasi login Linux dengan user AD, serta konfigurasi security = ads, realm, dan winbind use default domain. Server Samba kalian akan menerima user dari domain!