SAMBA SERVER Pengantar -...

14
Sesi Samba Server. © 2008, Wilfridus Bambang. FIT, UK Maranatha, Bandung. 1 SAMBA SERVER Pengantar Samba merupakan salah satu aplikasi di mesin UNIX dan turunannya yang mengimplementasikan protokol SMB atau Server Message Block. Pada mayoritas sistem operasi, protokol SMB digunakan dalam jaringan client-server, sehingga memungkinkan antar sistem operasi yang berbeda tersebut dapat saling berkomunikasi, seperti misalnya bertukar data, akses printer secara bersama, hingga digunakan sebagai jalur login ke suatu server domain. Untuk mengetahui sejarah dari penciptaan Samba, adalah tidak terlepas dari peran Andrew Tridgell, sebagai koordinator dari tim pengembangan samba, yang mengendalikan akses terhadap komunitas melalui rumahnya di Canberra, Australia. Project Samba dimulai pada tahun 1991, ketika Andrew Tridgell membuat profgram fileserver untuk jaringan di rumahnya yang mendukung protokol DEC dari Digital Pathworks. Sampai akhirnya pengembangan tersebut terus berlangsung saat ini, dan didukung oleh banyak programmer dari seluruh dunia yang ikut membangun SMB Server. Beberapa alasan yang membuat admistrator sistem mengimplementasikan aplikasi samba di server adalah: menyediakan layanan berbagi pakai (sharing) untuk berkas di server, sehingga dapat diakses oleh banyak client pada saatu waktu. memberikan akses kepada partisi dari sistem Microsoft kepada server Unix dan turunannya. menghadirkan layanan berbagi pakai printer pada jaringan. menghilangkan keterbatasan pengaksesan informasi dan data pada jaringan komputer yang diimpelementasikan dengan menggunakan banyak sistem operasi (multi OS). Gambar 9.1. Contoh implementasi server multi OS Mengenai isu performansi dari aplikasi samba, dapat dilihat dari beberapa fakta berikut ini: Mendukung kurang lebih 35000 komputer client secara simultan. Mendukung kurang lebih 500 pengguna konkuren pada layanan file dan print dari suatu server single medium-size, tanpa mengurangi performansi secara berarti dari server penyedia. Dari hasil riset, telah dibuktikan bahwa dukungan terhadap perangkat keras yang diberikan oleh aplikasi samba, lebih baik dari server berbasis Microsoft (terutama untuk masalah komunikasi antara dua atau lebih sistem operasi).

Transcript of SAMBA SERVER Pengantar -...

Sesi Samba Server. © 2008, Wilfridus Bambang. FIT, UK Maranatha, Bandung. 1

SAMBA SERVER Pengantar Samba merupakan salah satu aplikasi di mesin UNIX dan turunannya yang mengimplementasikan protokol SMB atau Server Message Block. Pada mayoritas sistem operasi, protokol SMB digunakan dalam jaringan client-server, sehingga memungkinkan antar sistem operasi yang berbeda tersebut dapat saling berkomunikasi, seperti misalnya bertukar data, akses printer secara bersama, hingga digunakan sebagai jalur login ke suatu server domain. Untuk mengetahui sejarah dari penciptaan Samba, adalah tidak terlepas dari peran Andrew Tridgell, sebagai koordinator dari tim pengembangan samba, yang mengendalikan akses terhadap komunitas melalui rumahnya di Canberra, Australia. Project Samba dimulai pada tahun 1991, ketika Andrew Tridgell membuat profgram fileserver untuk jaringan di rumahnya yang mendukung protokol DEC dari Digital Pathworks. Sampai akhirnya pengembangan tersebut terus berlangsung saat ini, dan didukung oleh banyak programmer dari seluruh dunia yang ikut membangun SMB Server. Beberapa alasan yang membuat admistrator sistem mengimplementasikan aplikasi samba di server adalah:

menyediakan layanan berbagi pakai (sharing) untuk berkas di server, sehingga dapat diakses oleh banyak client pada saatu waktu.

