Rabu, 30 November 2011
Selasa, 22 November 2011
Desain LAN
1.Pendahuluan
Seperti sudah dibahas pada bagian sebelumnya, IP address terdiri dari dua bagian, yaitu network ID dan host ID. Network ID menunjukkan nomor network, sedangkan host ID mengidentifikasi host dalam satu network. Host ID bersifat unik untuk satu network. Untuk lebih mengefesienkan alokasi IP address yang kita peroleh, kita menggunakan subnetting. Subnetting adalah proses memecah satu kelas IP address menjadi beberapa subnet dengan jumlah host yang lebih sedikit. Untuk menentukan batas network ID dan host ID dalam suatu subnet digunakan subnet mask. Biasanya kita membentuk subnet dengan mengalokasikan IP address sama rata untuk setiap subnet. Namun hal ini hanya cocok kalau alokasi IP yang kita peroleh cukup besar atau kita menggunakan IP privat. Untuk mengatasi hal itu dapat digunakan VLSM (Variable Length Subnet Mask) yakni pengalokasian IP dengan subnet yang besanya berbeda-beda sehingga alokasi IP dapat menjadi lebih efisien.
2.Desain LAN
2.1 Metode Perencanaan LAN
Sekarang kita akan membahas bagaimana merencanakan suatu LAN yang baik. Tujuan utamanya untuk merancang LAN yang memenuhi kebutuhan pengguna saat ini dan dapat dikembangkan di masa yang akan datang sejalan dengan peningkatan kebutuhan jaringan yang lebih besar.
Desain sebuah LAN meliputi perencanaan secara fisik dan logic . Perencanaan fisik meliputi media yang digunakan bersama dan infrastruktur LAN yakni pengkabelan sebagai jalur fisik komunikasi setiap devais jaringan. Infrastruktur yang dirancang dengan baik cukup fleksibel untuk memenuhi kebutuhan sekarang dan masa datang.
Metode perencanaan LAN meliputi :
§ Seorang administrator network yang bertanggung jawab terhadap jaringan.
§ Pengalokasian IP address dengan subnetting.
§ Peta letak komputer dari LAN dan topologi yang hendak kita gunakan.
§ Persiapan fisik yang meliputi pengkabelan dan peralatan lainnya.
Di antara hal-hal yang perlu diperhatikan dalam perancangan LAN adalah lokasi fisik itu sendiri. Peta atau cetak biru bangunan-bangunan yang akan dihubungkan serta informasi jalur kabel (conduit) yang ada dan menghubungkan bangunan-bangunan tersebut sangat diperlukan. Jika peta seperti ini tidak ada maka perlu digambarkan peta dengan cara merunut kabel-kabel yang ada. Secara umum dapat diasumsikan bahwa pengkabelan yang menghubungkan bangunan-bangunan atau yang melewati tempat terbuka harus terdapat di dalam conduit. Seorang manajer jaringan harus menghubungi manajer bangunan untuk mengetahui aturan-aturan pengkabelan ini sebab manajer bangunan yang mengetahui dan bertanggung jawab atas bangunan tersebut. Pada setiap lokasi (yang dapat terdiri dari beberapa bangunan) harus ditunjuk seorang manajer jaringan. Manajer jaringan harus mengetahui semua konfigurasi jaringan dan pengkabelan pada lokasi yang menjadi tanggung jawabnya. Pada awalnya tugas ini hanya memakan waktu sedikit. Namun sejalan dengan perkembangan jaringan menjadi lebih kompleks, tugas ini berubah menjadi tugas yang berat. Jadi sebaiknya dipilih orang yang betul-betul berminat dan mau terlibat dalam perkembangan jaringan.
2.2 Pengalokasian IP Address
Bagian ini memegang peranan yang sangat penting karena meliputi perencanaan jumlah network yang akan dibuat dan alokasi IP address untuk tiap network. Kita harus membuat subnetting yang tepat untuk keseluruhan jaringan dengan mempertimbangkan kemungkinan perkembangan jaringan di masa yang akan datang. Sebagai contoh, ITB mendapat alokasi IP addres dari INTERNIC (http://www.internic.net) untuk kelas B yaitu 167.205.xxx.xxx. Jika diimplementasikan dalam suatu jaringan saja (flat), maka dengan IP Address ini kita hanya dapat membuat satu network dengan kapasitas lebih dari 65.000 host. Karena letak fisik jaringan tersebar (dalam beberapa departemen dan laboratorium) dan tingkat kongesti yang akan sangat tinggi, tidak mungkin menghubungkan seluruh komputer dalam kampus ITB hanya dengan menggunakan satu buah jaringan saja (flat). Maka dilakukan pembagian jaringan sesuai letak fisiknya. Pembagian ini tidak hanya pada level fisik (media) saja, namun juga pada level logik (network layer), yakni pada tingkat IP address.. Pembagian pada level network membutuhkan segmentasi pada IP Address yang akan digunakan. Untuk itu, dilakukan proses pendelegasian IP Address kepada masing-masing jurusan, laboratorium dan lembaga lain yang memiliki LAN dan akan diintegrasikan dalam suatu jaringan kampus yang besar. Misalkan dilakukan pembagian IP kelas B sebagai berikut :
§ IP address 167.205.1.xxx dialokasikan untuk cadangan
§ IP address 167.205.2.xxx dialokasikan untuk departemen A
§ IP address 167.205.3.xxx dialokasikan untuk departemen B
§ Ip address 167.205.4.xxx dialokasikan untuk unit X
§ dsb.
Pembagian ini didasari oleh jumlah komputer yang terdapat pada suatu jurusan dan prediksi peningkatan populasinya untuk beberapa tahun kemudian. Hal ini dilakukan semata-mata karena IP Address bersifat terbatas, sehingga pemanfaatannya harus diusahakan seefisien mungkin.
Jika seorang administrator di salah satu departemen mendapat alokasi IP addres 167.205.48.xxx, maka alokasi ini akan setara dengan sebuah IP address kelas C karena dengan IP ini kita hanya dapat membentuk satu jaringan berkapasitas 256 host yakni dari 167.205.9.0 sampai 167.205.9.255.
Dalam pembagian ini, seorang network administrator di suatu lembaga mendapat alokasi IP Address 167.205.9.xxx. Alokasi ini setara dengan satu buah kelas C karena sama-sama memiliki kapasitas 256 IP Address, yakni dari 167.205.9.0 sampai dengan 167.205.9.255. Misalkan dalam melakukan instalasi jaringan, ia dihadapkan pada permasalahan-permasalahan sebagai berikut :
§ Dibutuhkan kira-kira 7 buah LAN.
§ Setiap LAN memiliki kurang dari 30 komputer.
Berdasarkan fakta tersebut, ia membagi 256 buah IP address itu menjadi 8 segmen. Karena pembagian ini berbasis bilangan biner, pembagian hanya dapat dilakukan untuk kelipatan pangkat 2, yakni dibagi 2, dibagi 4, 8, 16, 32 dst. Jika kita tinjau secara biner, maka kita mendapatkan :
Jumlah bit host dari subnet 167.205.9.xxx adalah 8 bit (segmen terakhir). Jika hanya akan diimplementasikan menjadi satu jaringan, maka jaringan tersebut dapat menampung sekitar 256 host.
Jika ia ingin membagi menjadi 2 segmen, maka bit pertama dari 8 bit segmen terakhir IP Address di tutup (mask) menjadi bit network, sehingga masking keseluruhan menjadi 24 + 1 = 25 bit. Bit untuk host menjadi 7 bit. Ia memperoleh 2 buah sub network, dengan kapasitas masing-masing subnet 128 host. Subnet pertama akan menggunakan IP Address dari 167.205.9.(0-127), sedangkan subnet kedua akan menggunakan IP Address 167.205.9.(128-255).
Tabel Pembagian 256 IP Address menjadi 2 segmen
Karena ia ingin membagi menjadi 8 segmen, maka ia harus mengambil 3 bit pertama ( 23 = 8) dari 8 bit segmen terakhir IP Address untuk di tutup (mask) menjadi bit network, sehingga masking keseluruhan menjadi 24 + 3 = 27 bit. Bit untuk host menjadi 5 bit. Dengan masking ini, ia memperoleh 8 buah sub network, dengan kapasitas masing-masing subnet 32 (=25) host. Ilustrasinya dapat dilihat pada Tabel 2-4 berikut :
Studi Kasus :
Anda sebagai penanggungjawab jaringan di suatu kantor yang mempunyai 3 buah departemen mendapat alokasi IP dari suatu ISP (Internet Service Provider) 167.205.9.10xxxxxx (8 bit terakhir adalah biner). Jika jumlah host tiap-tiap departemen diperkirakan tidak lebih dari 13 buah dan masing masing departemen akan dibuat jaringan lokal (LAN) tersendiri, coba anda tentukan :(semua host mendapat alokasi IP asli)
§ Subnet yang harus dibuat
§ Network address
§ Broadcast address
Penyelesaian :
§ Subnet yang harus dibuat adalah : 11111111.11111111.11111111.11110000 atau 255.255.255.240.
§ Terdapat network address sbb :
167.205.9.10000000
167.205.9.10010000
167.205.9.10100000
167.205.9.10110000
§ Terdapat broadcast address sbb:
167.205.9.10001111 = 167.205.9.143
167.205.9.10011111 = 167.205.9.159
167.205.9.10101111 = 167.205.9.175
167.205.9.10111111 = 167.205.9.191
Manfaat LAN
Manfaat LAN antara lain :
- Resource sharing
Resource sharing bertujuan agar seluruh program (software), peralatan, khususnya data bisa digunakan oleh setiap orang yang ada pada jaringan tanpa terpengaruh oleh lokasi resource dan pemakai.
User bisa berkomunikasi dengan yang lain dan mentransfer data antar workstation dengan sangat mudah.
- Akan mendapatkan reliable tinggi dengan memiliki sumber-sumber alternatif persediaan.Misalnya, semua file dapat tersalin ke dua atau tiga buah mesin. Sehingga bila salah satu mesin tersebut tidak terpakai (akibat adanya masalah pada perangkat kerasnya), maka salinan lainnya yang ada pada mesin lain dapat digunakan.
- Dapat menghemat uang
Komputer berukuran kecil mempunyai rasio harga yang lebih baik dibandingkan dengan komputer yang besar. Komputer mainframe kira-kira memiliki kecepatan sepuluh kali lipat kecapatan komputer pribadi.
Akan tetapi, harga mainframe seribu kali lebih mahal. Ketikaseimbangan rasio harga ini menyebabkan untuk membangun sistem yang terdiri dari komputer pribadi. Workstation bisa berbagi peralatan seperti printer, tentunya ini akan lebih murah jika dibandingkan dengan membeli sebuah printer untuk satu workstation.
- Keamanan data lebih terjamin
Sepanjang jaringannya dipasang dengan firewall yang baik maka jaringan tersebut akan membuat serangan dari luar menjadi sulit. Memungkinkan seseorang administrator dalam jaringan dapat mengontrol data-data yang penting yang hanya dapat diakses oleh user tertentu saja.
- Meningkatkan keefektifkan pekerjaan
- Paperless
Paperless adalah mengurangi penggunaan kertas. Kita ketahui bahwa bahan pembuatan kertas adalah pohon.
Kita ketahui juga bahwa pohon di bumi ini semakain hari semakin berkurang.
Oleh karena itu selain pengurangan penggunaan kertas membuat biaya operasional semakin mengecil, kita juga dapat membantu sedikit dengan penyelematan bumi. Hehehe...
- Pengaturan data
Komputer dalam lingkungan bisnis, dengan adanya jaringan tersebut memungkinkan seorang administrator untuk mengorganisasi data-data yang penting dan melakukan back up sesuai dengan kebijakan perusahannya.
- Hardware sharing
Dengan adanya jaringan, maka dapat membuat alat dengan nama printer server yang dapat dipakai bersama dalam satu jaringan, begitu juga dengan alat lain seperti scanner
Tentunya ini juga akan membuat keuangan menjadi lebih effesien karena tidak perlunya membeli satu printer untuk satu komputer.
SAMBA SERVER
1. Pendahuluan
Samba adalah server yang sangat powerful yang dapat membuat sistem berbasis Unix (seperti Linux) untuk melakukan sharing resource dengan sistem berbasis Windows. Hal ini tentu sangat berguna pada sebuah LAN yang terdiri atas beberapa workstation dengan flatform sistem operasi Linux dan Windows sehingga dapat lebih efisien dengan adanya pembagian resource, seperti file dan printer, untuk dapat digunakan secara bersama-sama. Samba merupakan sebuah software aplikasi buatan Andrew Tridgel dari ANU (Australian National University) dengan mengimplementasikan protokol SMB (Server Message Block) pada sistem operasi Unix. Protokol ini kadang-kadang dapat berlaku sebagai protokol CIFS (Common Internet File Sistem), LanManager, NetBIOS. Protokol SMB ini dapat membuat sebuah komputer dengan sistem operasi Unix menjadi file atau print server menjadi file atau print server atau seperti klien ftp untuk mengakses share SMB baik di Samba server atau di sever lain yang kompatibel seperti Windows NT, mendukung nameserving dan browsing NetBIOS, dan lain-lain.
2. Mekanisme SMB
2.1. Username dan Password
Untuk memahami hubungan antara Linux/Samba/Windows, kita harus mempelajari sistem file, printer, dan user pada kedua operating sistem. Beberapa manajemen pengaturan username dan password :
§ Linux Password Authentication Module (PAM), akan membuat autentikasi user dengan PDC sehingga kita tetap mempunyai dua user, satu di lokal dan satu lagi di PDC , tapi user hanya perlu menyimpan password hanya dalam sistem window.
§ Samba sebagai PDC, akan menyimpan login dan password pada sistem Linux.
§ Membuat solusi sendiri dengan Perl, kita dapat membuat sendiri. Hal ini dilakukan dengan menggunakan Winperl dan modul-modul Perl yang memungkinkan pengubahan paa Security Access Manager (SAM), untuk meng-update daftar password PDC. Script Perl pada sisi Linux dapat berkomunikasi dengan script WinPerl untuk menjaga sinkrinisasi account.
2.2. Encrypted Password
Sejak Windows NT 4, Windows 98, dan Windows 95 OSR2, Windows menggunakan password terenkripsi saat berkomunikasi menggunakan PDC dan setiap server yang memerlukan autentikasi (termasuk Linux dan Samba). Alogoritma enkripsi Windows berbeda dengan UNIX, sehingga tidak kompatibel. Untuk menangani hal itu, kita dapat melakukan pilihan-pilihan sebagai berikut :
§ Mengedit Registry pada klien Windows untuk mendisable penggunaan password terenkripsi. Bagian registry yang harus diubah terdapat pada direktori docs paket Samba.
§ Mengkonfigurasi Samba agar menngunakan password terenkripsi Windows.
Pilihan pertama mempunyai kelebihan dengan tidak adanya pola password yang lebih kompleks. Pada sisi lain, kita harus membuat registry yang tetap pada semua klien. Untuk pilihan kedua sebaliknya, yakni sedikit lebih kompleks pada sisi server, tapi kita tidak usah mengubah bagian klien.
2.3. Perbedaan smbd dengan nmbd
Sebenarnya Samba disusun atas dua damon, yatu smbd dan nmbd. Smbd adalah daemon yang secara nyata menangani servis sharing file sistem dan printer untuk klien. Pada saat sebuah klien melakukan autentikasi, smbd akan membuatkan duplikat dirinya, bagian asli akan kembali ke port 139 untuk mendengarkan permintaan baru dan bagian duplikat menangani koneksi terhadap klien. Dulikat ini juga mengubah ID user efektifnya dari root ke user yang terautentikasi. Misalnya , kalau user “smkti” melakukan autentikasi dengan smbd, duplikat baru akan berjalan dengan permisi “smkti”, dan bukannya permisi “root”). Duplikat ini akan berada di memory selama masih terkoneksi dengan klien.
Daemon nmbd bertanggung-jawab untuk menangani permintaan server name NetBIOS. Ia akan mendengarkan port 137, tidak seperti smbd, nmbd tidak membuat contoh dirinya untuk menangani setiap pertanyaan. Kedua daemon itu harus dijalankan agar Samba bekerja dengan baik.
3. Instalasi Paket Samba Server
Paket Samba release terbaru bisa dilihat di homepage Samba : http://us1.samba.org/samba/samba.html atau melalui FTP site: 63.238.153.11. Bila tersedia, paket juga bisa diambil melalui ftp site-ftp site terdekat. Pada modul ini, kita akan coba untuk menginstall paket : samba-2.0.7.tar.gz. Pastikan file source ini sudah didownload dan diletakkan di direktori /usr/local/src (atau direktori lainnya).
3.1. Instalasi Dalam Bentuk Tarball
Instalasi dalam bentuk tarball adalah instalasi dengan source dalam bentuk file berekstensi tar.gz. Instalasi ini hanya bisa dilakukan dengan account root. Berikut adalah langkah-langkah instalasinya :
Masukkan ke direktori tempat diletakkannya source Samba :
# cd /usr/local/src
Kemudian ekstrak file tersebut dengan perintah :
# tar –zxvf samba-2.0.7.tar.gz
Setelah diekstark akan terbentuk direktori samba-2.0.7, masuklah ke direktori tersebut, dan di sana akan terdapat direktori source, docs , dan sebagainya : l
# cd samba-2.0.7
Lalu masuklah ke direktori source dan jalankan script configure yang ada di sana. Dalam konfigurasi ini, kita dapat menambahkan beberapa option, misalnya kita akan menambahkan option sebagai berikut :
Option Deskripsi
--with-pam Agar Samba dapat menggunakan Password Authentication Module (PAM).
--with-mmap Agar mendukung MMAP untuk meningkatkan performansi Samba.
# ./configure –-with-smbmount –-with-pam --with-mmap
Kemudian install Samba dengan mengetikkan perintah make lalu make install:
# make all
# make install
Samba akan terinstall di direktori /usr/local/samba. Setelah perintah instalasi di atas dieksekusi, akan terbentuk direktori bin yang berisi sejumlah file binary yang berfungsi seperti untuk mengontrol Samba server seperti smbd, nmbd, dan smbclient, dan lain-lain.
Samba akan terinstall di direktori /usr/local/samba.
# install –m 755 script /mksmbpasswd.sh /usr/bin/
Perintah ini akan menginstall script “mksmbpasswd.sh” pada direktori “/usr/bin/”. Script ini diperlukan untuk mensetup user Samba diijinkan terkoneksi ke server via file “smbpasswd”.
Untuk mempelajari Samba secara lebih mendalam, kita dapat membaca manualnya yang disertakana dalam paket. Manual Samba secara default terletak di direktori /usr/local/samba/man. Agar manual Samba bisa dibaca (diakses) dengan perintah man pada shell Linux, lakukan sebagai berikut :
# cp /usr/local/samba/man/man1/* /usr/man/man1
# cp /usr/local/samba/man/man5/* /usr/man/man5
# cp /usr/local/samba/man/man7/* /usr/man/man7
# cp /usr/local/samba/man/man8/* /usr/man/man8
4. Konfigurasi Samba Server
Dalam membuat konfigurasi Samba server ini sangat bergantung pada kebutuhan dan arsitektur dari jaringan komputer kita. Misalkan Samba server ini bisa dikonfigurasikan hanya terkoneksi satu klien atau bahkan terkoneksi dengan 1000 klien. File dokumentasi konfigurasi lengkap Samba server ini dapat didownload di internet dengan alamat: http://www.openna.com/books/floppy.tgz. Untuk menjalankan Samba server, dibutuhkan file-file berikut ini dan harus dibuat atau dikopi pada direktori-direktori yang cocok pada server kita.
4.1. Konfigurasi file “smb.conf”
File konfigurasi utama untuk Samba server ini adalah “/usr/local/samba/lib/smb.conf”, dimana kita dapat menentukan direktori yang ingin kita akses dari komputer Windows, IP address mana yang diijinkan, dsb. Pada file ini juga terdapat banyak sekali option (pilihan). Untuk informasi lebih lanjut tentang berbagai setting dan parameter dapat dilihat di dokumentasi Samba.
Konfigurasi yang akan kita bahas di bawah adalah file konfigurasi minimal Samba yang mendukung password terenkripsi. Kita harus terlebih dahulu mengkopikan file konfigurasi default lalu mengeditnya sesuai dengan yang kita inginkan :
# cd /usr/local/samba/examples
# cp smb.conf.default /usr/local/samba/lib
# cd /usr/local/samba/lib
# mv smb.conf.default smb.conf
# pico smb.conf
workgroup= SMKTI
Isilah dengan workgroup server kita, yang akan tampak saat diminta oleh klien. Klien dan server harus mempunyai workgroup yang sama.
server string= Samba Server
Option ini akan menampilkan string yang akan ditampilkan pada user dalam comment box print manager, atau pada koneksi IPC pada bagian “net view” pada komputer Windows.
encrypted password= True
Jika option ini diset “True”, Samba akan menggunakan password terenkripsi bukan menggunakan password berbentuk teks sederhana saat berhubungan dengan klien. Password terenkripsi ini tidak akan bisa dideteksi dengan sniffer. Untuk keamanan sebaiknya option ini diset “True”.
security= user
Bila option security ini diisi dengan “user”, klien harus masuk (log-on) dengan username dan password yang benar, jika tidak, koneksi akan diputus (connection refused). Hal ini berarti bahwa username dan password yang benar harus terdapat pada file “/etc/password” sistem Linux dan file “/etc/smbpasswd” pada Samba server, jika tidak koneksi dari klien akan gagal.
smb passwd file= /etc/smbpasswd
Option ini menentukan letak file “smbpasswd” terenkripsi. File “smbpasswd ini merupakan kopi dari file “/etc/passwd” sistem Linux yang berisi username dan password yang valid agar bisa terkoneksi dengan Samba server. Samba server akan membaca file ini (smbpasswd) saat ada permintaan koneksi.
log file= /var/log/samba/log.%m
Option ini menyatakan letak file log yang dicatat Samba. Dengan ekstensi %m kita dapat membuat file log yang terpisah untuk masing-masing user atau mesin yang log-on pada Samba server.
socket options= IPTOS_LOWDELAY TCP_NODELAY
Dengan option ini kita dapat menentukan paramater-parameter konfigurasi Samba untuk meningkatkan performansi Samba. Secara default, koneksi untuk jaringan lokal dibuat maksimal, dan meningkatkan performansi Samba server dalam transfer file.
domain master= Yes
Option ini untuk mengeset Samba server daemon “nmbd” sebagai domain master browser untuk group yang telah ditentukan. Option ini biasanya harus diset “Yes” hanya dalam satu Samba server untuk keseluruhan Samba server yang lain pada workgroup dan jaringan yang sama.
local master= Yes
Dengan option di atas, Samba server daemon, nmbd, akan mencoba untuk menjadi domain master browser pada workgroup yang telah ditentukan.
preferred master= Yes
Option “preferred master” akan menentukan dan mengontrol jika “nmbd” dibuat sebagai master browser untuk workgroup yang bersangkutan.
os level= 65
Dengan mengatur nilai os level, nmbd dapat menjadi master browser lokal untuk workgroup pada daerah broadcast lokal. Jika terdapat NT server pada jaringan kita, dan kita ingin agar Samba server Linux menjadi browser lokal untuk workgroup pada broadcast lokal maka option di atas harus diisi 65. Ingat option ini hanya untuk satu Linux Samba server.
dns proxy= No
Bila diset “yes” , Samba server daemon “nmbd” ketika menjadi sebuah WINS server dan nama Net BIOS belum teregistrasi, maka ia harus memperlakukan nama Net BIOS kata demi kata sebagai nama DNS. Jika kita belum pernah mengkonfigurasikan Samba sebagai WINS Server, kita tidak usah membuat option ini “Yes”. Dengan memilih “Yes” juga akan dapat mengurangi performansi Samba.
name resolve order= lmhosts host bcast
Option ini menyatakan nama servis yang dipakai untuk mengubah hostname ke IP address. Pilihan di atas akan menyebabkan file “lmhosts” lokal Samba akan dituju terlebih dahulu.
bind interfaces only= True
Jika option ini diset “True”, kita dapat membatasi interface-interface yang melayani permintaan “smb”. Sebaiknya option ini diset demikian untuk keamanan.
interfaces= eth0 192.168.1.1
Option di atas berguna untuk menentukan jenis interface yang digunakan Samba server saat digunakan browsing dan registrasi nama, pada contoh di atas yakni eth0 dengan IP address 192.168.1.1. Defaultnya, Samba akan mengecek semua device pada kernel.
hosts deny= ALL
Kita dapat menentukan host-host yang tidak boleh mengakses Samba. Secara default kita melarang akses dari seluruh host, dan mengijinkan akses untuk host-host tertentu yang didefinisikan pada “hosts allow” di bawah ini.
hosts allow= 192.168.1.4 127.0.0.1
Host-host yang diijinkan untuk mengakses Samba server didefinisikan pada bagian ini, pada contoh di atas kita mengijinkan host dengan IP 192.168.1.4 dan localhost 127.0.0.1.
debug level= 1
Di sini kita dapat menentukan level log pada file “smb.conf”. Sebaiknya “debug level” ini tidak lebih dari 2, karena server akan log file yang tidak perlu setelah melakukan operasi sehingga akan menurunkan performansi.
create mask= 0644
Option “create mask” akan menset permisi-permisi yang penting yakni bila terjadi mapping dari DOS ke permisi UNIX. Jika dibuat 0644, semua file yang dibuat atau dikopi dari WINDOWS ke sistem UNIX akan mempunya permisi 0644 secara default (untuk lebih jelasnya dibahas pada bagian sistem opersai Linux).
directory mask= 0755
Mirip seperti di atas, hanya ini berlaku untuk semua direktori yang dikopi atau dibuat dari Windows ke sistem UNIX akan mempunyai permisi default 0755.
level2 oplocks= True
Jika option ini dibuat “True”, akan meningkatkan keandalan file-file akses yang tidak umum ditulis seperti file-file aplikasi .EXE.
read raw= no
Ini berguna untuk menentukan apakah Samba server akan mendukung permintaan raw read SMB saat mentransfer data pada klien. Agar mapping memory lebih efektif, sebaiknya option ini dibuat “no”.
write cache size= 262144
Option ini akan membuat Samba meningkatkan keandalan sistem jika terjadi kemacetan disk subsystem. Nilai option ini dinyatakan dalam byte (262144=256k).
comment= Temporary File Space
Option ini untuk menyatakan komentar yang akan terlihat saat ada permintaan klien ke server.
path= /tmp
Kita dapat menentukan direktori mana user service ini diberikan akses.
read only= No
Maksud option di atas adalah kita dapat menentukan apakah user hanya dapat membaca file atau tidak. Jika diisi “No” user tidak hanya dapat mebaca file saja.
valid user= admin
Option ini berisi daftar user yang diijinkan login. Pada contoh di atas user “admin” diijinkan untuk akses.
invalid users= root bin daemon nobody named sys tty disk mem kmem users
Option “invalid users” berisi daftar yang tidak diijinkan login yang biasanya user “paranoid”. Sebenarnya hal ini hanya untuk memastikan setting yang tidak benar dan dapat membahayakan dari segi keamanan
4.2. Konfigurasi file /etc/Imhosts
File “/etc/lmhosts” adalah file untuk memetakan nama Net BIOS Samba ke IP address. Format file ini mirip “/etc/hosts”, tapi komponen dari hostname harus sesuai dengan format penamaan Net BIOS. Pertama-tama kita harus membuat file “/etc/lmhosts” ini.
# touch /etc/lmhosts
Pada file ini, tambahkan host-host klien sbb:
# pico /etc/lmhosts
127.0.0.1 Localhost
192.168.1.1 smkti1
192.168.1.2 smkti2
192.168.1.3 smkti3
Teruskan pengisian file di atas untuk semua hosts yang ada dalam network kita.
4.3. Konfigurasi file /etc/pam.d/samba
File ini berguna untuk menjalankan autentikasi pam (untuk lebih jelasnya dapat dilihat pada bagian security). Lakukan perintah berikut ini :
# touch /etc/pam.d/samba
# pico /etc/pam.d/samba
Tambahkan baris-baris berikut ini:
Auth required /lib/security/pam_pwdb.so nullok shadow
Account required /lib/security/pam_pwdb.so
4.4. Konfigurasi file /etc/logrotate.d/samba
File konfigurasi ini akan menampilkan file-file log tiap minggu secara otomatis.
# touch /etc/logrotate.d/samba
Tambahkan baris-baris berikut ini :
/var/log/samba/log.nmb {
notifempty
missingok
prostrotate
/usr/bin/killall –HUP nmbd
endrotate
}
/var/log/samba/log.smb {
notifempty
missingok
postrotate
/usr/bin/killall –HUP smbd
endotrate
}
4.5. Membuat password Clien Samba terenkripsi
File “/etc/smbpasswd” adalah file password Samba yang terenkripsi. File ini berisi username, UID, password terenkripsi masing-masing user yang dapat mengakses Samba. Jika seorang user tidak terdaftar dalam file ini, maka ia tidak dapat melakukan koneksi ke server. Untuk membuat account Samba, user-user samba harus sudah ada dalam file “/etc/passwd” Linux. Jika kita ingin menambahkan user yang dapat mengakses Samba, kita harus menambahkan nama user tersebut pada file “/etc/passwd” sistem Linux kita sbb: (Misal kita ingin menambahkan user “smbclient”).
# adduser smbclient
# passwd smbclient
Changing password for user smbclient
New UNIX password:
Retype new UNIX password:
passwd:all authentication tokens updated successfully
Setelah kita manambahkan semua client Samba pada file “/etc/passwd”, Kita dapat membuat file “/etc/smbpasswd” dari file “/etc/passwd” dari Linux server (Ingat agar semua user yang akan mengakses samba sudah ada dalam file “/etc/passwd”) dengan perintah sbb:
# cat /etc/passwd | mksmbpasswd.sh > /etc/smbpasswd
Kemudian kita harus membuat account user Samba pada file “/etc/smbpasswd” sebelum kita dapat menggunakannya.
# smbpasswd –a smbclient
New SMB password:
Retype new SMB password:
Added user smbclient
Password changed for user smbclient.
Kemudian ubahlah setting permisi file “smbpasswd” ini agar hanya bisa dibaca dan ditulisi oleh account “root” :
# chmod 600 /etc/smbpasswd
Untuk memeriksa kesalahan dalam penulisan file “smb.conf”, lakukan perintah ini :
# testparm
Untuk menjalankan dan menghentikan daemon Samba, nmbd dan smbd secara otomatis kita dapat menjalankan script file “/etc/rc.d/init.d/smb”. Pastikan bahwa file ini mempunyai permisi yang hanya bisa dibaca, ditulis, dan dieksekusi oleh user “root”.
# chmod 700 /etc/rc.d/init.d/smb
Lalu buat simbolik link rc.d pada Samba dengan perintah :
# chkconfig –-add smb
Agar sript Samba secara otomatis menjalankan daemon nmbd dan smbd saat sistem dihidupkan (atau direboot) lakukan perintah berikut ini :
# chkconfig -–level 345 smb on
5. Menjalankan Samba
Sebelum menjalankan Samba kita harus membuat direktori seperti yang sudah didefinisikan pada file Makefile. Hal ini karena direktori ini tidk secara otomatis dibuat saat mengeksekusi perintah make install.
# mkdir /usr/local/samba/var
Samba dapat dijalankan dengan dua macam cara. Pertama dijalankan sebagai daemon dan kedua menjalankannya dari inetd. Samba yang dijalankan sebagai daemon akan sedikit lebih cepat dalam melayani permintaan client jika dibandingkan dengan Samba yang dijalankan dari inetd. Biasanya berbagai distribusi Linux sudah mempunyai script untuk menstart dan menstop servis Samba. Untuk menjalankan Samba kita harus menjalankan daemon smbd dan nmbd. Lakukan perintah berikut ini :
# /usr/local/samba/bin/smbd –D
# /usr/local/samba/bin/nmbd –D
Agar Samba selalu dijalankan setiap kali Linux melakukan booting, kita dapat menambahkan baris-baris di atas pada file /etc/rc.d/rc.local :
# pico /etc/rc.d/rc.local
/usr/local/samba/bin/smbd –D
/usr/local/samba/bin/nmbd -D
Apabila dalam sistem kita tidak mempunyai script untuk menjalankan Samba secara otomatis, maka kita harus menuliskannya secara manual. Misalkan dengan cara membuat file “/usr/local/bin/startsmb/” untuk menjalankan dan menghentikan secara otomatis daemon Samba server.
# pico /usr/local/samba/bin/startsmb
Tambahkan baris-baris berikut ini :
#!/bin/sh
/usr/local/samba/bin/smbd –D
/usr/local/samba/bin/nmbd -D
Untuk menjalankan Samba kita tinggal mengeksekusi file startsmb tersebut.
# /usr/local/samba/bin/startsmb
Untuk mematikan Samba, kill proses smbd dengan cara sbb :
# ps ax|grep smbd
Dengan perintah di atas akan tampak proses smbd beserta nomor PID-nya.
# kill -9 [nomor PID smbd]