Cara Instal dan Konfigurasi Samba di Ubuntu 20.04 LTS

Cara Instal dan Konfigurasi Samba di Ubuntu 20.04 LTS

Hai, selamat datang di ChotibulStudio. Pada tutorial kali ini, saya ingin berbagi terkait cara instal dan konfigurasi samba di Ubuntu 20.04 LTS. Tujuan akhir dari tutorial ini adalah membuat layanan berbagi berkas yang bisa diakses melalui share network melalui protokol SMB.

Menurut perspektif saya sebagai pengguna, ada cara berbagi berkas yang lebih mudah dan sedikit lebih manusiawi dari pada Samba. Layanan tersebut bernama NextCloud. Ada lagi layanan yang serupa, OwnCloud.

Hal itu akan berbeda jika dilihat dari perspektif saya sebagai seorang administrator. Saya tentu akan memilih Samba untuk membuat layanan berbagi berkas. Alasan utamanya adalah karena tidak memerlukan banyak service yang harus dikonfigurasi.

Entah bagaimanapun masuk akalnya perspektif seorang admin, semua itu tentu kembali pada kebutuhan pengguna. Pokoknya, pengguna itu nomor satu dan itu udah gak bisa dibantah lagi.

Toh, ujung-ujung-nya 'kan cuan. Iya, gak?

Beruntunglah Anda yang mendapatkan pengguna akhir yang perspektifnya sama dengan perspektif Anda sebagai seorang ngadimin. Gak rewel saat diajarin, gak minta cashback saat persetujuan kontrak, dan 'kenapa saya malah curhat, ya?.

Intinya, apapun itu, mari kita nikmati saja tutorial cara instal dan konfigurasi Samba di Ubuntu 20.04 LTS ini.

Apa itu Samba?

Samba (nama aplikasi) adalah sebuah perangkat lunak bebas lintas platform yang dilisensikan dibawah Lisensi Publik Umum (GNU GPL). Samba menyediakan layanan berbagi berkas dan mesin pencetak untuk semua komputer yang menggunakan protokol SMB. SMB (Server Message Block) merupakan sebuah protokol standar yang digunakan untuk layanan berbagi berkas dalam sebuah jaringan.

Selain fitur berbagi berkas dan alat pencetak, Samba juga mempunyai kemampuan untuk mengintegrasikan server dan desktop Linux/Unix ke dalam lingkungan Active Dirrectory. Sebuah layanan direktori yang dimiliki oleh sistem operasi jaringan Microsoft.

Instalasi Samba di Ubuntu 20.04 LTS

Memasang Samba di Ubuntu dan beberapa distro turunan Debian sangat mudah. Anda hanya perlu mengeksekusi sebaris perintah saja.

$ sudo apt install samba

That's all.

Konfigurasi Samba untuk berbagi berkas sederhana

Sebelum melakukan konfigurasi lebih lanjut, ada baiknya Anda menyiapkan direktori khusus yang nantinya Anda bagi ke jaringan via Samba.

Anda bisa nenempatkan dimana-pun yang Anda inginkan, asal Anda tidak lupa tempatnya.

Pada kasus ini, saya akan membuat direktori khusus Samba di /srv. Eksekusi perintah berikut.

$ sudo mkdir -p /srv/share/PUBLIC

Setelah direktori siap, mari kita lanjut membuat konfigurasi berbagi berkas sederhana dengan Samba.

Berkas konfigurasi utama Samba terletak di direktori /etc/samba dengan nama berkas smb.conf. Sebelum mulai mengubah konfigurasi bawaan, pastikan Anda membuat cadangannya terlebih dahulu.

$ sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.old

Edit berkas konfigurasi dengan mengeksekusi perintah berikut.

$ sudo nano /etc/samba/smb.conf

Cari bagian Share Definitions pada berkas smb.conf, kemudian tambahkan konfigurasi berikut.

[PUBLIC]
        comment = Direktori Public ChotibulStudio
        path = /srv/share/PUBLIC
        browsable = yes
        guest ok = yes
        read only = no
        create mask = 0755