memberikan akses kepada partisi dari sistem Microsoft kepada server Unix dan turunannya. menghadirkan layanan berbagi pakai printer pada jaringan. menghilangkan keterbatasan pengaksesan informasi dan data pada jaringan komputer yang

diimpelementasikan dengan menggunakan banyak sistem operasi (multi OS).

Gambar 9.1. Contoh implementasi server multi OS

Mengenai isu performansi dari aplikasi samba, dapat dilihat dari beberapa fakta berikut ini: Mendukung kurang lebih 35000 komputer client secara simultan. Mendukung kurang lebih 500 pengguna konkuren pada layanan file dan print dari suatu server

single medium-size, tanpa mengurangi performansi secara berarti dari server penyedia. Dari hasil riset, telah dibuktikan bahwa dukungan terhadap perangkat keras yang diberikan oleh

aplikasi samba, lebih baik dari server berbasis Microsoft (terutama untuk masalah komunikasi antara dua atau lebih sistem operasi).

Sesi Samba Server. © 2008, Wilfridus Bambang. FIT, UK Maranatha, Bandung. 2

Instalasi samba Untuk memulai instalasi dari aplikasi samba, adalah terlebih dahulu menyiapkan dvd instalasi, untuk selanjutnya melalui paket manager berbasis GUI (synaptic, dll), atau melalui konsol, pengguna dapat memulai menginstall aplikasi tersebut. tutorial ini lebih cenderung untuk membawa pengguna pada konfigurasi berbasis konsol, sehingga diharapkan lebih familiar terhadap proses administrasi mesin Linux secara manual. Untuk memulai instalasi, lakukan perintah berikut: apt-get install samba

Kemudian, akan muncul jendela dialog kepada pengguna yang akan menanyakan beberapa masukan yang akan digunakan dalam konfiguras aplikasi. Seperti yang terlihat pada visualisasi di bawah ini, pengguna diminta untuk memberikan informasi mengenai nama dari workgroup. Pada tutorial ini, masukkan data berikut: workgroup

Gambar 9.2. Meminta informasi workgroup dari jaringan komputer pengguna Selanjutnya adalah pengguna akan ditanyakan apakah ingin mengkolaborasikan server SMB dengan akses layanan dhcp. Karena sebelumnya pengguna telah melakukan konfigurasi secara manual pada nomor IP, maka opsi yang dipilih adalah “No”.

deb:/media# apt-get install samba

Reading package lists... Done

Building dependency tree... Done

The following extra packages will be installed:

samba-common

Recommended packages:

smbldap-tools

The following NEW packages will be installed:

samba samba-common

0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.

Need to get 5637kB of archives.

After unpacking 13.6MB of additional disk space will be used.

Do you want to continue [Y/n]?

Sesi Samba Server. © 2008, Wilfridus Bambang. FIT, UK Maranatha, Bandung. 3

Gambar 9.3. Meminta konfirmasi mengenai kolaborasi dengan dhcp

Selesai melakukan proses instalasi, pengguna dapat melihat secara manual menggunakan editor yang terdapat di sistem, mengenai berkas konfigurasi dari samba yang berada di lokasi /etc/samba. Pada contoh berikut, berkas yang akan dilakukan perubahan adalah smb.conf. Seperti yang terlihat pada isi dari berkas konfigurasi smb.conf di bawah ini: membuka berkas menggunakan pico. perintah: pico /etc/samba/smb.conf

#======================= Global Settings =======================

[global]

## Browsing/Identification ###

# Change this to the workgroup/NT-domain name your Samba server

will part of

workgroup = workgroup

# server string is the equivalent of the NT Description field

server string = %h server

####### Authentication #######

# "security = user" is always a good idea. This will require a

Unix account

# in this server for every user accessing the server. See

# /usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/ServerType.html

# in the samba-doc package for details.

# security = user

security = share

Sesi Samba Server. © 2008, Wilfridus Bambang. FIT, UK Maranatha, Bandung. 4

