Episode ini membedah SMB/CIFS secara mendalam: konfigurasi smb.conf, pengaturan server min dan max protocol, browsing share, dan printer shares. Kalian juga belajar tuning oplocks dan async, serta integrasi dengan Windows melalui permission dan DFS.

SMB/CIFS adalah protokol file sharing yang paling banyak dipakai di dunia, terutama karena dukungan native Windows. Episode 9 ini membedah protokol ini secara mendalam: bagaimana Samba mengonfigurasi server SMB, bagaimana memilih versi protokol, serta bagaimana mengoptimalkan performa dan integrasi dengan ekosistem Windows.
Setelah episode 8, kalian sudah bisa memount share SMB. Sekarang kalian akan memahami apa yang terjadi di balik layar dan bagaimana menyesuaikannya untuk workload nyata — dari media server yang banyak dibaca, sampai folder kolaborasi dengan lock yang ketat.
Di akhir episode ini kalian akan bisa membaca dan mengubah smb.conf, memilih versi protokol yang aman, mengaktifkan printer share, melakukan tuning oplocks, dan menerapkan permission ala Windows.
Samba adalah implementasi open-source dari protokol SMB/CIFS dan protokol pendukungnya. Di TrueNAS SCALE dan OpenMediaVault, Samba adalah mesin di balik semua SMB share. Konfigurasi utamanya tersimpan di file smb.conf.
testparm -vPerintah testparm memvalidasi smb.conf dan menampilkan semua parameter aktif beserta nilai defaultnya. Ini alat pertama saat mencurigai konfigurasi yang salah.
smb.conf terdiri dari bagian global dan bagian per-share. Bagian global mengatur perilaku seluruh server, sedangkan bagian per-share mengatur satu direktori tertentu.
[global]
workgroup = WORKGROUP
server min protocol = SMB2_10
server max protocol = SMB3_11
[data]
path = /tank/data
valid users = @data-teams
read only = noPerintah testparm terhadap file ini memastikan sintaks benar. Nama section dalam kurung siku adalah nama share yang tampil di client.
Setiap versi SMB membawa perbaikan keamanan dan performa. SMBv1 kuno dan rentan terhadap banyak serangan terkenal; Samba modern mematikannya secara default. Mengunci rentang versi dengan server min protocol dan server max protocol adalah praktik keamanan dasar.
server min protocol = SMB2_10
server max protocol = SMB3_11Rentang SMB2_10 hingga SMB3_11 mengizinkan versi yang aman sekaligus kompatibel dengan Windows, macOS, dan Linux modern. Konfigurasi seperti min protocol = SMB1 hanya dipertahankan untuk perangkat lama yang sebaiknya diganti.
Untuk melihat versi protokol dari sesi aktif, gunakan status Samba:
smbstatusOutput smbstatus menampilkan client yang terhubung dan versi protokol masing-masing sesi. Ini cara cepat memastikan tidak ada client yang turun ke protokol lama.
Browsing memungkinkan client menemukan share tanpa mengetik alamat lengkap. Samba mendukung ini melalui daftar server di network neighborhood Windows. Parameter server string dan pengaturan browse memberikan identitas pada NAS di jaringan.
server string = NAS Lab Belajar NASJika browsing bermasalah, akses langsung ke alamat IP tetap paling andal. Jangan terlalu bergantung pada browsing karena bergantung pada protokol discovery yang berbeda antar sistem operasi.
Samba juga bisa membagikan printer ke jaringan. Setiap printer didaftarkan sebagai share dengan tipe print. Konfigurasi ini umum di kantor kecil yang tidak punya print server terpisah.
[printer-kantor]
path = /var/spool/samba
printable = yes
printer name = lexmark-kantorPrinter share dipakai oleh client Windows setelah driver printer diinstall di sisi client. Untuk homelab modern, printer sharing via Samba semakin jarang karena banyak printer punya koneksi jaringan sendiri.
Oplocks (opportunistic locks) memungkinkan client meng-cache file dan membaca dengan optimistis tanpa bolak-balik ke server. Ini mempercepat akses drastis untuk workload baca-dominan seperti media dan dokumentasi. Namun untuk file yang sering diakses bersama-sama, oplocks yang terlalu longgar bisa menyebabkan konflik data.
kernel oplocks = yes
oplocks = yesParameter oplocks = yes mengaktifkan opportunistic locking. Nilai default sudah baik untuk sebagian besar kasus; turunkan hanya jika ada aplikasi yang bermasalah dengan cache client.
Operasi async memungkinkan server menyelesaikan write tanpa menunggu sinkronisasi penuh ke disk, meningkatkan throughput untuk workload yang toleran terhadap jeda. Untuk data yang membutuhkan durabilitas ketat, kombinasikan dengan kebijakan cache write yang sesuai.
aio read size = 1
aio write size = 1Parameter aio write size mengaktifkan I/O asinkron untuk file yang cukup besar. Ukuran ditentukan dalam byte; nilai 1 praktis mengaktifkan untuk semua file.
SMB ACL memungkinkan permission dikelola dengan model Windows, bukan hanya POSIX. Di TrueNAS SCALE, dataset dengan acltype NFSv4 bisa menampilkan permission SMB yang dikenali Windows Explorer. Ini penting agar permission yang diatur dari sisi Windows bekerja konsisten.
zfs get acltype tank/dataOutput zfs get acltype menampilkan jenis ACL dataset. Pastikan nilainya sesuai kebutuhan integrasi SMB di lingkungan Windows.
DFS (Distributed File System) memungkinkan share tersusun dalam satu namespace terpusat, misalnya \\nas\kantor\data yang menunjuk ke lokasi fisik mana pun. Di lingkungan Windows dengan banyak server, DFS memudahkan migrasi dan failover.
host msdfs = yesParameter host msdfs = yes mengaktifkan dukungan DFS di Samba. Konfigurasi link DFS dilakukan dari sisi client Windows atau tooling administrasi.
Info
Saat mengubah smb.conf secara manual di OpenMediaVault, ingat bahwa Web UI bisa menimpa konfigurasi. Gunakan area custom config yang disediakan OMV agar perubahan tidak hilang saat save ulang.
Di episode 9 ini kalian sudah membedah SMB/CIFS: memahami struktur smb.conf, mengunci versi protokol dengan server min dan max, mengonfigurasi browsing dan printer shares, melakukan tuning oplocks dan async, serta mengintegrasikan permission ala Windows dan DFS.
Inti yang harus dibawa pulang:
testparm memvalidasi konfigurasinya.Di episode 10 selanjutnya kita akan membahas NFS sharing — dari format /etc/exports, perbedaan NFSv3 dan v4, autentikasi Kerberos dengan sec=krb5, hingga nconnect untuk throughput dan penggunaan sebagai shared storage virtualisasi dan container. SMB sudah matang, sekarang giliran protokol favorit para administrator Unix.