Sebelum menyentuh smbd dan smb.conf, kalian perlu menguasai Linux admin dasar (user, group, permission, mount), networking TCP/UDP dan DNS, serta pemahaman protokol file sharing. Di episode ini kalian juga menyiapkan server Linux dengan Samba 4.24.x, klien Windows/Linux untuk uji akses, dan VM untuk lab Active Directory.

Selamat datang di series Belajar Samba! Series ini akan membawa kalian menguasai Samba — implementasi open source protokol SMB/CIFS yang dipakai untuk berbagi file dan printer antara Linux dengan Windows, macOS, maupun sesama Linux — dari konfigurasi share dasar, integrasi Active Directory (AD DC & winbind), SMB3, hingga keamanan dan kesiapan produksi sebagai NAS enterprise. Total ada 23 episode yang tersusun dalam enam fase, dari fondasi konsep sampai production readiness.
Sebelum menjalankan smbd atau mengedit smb.conf, ada skill dasar dan perangkat lunak yang wajib kalian siapkan. Mengapa prasyarat ini penting? Karena Samba bekerja di dua lapisan sekaligus: lapisan protokol jaringan (SMB/CIFS yang berjalan di atas TCP) dan lapisan sistem operasi (user, group, dan permission filesystem Linux). Tanpa memahami keduanya, kalian akan sulit mendiagnosis mengapa share terlihat tapi tidak bisa ditulis, atau mengapa user Windows gagal login padahal password sudah benar.
Episode 0 ini adalah peta jalan kalian: kita memastikan skill dasar terpenuhi, menyiapkan server dan klien, lalu memverifikasi environment untuk pertama kali. Setelah episode ini selesai, seluruh series bisa diikuti dengan nyaman.
Samba tidak punya konsep "user" sendiri — setiap user Samba di-map ke user Linux. Kalian wajib paham cara membuat user (useradd), group (groupadd), dan mengatur permission filesystem (chown, chmod). Uji pemahaman kalian dengan perintah berikut:
id
ls -la /srvOutput id menunjukkan UID/GID yang nantinya menjadi basis mapping Samba. Direktori tempat share akan diletakkan harus bisa dibaca user Linux yang bersangkutan — kita bahas detail di episode 4.
Kalian perlu memahami TCP/UDP, konsep port, dan DNS. Koneksi SMB modern berjalan di port 445/TCP (dan 139 untuk NetBIOS), sedangkan integrasi Active Directory bergantung penuh pada DNS — sebuah AD DC harus bisa di-resolve namanya dengan benar oleh klien. Tanpa dasar ini, episode 9 (AD DC) dan 10 (winbind) akan terasa berat.
Pahami secara konseptual apa itu protokol berbagi file: klien mengirim request (buka file, baca, tulis, kunci) ke server, dan server menerjemahkannya menjadi operasi filesystem. SMB (Server Message Block) adalah salah satu protokol itu — dan Samba adalah implementasinya. Konsep ini akan memperjelas mengapa share option dan filesystem permission adalah dua lapisan yang saling menumpuk (episode 4).
Gunakan server Linux dengan distribusi yang kalian kuasai: Ubuntu/Debian atau RHEL family (Rocky/Alma/Fedora). Untuk series ini kita memakai Samba 4.24.x — current stable series di tahun 2026 (4.24.5, rilis 28 Juli 2026). Cek identitas host:
cat /etc/os-release
uname -r
hostnamectlJika paket Samba dari repositori distribusi belum versi 4.24, jangan khawatir — konsep yang diajarkan tetap berlaku; kita bahas versi dan riwayat rilis lebih dalam di episode 17.
Siapkan minimal satu klien Windows (untuk uji \\server\share dan jaringan) dan satu klien Linux (untuk mount -t cifs dan smbclient). Untuk klien Linux, pastikan paket cifs-utils dan smbclient tersedia — kita install di episode 6.
Bagian AD (episode 9-10) paling baik dipelajari di lab terisolasi. Siapkan dua atau tiga VM (bisa VirtualBox, KVM, atau Proxmox): satu untuk Samba AD DC, satu untuk member server, dan satu klien Windows yang bergabung ke domain. Semua VM sebaiknya berada di jaringan yang sama dengan DNS mengarah ke DC.
Dua hal kecil yang sering dilupakan tapi krusial untuk AD dan Kerberos: hostname yang stabil dan sinkronisasi waktu. Kerberos menolak autentikasi bila selisih jam klien-server melebihi batas (umumnya 5 menit). Siapkan sejak sekarang:
sudo systemctl enable --now chrony
timedatectl
timedatectl status | grep -i syncUntuk hostname, gunakan FQDN yang konsisten (misal fileserver.lab.local) dan pastikan ter-resolve lewat /etc/hosts atau DNS — karena DNS adalah fondasi AD, dan kita bahas lebih detail mulai episode 9.
Sebelum lanjut ke episode 1, jalankan verifikasi ringkas:
id
hostname -f
cat /etc/os-release | grep PRETTY_NAME
timedatectl | grep "Time zone"Empat perintah ini harus berjalan tanpa error. Jika smbd sudah terinstall, cek versinya dengan smbd --version (harus menampilkan Version 4.24.5 atau sejenisnya) — jika belum, episode 3 akan menginstallnya. Kalian juga bisa mulai membiasakan diri membaca dokumentasi resmi di samba.org, karena seri ini merujuk ke sana di sepanjang jalan.
Note
Samba adalah proyek di bawah naungan Software Freedom Conservancy — organisasi nirlaba yang menaungi proyek open source. Ini bukan sekadar trivia: kebijakan lisensi, rilis keamanan, dan governance proyek dijalankan secara transparan, yang menjadi alasan Samba dipercaya di environment enterprise. Kita bahas ini di episode 21.
Inti yang harus dibawa pulang:
id, hostname -f, dan cek versi Samba bila sudah terinstall.Di episode 1 selanjutnya kita akan membahas sejarah, latar belakang, dan mengapa membutuhkan Samba — dari Andrew Tridgell yang melakukan reverse engineering protokol SMB tahun 1992, lahirnya Samba 4 yang menyatukan file server dengan Domain Controller AD, hingga masalah nyata yang diselesaikannya: integrasi Linux ke ekosistem Windows tanpa lisensi Windows Server. Pastikan environment kalian sudah siap, karena perjalanan Belajar Samba baru saja dimulai!