Salah satu bagian penting dari konfigurasi ini adalah melakukan pengubahan nilai security dari samba, yang sebelumnya adalah user, menjadi share. Hal ini dilakukan agar pengaksesan suatu direktori yang berbagi pakai tersebut dapat langsung dilakukan oleh pengguna, tanpa harus memasukkan suatu informasi otorisasi seperti username dan password.

Menambahkan bagian berikut ini pada berkas smb.conf. Bagian ini yang akan mengatur mengenai direktori yang akan diberikan akses pakai bersama pada jaringan, seperti yang terlihat pada contoh konfigurasi:

comment: memberikan penjelasan tambahan terhadap direktori bersama. browseable: memberikan akses melihat isi dari direktori yang disharing. writeable: memberikan hak akses tulis ke direktori (sebaiknya tidak). public: semua komputer dapat mengakses direktori sharing tersebut tanpa harus sebelumnya

terhubung dalam account atau hak akses yang telah ditentukan. path: merupakan lokasi direktori yang akan disharing ke jaringan. guest ok: membuat semua pengguna tanpa otorisasi dapat mengakses folder tersetbut.

Selesai menambahkan konfigurasi baru, maka pengguna harus melakukan restart layanan dari samba. lakukan menggunakan perintah /etc/init.d/samba restart, seperti yang terlihat pada contoh di bawah ini: deb:/media# /etc/init.d/samba restart

Stopping Samba daemons: nmbd smbd.

Starting Samba daemons: nmbd smbd.

#======================= Share Definitions =======================

#[homes]

# comment = Home Directories

# browseable = no

# By default, the home directories are exported read-only. Change

next

# parameter to 'yes' if you want to be able to write to them.

# writable = no

# File creation mask is set to 0700 for security reasons. If you

want to

# create files with group=rw permissions, set next parameter to

0775.

# create mask = 0700

# Directory creation mask is set to 0700 for security reasons. If

you want to

# create dirs. with group=rw permissions, set next parameter to

0775.

# directory mask = 0700

[berbagi] comment = berbagi adalah suatu keindahan !!!

browseable = yes

writable = no

public = yes

path = /home/me

guest ok = yes

Sesi Samba Server. © 2008, Wilfridus Bambang. FIT, UK Maranatha, Bandung. 5

Percobaan hasil konfigurasi Untuk melakukan proses testing terhadap konfigurasi yang telah dilakukan sebelumnya, apakah mengandung kesalahan atau tidak, terdapat satu aplikasi yang sntadar digunakan, yaitu testparm. Untuk hasil eksekusi ketika menjalankan perintah tersebut, adalah dengan mengetikkan nama aplikasi tersebut langsung di konsol, seperti yang terlihat pada contoh berikut:

Kemudian terdapat satu aplikasi yang berfungsi melakukan pengecekan status dari koneksi yang dilakukan melalui samba. aplikasi tersebut adalah smbstatus. Ketika tidak adak akses dari client ke server, maka tampilan di layar setelah mengeksekusi perintah smbstatus adalah sebagai berikut:

deb:/media# testparm

Load smb config files from /etc/samba/smb.conf

Processing section "[berbagi]"

Loaded services file OK.

Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

[global]

server string = %h server

security = SHARE

obey pam restrictions = Yes

passdb backend = tdbsam

passwd program = /usr/bin/passwd %u

passwd chat = *Enter\snew\sUNIX\spassword:* %n\n

*Retype\snew\sUNIX\spassword:* %n\n

*password\supdated\ssuccessfully* .

syslog = 0

log file = /var/log/samba/log.%m

max log size = 1000

dns proxy = No

panic action = /usr/share/samba/panic-action %d

invalid users = root

[berbagi]

comment = berbagi adalah suatu keindahan !!!

path = /home/me

guest ok = Yes

deb:/media# smbstatus

Samba version 3.0.24

PID Username Group Machine

-----------------------------------------------------------------

--

Service pid machine Connected at

-------------------------------------------------------

berbagi 4090 indonesia Sat May 3 05:05:59 2008

No locked files

Sesi Samba Server. © 2008, Wilfridus Bambang. FIT, UK Maranatha, Bandung. 6