Simpan konfigurasi yang sudah Anda buat. Kemudian lakukan cek apakah konfigurasi yang sudah Anda buat sudah sesuai atau mungkin terdapat galat.

$ sudo testparm
Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Weak crypto is allowed
Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

Jika hasil tes-nya seperti di atas, berarti semua sudah oke. Sekarang Anda tinggal memuat ulang layanan Samba dan pengujian hasil konfigurasinya.

$ sudo systemctl restart smbd

Sebelum lanjut, silakan buat sebuah berkas .txt di dalam direktori /srv/share/PUBLIC. Beri nama berkas tersebut sesuka Anda.

$ sudo touch /srv/share/PUBLIC/wer.txt

Sekarang waktunya pengujian konfigurasi. Dibagian ini, saya menggunakan manajer berkas bernama Caja, karena saya melakukan pengujian di Ubuntu MATE 20.04 LTS. Jika Anda menggunakan Ubuntu dengan lingkungan desktop lain, Anda bisa menyesuaikan caranya sesuai dengan manajer berkas bawaan.

Jika Anda menggunakan Ubuntu MATE seperti saya, berikut langkah-langkah pengujiannya.

1. Buka manajer berkas. Disini saya menggunakan Caja.

2. Klik menu (1) Go, kemudian klik (2) Location.

Tampilan manajer beras Caja
Tampilan manajer beras Caja

3. Location form akan tampil, Anda tinggal memasukkan (3) URL smb://192.168.63.178.

Tampilan URL form untuk navigasi ke direktori Samba
Tampilan URL form untuk navigasi ke direktori Samba

4. Sesaat setelah remote directory Samba yang Anda konfigurasi sudah terlihat, (4) klik dua kali pada direktori PUBLIC, (5) pastikan pilihan Connect As pada opsi Anonymouse kemudian (6) klik Connect.

Tampilan cara mengakses shared direktori Samba
Tampilan cara mengakses shared direktori Samba

5. Beberapa saat kemudian (7) berkas yang Anda buat sudah tampil.

Berkas dari shared directory Samba
Berkas dari shared directory Samba

Konfigurasi Samba dengan hak akses yang berbeda

Setelah mencoba membuat direktori yang bisa diakses bebas oleh publik dengan Samba, sekarang waktunya Anda mencoba konfigurasi yang sedikit rumit.

Kasus-nya seperti ini;

Anda adalah seorang sysadmin. Anda diminta oleh atasan Anda untuk membuat layanan berbagi berkas dengan ketentuan sebagai berikut:

  1. Buat layanan berbagi berkas dengan mana PUBLIC, dimana semua divisi dalam perusahaan bisa mengakses direktori tersebut tanpa menggunakan kata sandi.
  2. Buat layanan berbagi berkas untuk Divisi Finance, dimana hanya bisa diakses oleh orang yang ada di divisi tersebut lengkap dengan kata sandi.
  3. Buat layanan berbagi berkas untuk Divisi Sales, dimana hanya bisa diakses oleh orang yang ada di divisi tersebut lengkap dengan kata sandi.

Kasus pada no. 1, Anda sudah bisa membuatnya dengan mudah. Sekarang tinggal kasus nomor 2 dan nomor 3.

Mari kita mulai mengeksekusi kasus nomor 2 dan 3 sekaligus. Berikut langkah-langkahnya.

1. Tentukan nama grup yang akan digunakan

Menentukan nama grup yang paling mudah adalah dengan menggunakan nama divisi. Dalam hal ini, Divisi Finance dibuatkan grup bernama smbfinance. Sedangkan untuk Divisi Sales, dibuatkan grup bernama smbsales.

Untuk membuat dua grup tersebut, Anda bisa mengeksekusi perintah berikut.

$ sudo addgroup smbfinance

$ sudo addgroup smbsales

Buat shared directory dengan nama FINANCE dan SALES. Eksekusi perintah berikut.

$ sudo mkdir -p /srv/share/private/FINANCE

$ sudo mkdir /srv/share/private/SALES

Ubah masing-masing hak milik dan hak akses direktori.

$ sudo chown -R root:smbsales /srv/share/private/SALES

$ sudo chmod -R 0770 /srv/share/private/SALES

