Berbagi file penting untuk kolaborasi di jaringan apa pun. Dalam rangkaian artikel ini, saya akan menunjukkan kepada Anda bagaimana Samba dapat membantu Anda menyiapkan dan melayani berbagi file di server Linux yang dapat diakses dari klien Linux dan Windows.
Apa itu Samba?
Sebelum kita mendalami dan mengatur pembagian file, mari kita bahas apa itu Samba dan apa yang dapat dilakukannya untuk Anda.
Samba adalah rangkaian aplikasi yang mengimplementasikan protokol Server Message Block (SMB). Banyak sistem operasi, termasuk Microsoft Windows, menggunakan protokol SMB untuk jaringan client-server. Samba memungkinkan mesin Linux / Unix untuk berkomunikasi dengan mesin Windows dalam jaringan.
Samba adalah perangkat lunak sumber terbuka. Awalnya, Samba dikembangkan pada tahun 1991 untuk berbagi file dan cetak yang cepat dan aman untuk semua klien yang menggunakan protokol SMB. Sejak itu telah berkembang dan menambahkan lebih banyak kemampuan. Saat ini Samba menyediakan rangkaian aplikasi yang memungkinkan jaringan tanpa batas dan interoperabilitas antara *nix dan Windows.
Instal paket Samba
Dalam contoh ini, saya menggunakan CentOS 8 dengan hostname centos
sebagai server Samba saya dengan alamat IP 192.168.1.122. Satu-satunya paket yang perlu Anda instal adalah Samba, tetapi saya ingin menyertakan alat klien lain seperti samba-common
dan samba-client
untuk menguji bagian kami nanti.
# yum install samba samba-client samba-common -y
Buat direktori untuk dibagikan dan atur izinnya
Setelah Anda menginstal paket yang diperlukan di server, mari buat direktori dan berikan izin yang diperlukan pada direktori. Buat direktori bernama share
pada direktori root kami. Anda dapat memberi nama direktori ini apa pun yang Anda inginkan, dan memberinya izin baca, tulis, dan eksekusi. Dalam contoh ini, kita akan mengandalkan konfigurasi Samba untuk mengontrol akses baca, tulis ke direktori bersama.
# mkdir /share
# chmod -R 777 /share
Konfigurasikan pembagian
Sekarang kita telah menginstal paket-paket yang diperlukan, saatnya untuk mengkonfigurasi direktori bersama. File konfigurasi terletak di bawah /etc/samba
. Menggunakan editor teks favorit Anda, tambahkan berikut ini ke /etc/samba/smb.conf
. Biarkan sisa file konfigurasi apa adanya dan ini akan bagus untuk penyiapan kita.
# vim /etc/samba/smb.conf
[myshare]
comment = My share
path = /share
read only = No
Saya telah membuat share bernama myshare
dan menyediakan jalur untuk berbagi, yang dalam kasus kami terletak di /share
. Saya kemudian memberikan izin baca/tulis dengan read only = No
. Ada banyak parameter konfigurasi lain yang mungkin Anda lewati di sini, tetapi untuk pengaturan kami, pengaturan ini bagus.
Periksa konfigurasi Samba
Samba menyediakan alat untuk memeriksa file konfigurasi kita. Kami dapat memeriksa apakah file konfigurasi kami memiliki kesalahan dengan menggunakan testparm
perintah.
# testparm
Selanjutnya, kita perlu membuat akun pengguna Samba, sehingga Samba dapat berkomunikasi dalam sesi Samba dengan berbagi. smbpasswd
perintah memiliki beberapa fungsi tergantung pada apakah Anda menjalankan perintah sebagai root
atau sebagai pengguna standar. Jika Anda mengeluarkan smbpasswd
tanpa argumen sebagai non-root
pengguna, secara default smbpasswd
akan mengubah kata sandi Samba pengguna yang saat ini masuk. Saat Anda menjalankan smbpasswd
perintah sebagai root
, Anda akan dapat membuat akun Samba baru. Anda dapat membuat akun Samba hanya untuk akun pengguna Linux yang sudah ada.
# smbpasswd -a user
New SMB password:
Retype new SMB password:
Kita perlu mengkonfigurasi SELinux pada /share
direktori sehingga layanan Samba memiliki izin yang tepat.
# semanage fcontext -a -t samba_share_t "/share(/.*)?"
# restorecon -R -v /share
Selanjutnya, kita perlu mengaktifkan dan memulai smb
dan nmb
layanan.
# systemctl enable smb
# systemctl start smb
#systemctl enable nmb
#systemctl start nmb
Jika Anda memiliki firewalld
berjalan di server Anda, kami perlu mengonfigurasinya untuk mengizinkan lalu lintas Samba. Anda dapat melakukannya dengan menggunakan firewall-cmd
memerintah. Jangan lupa untuk membuat perubahan itu permanen dan muat ulang firewalld
.
Sekarang kami telah mengaktifkan dan memulai layanan kami. Kami dapat memeriksa untuk melihat apakah share tersedia dari server dengan menggunakan smbclient
alat. Inilah alasan saya menginstal alat klien Samba di mesin lokal. Perintah tersebut menggunakan sintaks berikut:
smbclient -U
# smbclient -U user -L 192.168.1.122
Enter SAMBA\user's password:
Mari kita periksa apakah kita dapat mengakses share dengan mengeluarkan perintah berikut di server:
# smbclient -U user //192.168.1.122/myshare
Enter SAMBA\user's password:
Try "help" to get a list of possible commands.
smb: \>
Selesai
Kami telah menginstal dan mengonfigurasi layanan berbagi file Samba di server Linux kami. Kami dapat mengakses bagian tersebut di mesin lokal. Pada artikel berikutnya, kita akan menyiapkan satu klien Linux dan satu klien Windows 10 untuk mengakses share yang baru saja kita buat.
[ Ingin mempelajari lebih lanjut tentang administrasi sistem Linux? Ikuti kursus administrasi sistem Red Hat. ]