Penjelasan dari hasil eksekusi perintah smbstatus di atas akan memberikan informasi yang dibagi dalam 3 bagian. Bagian yang pertama adalah akan menginformasikan kepada pengguna mengenai client yang terkoneksi dengan server samba, secara detail akan menyebutkan nama komputer client tersebut. sedangkan di bagian kedua adalah menginformasikan mengenai nama dan status dari berkas yang sedang digunakan secara bersama di server, ternasuk hak akses read/write, dan informasi lain yang terkait dengan berkas tersebut. Untuk bagian yang terakhir, akan memberikan informasi mengenai tanggal dan waktu akses ke server.

Mengakses Samba Server melalui sistem operasi Microsoft Windows XP Samba server yang telah selesai dikonfigurasi tersebut, dapat diakses melalui sistem operasi lain untuk direktori yang diberikan akses untuk berbagi pakai (sharing). Seperti yang terlihat pada contoh di bawah ini adalah visualisasi ujicoba pengaksesan komputer server yang menyediakan direktori bersama, yang terdapat pada komputer dengan nomor IP 192.168.1.1. Menggunakan akses secara langsung dari menu Start -> Run, dan mengetikkan alamat tujuan yang akan diakses, yaitu \\192.168.1.1.

Gambar 9.4. Mengakses melalui Start Menu -> Run

Sesi Samba Server. © 2008, Wilfridus Bambang. FIT, UK Maranatha, Bandung. 7

Hasil eksekusi dari perintah di atas adalah seperti yang terlihat pada visualisasi di bawah ini. Pada komputer server yang sebelumnya telah mengkonfigurasi bahwa direktori yang digunakan untuk berbagi pakai, akan dapat diakses oleh pengguna dari sistem operasi yang berbeda, tetapi tentu saja berada dalam satu jaringan yang sama.

Gambar 9.5. Tampilan di Windows Eksplorer untuk direktori yang dishare pada server

Pengguna dapat mencoba untuk mengakses direktori yang dishare tersebut, dengan melakukan double klik terhadap direktori, dan akan langsung menampilkan hasil yang terlihat pada gambar di bawah ini:

Gambar 9.6. Isi dari direktori berbagi dari komputer server

Sesi Samba Server. © 2008, Wilfridus Bambang. FIT, UK Maranatha, Bandung. 8

Bagaimana tampilan ketika pengguna mencoba untuk mengakses melalui network neighbourhood melalui aplikasi windows eksplorer?. Terlihat bahwa pada bagian Microsoft Windows Network, di dalamnya terdapat suatu domain utama bernama workgroup, yang ketika diakses secara mendetail akan memberikan informasi bahwa terdapat dua komputer yang menjadi anggota dari domain tersebut. Yang pertama adalah deb server (192.168.1.1) yang merupakan samba server (linux) dan untuk komputer windows sebagai komputer kedua yang mengakses tidak akan secara langsung terlihat, tetapi harus dilakukan tindakan sharing terlebih dahulu pada salah satu folder, untuk selanjutnya akan secara otomatis terlihat pada workgroup.

Gambar 9.7. Akses jaringan melalui network neighbourhood

Akses ke direktori yang berbagi pakai tersebut memiliki keterbatasan terhadap beberapa hak akses, seperti misalnya penulisan atau pembuatan berkas dan direktori baru di dalamnya. Hal ini adalah merupakan implementasi dari alasan keamanan dari data, karena sebaiknya dalam suatu jaringan, direktori berbagi pakai seharusnya terproteksi, hanya dapat diakses baca, karena untuk akses penulisan ke dalamnya adalah merupakan tanggung jawab dari administrator jaringan atau pihak-pihak yang telah mempunyai otorisasi untuk melakukannnya. Seperti yang terlihat pada gambar 9.8 dimana akan secara otomatis muncul pesan kesalahan terhadap pengguna yang mencoba untuk melakukan penulisan ke dalam direktori tersebut.