2. Buat akses pengguna untuk masing-masing grup

Mari kita tentukan nama pengguna untuk masing-masing grup di atas.

  • Fulan1, grup smbfinance, sandi sistem 'fulan123', sandi SMB '321naluf'.
  • Fulanah1, grup smbfinance, sandi sistem 'fulanah123', sandi SMB '321hanaluf'.
  • Fulan2, grup smbsales, sandi sistem 'fulan234', sandi SMB '432naluf'.
  • Fulanah2, grup smbsales, sandi sistem 'fulanah234', sandi SMB '432hanaluf'.

Pertama-tama, mari buat penggunanya dahulu. Eksekusi perintah berikut.

$ sudo useradd fulan1 --no-create-home

$ sudo passwd fulan1

Masukkan pengguna fulan1 ke grup smbfinance dengan mengeksekusi perintah berikut.

$ sudo usermod -aG smbfinance fulan1

Terakhir, tambahkan kata sandi untuk akses ke masing-masing shared directory via Samba.

$ sudo smbpasswd -a fulan1

Anda bisa mengulangi perintah-perintah di atas sesuai kebutuhan Anda.

3. Pasang plugin tambahan untuk Samba

Plugin ini memegang peran penting dalam proses autentikasi ketika pengguna mengakses shared directory. Terutama ketika Anda menerapkan kebijakan bahwa setiap pengguna yang akan mengakses direktori tertentu via Samba harus diotorisasi. Artinya, pengguna hanya bisa mengakses menggunakan nama pengguna dan kata sandi yang sudah terdaftar sebelumnya.

Nama plugin tersebut adalah pam_winbind yang disediakan oleh paket libpam-winbind.

Menurut catatan laman paket Debian, libpam-winbind merupakan sebuah paket yang menyediakan pam_winbind, sebuah plugin yang terintegrasi dengan server winbindd lokal untuk menyediakan otentikasi domain Windows ke sistem.

Eksekusi perintah berikut untuk memasang paket libpam-winbind.

$ sudo apt install libpam-winbind

4. Edit konfigurasi Samba

Beberapa persiapan sudah kita lakukan bersama. Mulai dari menyiapkan direktori, hingga sekenario aksesnya. Sekarang, mari edit kembali berkas konfigurasi Samba. Salin dan tempel barisan konfigurasi berikut.

[SALES]
        comment = Direktori Sales
        path = /srv/share/private/SALES
        valid users = @smbsales
        browsable = yes
        guest ok = no
        writable = yes

[FINANCE]
        comment = Direktori Finance
        path = /srv/share/private/FINANCE
        valid users = @smbfinance
        browsable = yes
        guest ok = no
        writable = yes

Pada konfigurasi di atas, yang perlu Anda garis bawahi ada pada baris valid user = @namagrup. Baris tersebut Anda memberikan batasan akses direktori berdasarkan grup.

Simpan konfigurasi yang sudah Anda buat dan periksa apakah masih ada galat.

$ sudo testparm

Jika sudah tidak ada lagi galat, muat ulang layanan Samba.

$ sudo systemctl restart smbd

5. Uji coba

Proses pengujian bisa Anda lakukan melalui manajer berkas dan caranya sama dengan cara pengujian sebelumnya. Hanya saja, pada bagian pengujian ini, Anda harus menggunakan nama pengguna dan sandi SMB yang sudah Anda siapkan sebelumnya untuk mengakses shared directory.

Proses pengujian shared directory Samba
Proses pengujian shared directory Samba

Sampai pada langkah ini, Anda sudah bisa membuat konfigurasi Samba dengan hak akses yang berbeda.

Demikian tutorial cara instal dan konfigurasi Samba di Ubuntu 20.04 LTS. Semoga tutorial ini bermanfaat untuk saya pribadi, Anda, dan orang-orang yang Anda cintai.

















Komentar

Postingan populer dari blog ini

Cara Memperbaiki Galat libdvd-pkg: apt-get check failed di Ubuntu 20.04 LTS

Daftar Rekomendasi Repositori Lokal Debian 11 "Bullseye"

Visual Studio Code Bisa Ngedit Berkas Secara Remote Via SSH, Canggih!