Menyandingkan Linux ke Windows dengan Samba
By: mahyuddin*
Menghubungkan jaringan komputer dengan sistem berbeda tidaklah sulit hal ini karena sudah adanya layanan-layanan yang sudah disediakan oleh sistem operasi yang bersangkutan. Seperti pada Linux untuk berhubungan dengan sistem lain maka Linux membutuhkan suatu service yang disebut dengan Samba, dimana samba ini digunakan Linux untuk menjadi client maupun server di jaringan yang ada sistem operasi windowsnya.
Samba adalah program aplikasi yang mengimplementasikan protokol Server Massage Block (SMB) di lingkungan Unix atau Linux. Protokol ini mempunyai fungsi utama untuk berbagi (sharing) file dan printer. Samba dapat menjadi jembatan untuk mengatasi masalah komunikasi antar jaringan, baik dalam lingkungan Linux/unix maupun platform lainya.
Untuk menginstall samba user harus log-in sebagai root, log-in sebagai root dapat melalui terminal konsole dengan cara sebagai berikut:
ardienz@udienz:~$ su
password:
udienz:~#/home/udienz#
Kemudian install samba
udienz:~# apt-get install samba smbclient smbfs
Atau bila menggunakan Ubuntu/Edubuntu/Kubuntu dapat menggunakan perintah sudo
ardienz@udienz-ubuntu:~$ sudo apt-get install mc
ardienz@udienz-ubuntu:~$ sudo apt-get install smbclient smbfs
ardienz@udienz-ubuntu:~$ sudo apt-get install samba smbclient smbfs
Kemudian konfigurasikan samba dengan membuka /etc/samba/samba.conf dengan Midningt Commander atau gedit atau kedit bila menggunakan desktop KDE
ardienz@udienz-ubuntu:~$ Sudo gedit /etc/samba/smb.conf
ardienz@udienz-ubuntu:~$ Sudo mcedit /etc/samba/smb.conf
#======================= Global Settings =======================
[global]
workgroup = mshome
server string = %h server (Samba %v)
wins support = yes
wins server = w.x.y.z
# include = /etc/samba/dhcp.conf
dns proxy = no
; name resolve order = lmhosts host wins bcast
#### Debugging/Accounting ####
log file = /var/log/samba/log.%m
max log size = 1000
panic action = /usr/share/samba/panic-action %d
####### Authentication #######
security = share
encrypt passwords = true
; passdb backend = tdbsam guest
; obey pam restrictions = yes
; guest account = share
; invalid users = nobody
; unix password sync = no
_ _
; passwd program = /usr/bin/passwd %u
; passwd chat = *EntersnewsUNIXspassword:* %nn *RetypesnewsUNIXspassword:* %nn .
; pam password change = no
########## Printing ##########
load printers = yes
printing = bsd
printcap name = /etc/printcap
printing = cups
printcap name = cups
printer admin = @ntadmin
######## File sharing ########
preserve case = yes
short preserve case = yes
############ Misc ############
include = /home/samba/etc/smb.conf.%m
socket options = TCP_NODELAY
; message command = /bin/sh -c ‘/usr/bin/linpopup “%f” “%m” %s; rm %s’ &
; domain master = auto
; idmap uid = 10000-20000
; idmap gid = 10000-20000
; template shell = /bin/bash
#======================= Share Definitions =======================
[homes]
_ comment = Home Directories_
_ browseable = yes_
[data]
_ comment= cobain aja deh_
_ path= /home/ ardienz/public_
_ browseable= yes_
_ read only= yes_
_ guest ok= yes_
_ writable= yes_
writable = yes
create mask = 0777
directory mask = 0777
[netlogon]
_ comment = Network Logon Service_
_ path = /home/samba/netlogon_
_ guest ok = yes_
_ writable = yes_
_ share modes = yes_
[printers]
_ comment = All Printers_
_ browseable = yes_
_ path = /tmp_
_ printable = yes_
_ public = yes_
_ writable = yes_
_ create mode = 0700_
_ [print$]_
_ comment = Printer Drivers_
_ path = /var/lib/samba/printers_
_ browseable = yes_
_ read only = no_
_ guest ok = yes_
write list = root, @ntadmin, “Mahyuddin Susantoâ€
[cdrom]
_ comment = Samba server’s CD-ROM_
_ writable = no_
_ locking = no_
_ path = /cdrom_
_ public = yes_
_ preexec = /bin/mount /cdrom_
_ postexec = /bin/umount /cdrom_
Keterangan:
Workgroup : setiap host atau client yang terhubung ke dalam satu jaringan yang sama (satu group) baik windows ataupun Linux harus memiliki workgroup yang sama.
Guest account : diset sebagai nobody; guest account ini mengatur pemberian hak izin write ke semua user
**Security **:option defaultnya adalah “userâ€, “shareâ€, “serverâ€, dan “domainâ€
**comment **: komentar tentang drive tersebut
**path **: letak direktori yang akan dishare
**read-only **: option defaultnya adalah “yes†sehingga semua host yang ada tidak dapat melakukan perubahan apapun terhadap drive tersebut
**locking **: hak izin read only untuk filesystem ataupun perangkat device (CD-ROM)
**browseable **: Option defaultnya adalah “yes†sehingga drive yang dishare akan tampak pada komputer lain
**Public **: option ini menyebabkan semua host dapat mengakses
file atau direktori yang tershare tanpa adanya permintaan password dari komputer tersebut
**guest ok **: fungsinya sama dengan public
**create mode **: option ini untuk mengatur hak–hak yang akan diberikan kepada host lain terhadap file atau direktori yang akan dishare.
Writable : option ini memberikan hak azas kepada host lain untuk melakukan perubahan pada file atau direktori yang anda share. Pilihan defaulnya adalah “noâ€.
Setelah anda melakukan perubahan pada file konfigurasi di atas, restart kembali service samba anda untuk mendapatkan perubahan pada file konfigurasi tersebut. Perintah yang digunakan adalah:
udienz:~# /etc/init.d/samba restart
Apabila user ingin melihat file apasaja di komputer Debian/Ubuntu dapat menggunakan perintah:
ardienz@udienz-ubuntu:~/public$ sudo testparm /etc/samba/smb.conf
Load smb config files from /etc/samba/smb.conf
Processing section “[printers]”
Processing section “[print$]”
Processing section “[Dekstop_Udienz]”
NOTE: Service Dekstop_Udienz is flagged unavailable.
Processing section “[Bolehdiakses]”
Loaded services file OK.
WARNING: passdb expand explicit = yes is deprecated
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
_ _
[global]
_ workgroup = LABKOMTEK_
_ server string = %h server (Samba, Ubuntu)_
_ security = SHARE_
_ obey pam restrictions = Yes_
_ passdb backend = tdbsam_
_ passwd program = /usr/bin/passwd %u_
_ passwd chat = EntersnewsUNIXspassword: %nn RetypesnewsUNIXspassword: %nn passwordsupdatedssuccessfully ._
_ syslog = 0_
_ log file = /var/log/samba/log.%m_
_ max log size = 1000_
_ dns proxy = No_
_ wins support = Yes_
_ panic action = /usr/share/samba/panic-action %d_
_ invalid users = root_
_ _
[printers]
_ comment = All Printers_
_ path = /tmp_
_ create mask = 0700_
_ printable = Yes_
_ browseable = No_
_ _
[print$]
_ comment = Printer Drivers_
_ path = /var/lib/samba/printers_
_ _
[Dekstop_Udienz]
_ comment = desktopnya udienz hehehe_
_ path = /home/_
_ read only = No_
_ available = No_
_ _
[Bolehdiakses]
_ path = /home/black/public_
_ read only = No_
_ guest ok = Yes_
_ _
Untuk melihat file atau direktori yang telah anda dan komputer lain share, anda dapat menggunakan browser konqueror yang mendukung protokol samba. Pada Url ketikkan : **smbclient –U% -L
ardienz@udienz-ubuntu:~/public$ sudo smbclient -U% -L 192.168.171.1
Domain=[LABKOMTEK] OS=[Windows 5.1] Server=[Windows 2000 LAN Manager]
Sharename Type Comment
--------- ---- -------
Error returning browse list: NT_STATUS_ACCESS_DENIED
session request to 192.168.171.1 failed (Called name not present)
session request to 192 failed (Called name not present)
Domain=[LABKOMTEK] OS=[Windows 5.1] Server=[Windows 2000 LAN Manager]
Server Comment
UDIENZ_XP
Workgroup Master
LABKOMTEK UDIENZ_XP
LABKOMTEK BLACK-DESKTOP
Bila user Linux ingin me-mount directory yang dishare dapat menggunakan perintah:
udienz:~# smbmount//192.168.42.1/my_music /mnt/music
Jika nama host atau IP_address yang anda masukkan ada dalam jaringan anda, maka konqueror webrowser akan menampilkan isi dari direktori yang dishare oleh komputer lain.
Oleh:
Mahyuddin Susanto
Mahasiswa Teknik Elektro Universitas Jember
Asisten UPT-TI Universitas Jember, Aktifis IMM KoTA Universitas Jember, Ketua DPM Teknik Elektro Universitas Jember
_e-mail = [email protected]__ _