Sesi Samba Server. © 2008, Wilfridus Bambang. FIT, UK Maranatha, Bandung. 9

Gambar 9.8. Pesan kesalahan ketika pengguna berupaya membuat berkas baru Dari kegiatan pengaksesan tersebut, bagaimana kondisi dari informasi yang berhasil di-log oleh smbstatus. Pengguna dapat mengeksekusi ulang perintah tersebut, dan akan memberikan hasil akhir seperti berikut ini:

Terlihat pada hasil eksekusi perintah di atas memberikan informasi bahwa terdapat akses dari mesin client bernama Indonesia, pada tanggal dan jam yang tercatat secara detail oleh sistem, dengan status dari direktori berbagi pakai yang disediakan layanannya oleh server adalah bersifat ReadOnly, dan lokasi sebenarnya dari direktori berbagi pakai tersebut pada server adalah berada di /home/me.

deb:/media# smbstatus

Samba version 3.0.24

PID Username Group Machine

------------------------------------------------------------------

-

Service pid machine Connected at

-------------------------------------------------------

berbagi 4104 indonesia Sat May 3 05:12:34 2008

Locked files:

Pid Uid DenyMode Access R/W Oplock

SharePath Name Time

------------------------------------------------------------------

--------------------------------

4104 65534 DENY_NONE 0x100001 RDONLY NONE

/home/me . Sat May 3 05:12:34 2008

Sesi Samba Server. © 2008, Wilfridus Bambang. FIT, UK Maranatha, Bandung. 10

Instalasi aplikasi SMB browser pada mesin Linux Untuk membantu menvisualisasikan akses jaringan pada mesin Linux seperti halnya fitur network neighbourhood yang familiar dengan para pengguna OS Windows, terdapat banyak sekali aplikasi berbasis Linux yang mempunyai tujuan yang sama, bahkan secara fungsionalitas lebih spesifik dibanding aplikasi pembandingnya. Salah satu dari aplikasi tersebut adalah smb4k, dengan spesifikasi utama bekerja pada desktop environment berbasis KDE, tapi untuk para pengguna GNOME, dapat pula memanfaatkan aplikasi ini dengan baik. Berikut adalah cara instalasinya terlebih dahulu yang akan dibahas pada tutorial. Sama seperti aplikasi bawaan lain, smb4k juga terdapat pada dvd instalasi. Pengguna dapat mulai untuk melakukan instalasi, dengan melalui konsol, dengan mengetikkan perintah berikut ini:

Setelah berhasil menginstall aplikasi tersebut, maka dapat diakses langsung dari konsol dengan mengetikkan perintah smb4k, atau dapat pula mengaksesnya melalui shortcut menu yang telah otomatis dibuat di menu K atau gnome pengguna. Tampilan dari aplikasi smb4k ketika dieksekusi adalah seperti berikut:

Gambar 9.9. Tampilan dari aplikasi smb4k.

deb:/media# apt-get install smb4k

Reading package lists... Done

Building dependency tree... Done

The following extra packages will be installed:

smbclient smbfs

The following NEW packages will be installed:

smb4k smbclient smbfs

0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.

Need to get 5879kB of archives.

After unpacking 14.0MB of additional disk space will be used.

Do you want to continue [Y/n]?

Sesi Samba Server. © 2008, Wilfridus Bambang. FIT, UK Maranatha, Bandung. 11

Untuk mengaktifkan pengaksesan sumber daya jaringan yang saling terhubung, pengguna dapat mengklik icon scan new network, atau dengan memilihnya dari menu yang terdapat di aplikasi. Aplikasi akan langsung mengenali komputer-komputer yang saling terhubung tersebut, seperti yang terlihat pada gambar di bawah ini.

Gambar 9.10. Pengaksesan komputer dalam jaringan menggunakan smb4k.

Aplikasi ini juga mendukung akses langsung ke direktori yang di-share, dengan membuka secara otomatis aplikasi eksplorer dari Linux untuk melihat isi dari direktori tersebut. Seperti yang terlihat pada gambar saat pengguna mencoba untuk mengakses direktori.

Gambar 9.11. Pengaksesan direktori sharing oleh pengguna.

Sesi Samba Server. © 2008, Wilfridus Bambang. FIT, UK Maranatha, Bandung. 12

Pengamanan Samba Setelah pengguna sebelumnya bereksplorasi terhadap pengaksesan direktori tanpa melalui proses otorisasi, maka bagian ini akan menampilkan konfigurasi untuk melakukan tindakan pengamanan terhadap akses di samba server. Caranya adalah dengan memastikan bahwa nilai dari parameter security yang terdapat pada berkas /etc/samba/smb.conf kembali diset ke nilai user (sebelumnya share). Setelah itu, harus menentukan pengguna yang berhak untuk melakukan pengaksesan direktori tersebut. Dapat merupakan pengguna yang sebelumnya telah terdapat di sistem, atau membuat pengguna baru. Pada tutorial ini, akan dicontohkan kondisi administrator ingin membuat pengguna baru yang mempunyai otorisasi untuk mengakses direktori berbagi pakai. Tahapannya adalah sebagai berikut:

Membuat pengguna baru: dengan username windows useradd windows

Membuat password samba untuk pengguna baru tersebut smbpasswd –a windows

Selanjutnya adalah melakukan perubahan terhadap bagian share definition dari berkas /etc/samba/smb.conf, dimana pengguna menambahkan opsi valid users = windows pada bagian “[berbagi]”, seperti yang terlihat pada contoh konfigurasi di bawah ini

Setelah melakukan perubahan-perubahan tersebut, pastikan layanan samba harus direstart ulang, dengan menjalankan perintah /etc/init.d/samba restart. Tujuan dari dilakukannya aktifitas di atas adalah untuk membatasi akses ke direktori yang disharing dalam jaringan adalah hanya dapat dilakukan oleh pengguna yang diotorisasi oleh administrator. Dan disarankan bahwa tindakan ini dilakukan secara selektif dan disiplin, dengan alasan bahwa dengan adanya direktori yang dishare dalam suatu jaringan, akan menimbulkan upaya pengaksesan secara illegal oleh pengguna yang tidak bertanggung jawab, sehingga harus dilindungi. Seperti yang terlihat pada gambar 9.12, dimana akan muncul jendela konfirmasi kepada pengguna yang ingin mengakses, dengan meminta masukan berupa username dan password yang telah sebelumnya dibuat oleh administrator. Hal ini sangat efektif untuk melindungi direktori dari pengaksesan ilegal.

[berbagi] comment = berbagi adalah suatu keindahan !!!

browseable = yes

writable = no

public = yes

path = /home/me

guest ok = yes

valid users = windows

Sesi Samba Server. © 2008, Wilfridus Bambang. FIT, UK Maranatha, Bandung. 13

Gambar 9.12. Permintaan username & password untuk mengakses direktori.

Setelah pengguna memberikan informasi yang sesuai, maka direktori akan dapat diakses, seperti yang terlihat pada visualisasi berikut ini:

Gambar 9.13. Tampilan dari direktori sharing.

Sesi Samba Server. © 2008, Wilfridus Bambang. FIT, UK Maranatha, Bandung. 14

Implementasi tindakan pengamanan ini juga akan berlaku sama untuk pengaksesan dari OS Windows. Seperti yang terlihat pada gambar di bawah ini, ketika pengguna mencoba untuk membuka direktori yang telah terproteksi sebelumnya.

Gambar 9.14. Permintaan username & password untuk pengaksesan dari OS Windows. Untuk pengaksesan dari konsol linux (dari client) terhadap samba server, menggunakan aplikasi smbclient, yang menyediakan fasilitas seperti ftp untuk mengakses sumber daya SMB pada server penyedia layanan. Panduan lengkap dari penggunaan aplikasi ini dapat dibaca melalui manual (dengan mengetikkan pada konsol man smbclient). Untuk contoh penggunaannya adalah seperti yang terlihat pada gambar di bawah ini:

Gambar 9.15. Pengaksesan samba server menggunakan smbclient.