Anda di halaman 1dari 276

PANDUAN LENGKAP

MEMBANGUN SERVER BERBASIS GUI


MENGGUNAKAN LINUX SuSE

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Daftar Isi
1. Kata Pengantar
2. Ucapan Terima Kasih
3. Dasar-Dasar Perangkat Keras
3. 1. Alur Kerja Komputer
3. 2. Peralatan Input
3. 3. Peralatan Output
3. 4. Peralatan Proses
4. Dasar-Dasar Jaringan
4. 1. Pengertian Jaringan
4. 2. Topologi Jaringan
4. 3. Tipe Jaringan
4. 4. Peralatan Jaringan
4. 5. Desain Jaringan
4. 6. Pengkabelan
5. TCP/IP
5. 1. Pengertian TCP/IP
5. 2. Format IP Address
5. 3. Pembagian Kelas IP Address
5. 3. 1. Kelas A
5. 3. 2. Kelas B
5. 3. 3. Kelas C
5. 3. 4. Kelas D
5. 3. 5. Kelas E
5. 4. Subnet Mask
5. 5. Subnetting
5. 5. 1. Subnetting Kelas A
5. 5. 2. Subnetting Kelas B
5. 5. 3. Subnetting Kelas C
5. 6. Masqureading

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


6. Apa Itu Linux ?
7. Keistimewaan linux
8. Aplikasi Linux
9. Instalasi Linux
8. 1. Persiapan Instalasi Linux SuSE 9.1
8. 2. Booting
8. 3. Pilhan Bahasa
8. 4. Menu Instalasi
8. 5. Section System
8. 6. Section Mode
8. 7. Section Keyboard
8. 8. Section Mouse
8. 9. Section Partitioning
8. 10. Section Software
8. 11. Section Booting
8. 12. Section Time Zone
8. 13. Section Languange
8. 14. Section Default Runlevel
8. 15. Instalation Linux
8. 16. Root Password
8. 17. Network Configuration
8. 18. Internet Connection
8. 19. Add User
8. 20. Clean Up Configuration
8. 21. Release Notes
8. 22. Device Configuration
10. Dasar-Dasar Linux
11. File System Linux
12. Apa Itu Server ?
13. Persiapan Server
14. Syarat-syarat Server
15. Jenis-jenis Server

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


16. Membangun Server
16.1. DNS Server
16.2. Web Server
16.3. Database Server
16.4. Proxy Server
16.5. SMB Server
16.6. File Server
16.7. Fax Server
16.8. Mail Server
16.9. X Server
17. Jaringan Wireless
17.1. Peralatan Wireless
17.2. Fungsi Wireless
17.3. Instalasi Wireless
17.4. Konfigurasi Wireless
18. Router
18.1. Dasar-Dasar Routing
18.2. Jenis-Jenis Protocol Routing
18.3. Routing Table
18.4. Konfigurasi Router
19. Security Dan Keamanan
20. Aplikasi
21. Penutup
22. Daftar Pustaka

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


DASAR-DASAR PERANGKAT KERAS

Penggunaan komputer telah begitu luas dan mencakup seluruh sendi


kehidupan dan telah menjadi salah satu kebutuhan pokok dalam kegiatan sehari-
hari. Namun pada awalnya, komputer hanya digunakan untuk alat hitung belaka.
Komputer berasal dari bahasa latin “to compute” yang berarti alat hitung.

q Alur Kerja Komputer

Sistem kerja komputer secara garis besar terbagi atas 3 bagian, dan seluruh
bagian ini saling berkaitan satu sama lain. Yaitu Input Device, Process Device,
Output Device. Didalam Process Device terdapat beberapa alur kerja lagi.
Perhatikan Gambar skema dibawah ini.

Gambar 1 Alur Kerja Komputer


q Input Device
Input device berfungsi untuk memasukkan data atau perintah ke dalam komputer.
Contoh – contoh input device adalah :

1. Keyboard
Keyboard atau papan ketik berfungsi untuk memasukkan perintah secara
langsung ke dalam komputer yang berupa karakter, baik angka, huruf maupun
kode ASCII. Secara fisik, keyboard terbagi atas 3 bagian, yaitu :
q Keyboard Serial
q Keyboard PS/2
q Keyboard Wireless

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar 2 Keyboard Dan Mouse
2. Mouse
Mouse yang dalam bahasa Indonesia berarti “tikus” (Disebut seperti ini karena
bentuk dan kabel yang terdapat pada mouse benar-benar menyerupai tikus),
berfungsi untuk membantu dalam memberikan perintah kepada komputer dalam
bentuk pointer. Secara fisik, mouse juga terbagi atas 3, yaitu :
- Mouse Serial
- Mouse PS/2
- Mouse Wireless

Gambar 3 Beberapa Jenis Mouse

3. Trackball
Secara umum, trackball memiliki fungsi yang sama dengan mouse. Yang
membedakan pada trackball adalah bentuknya yang menyerupai bola. Sehingga
pemilihan pointer menjadi lebih selektif

Gambar 4 Trackball
4. Scanner
Scanner berfungsi untuk memasukkan data gambar ke dalam komputer dan
memiliki prinsip kerja yang sama dengan mesin photo copy. Secara umum,
scanner terbagi atas 2, yaitu faltbed scanner dan handled scanner.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Saat ini, beberapa scanner telah dilengkapi dengan OCR dan software yang
mampu membaca citra digital sebagai text sehingga dapat langsung diedit dalam
komputer oleh perangkat lunak pengolah kata.

Gambar 5 Scanner
5. Digitizer
Digitizer banyak digunakan oleh kartunis yang membutuhkan koneksi langsung
antara coretan yang mereka buat dengan sistem komputer. Digitizer memiliki
bentuk menyerupai buku tulis namun lebih tebal dan terhubung langsung
dengan komputer melalui port serial atau USB.
6. Kamera
Seiring dengan perkembangan teknologi, pengguna kamera juga telah banyak
yang beralih kepada kamera yang memiliki hubungan dengan komputer dengan
pertimbangan kemudahan dalam pengeditan dan penambahan komponen.

Gambar 6 Kamera Digital

7. Mic
Pengguna multimedia juga akan dimanjakan dengan fasilitas input ini, karena
dengan tersedianya microphone yang terintegrasi dengan sistem komputer dapat
mempermudah mereka untuk memberikan beberapa sentuhan efek bagi musik
maupun audio.
8. Joystick
Pengguna game akan amat membutuhkan perangkat ini, karena akan
memudahkan mereka melakukan manuver-manuver yang sulit dilakukan oleh

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


penggunaan keyboard dan mouse. Jenis joystick yang dapat digunakan pada
komputer juga amat banyak, termasuk dengan jenis khusus yang digunakan
untuk game balap yang dilengkapi dengan roda kemudi dan pedal.

Gambar 7 Joystick

Masih banyak lagi input device yang biasa digunakan dalam kehidupan sehari-hari,
utamanya dalam pemakaian khusus yang memerlukan kontrol langsung dari sistem
komputer.

q Output Device

Output device adalah peralatan yang digunakan untuk melihat atau memperoleh
hasil pengolahan data / perintah yang telah dilakukan oleh komputer.
Contoh-contoh output device adalah :
1. Monitor
Monitor merupakan alat output yang paling umum dan berfungsi untuk melihat
hasil pengolahan data pada layar, baik berupa karakter, gambar maupun warna.
Secara umum, monitor terbagi atas :
- CRT (Cathode Rays Tube)
Merupakan monitor yang berfungsi dengan prinsip penembakan sinar katoda.
Bentuk fisik monitor ini sama dengan televisi namun secara umum hanya
terdiri dari 4 blok, yaitu video, vertikal, horisontal dan power supply. Monitor
type ini memiliki beberapa kelemahan, antara lain adalah : Membutuhkan
daya yang besar, menghasilkan panas yang cukup tinggi, memiliki bentuk
fisik yang besar (walaupun ada juga yang memiliki dimensi yang kecil namun
tetap tidak praktis karena gambar yang dihasilkan tetap kecil) dan memiliki
radiasi yang besar (walaupun ada beberapa type yang menggunakan jenis
tabung tertentu yang mampu menyerap radiasi yang dihasilkan oleh
tembakan CRT). Namun, secara umum monitor ini memiliki harga yang cukup
rendah sehingga tetap merupakan peratalan standard dalam unit komputer.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar 8 Monitor CRT

- LCD (Liquid Crystal Display)


Sistem kerja monitor ini jauh berbeda dibandingkan dengan CRT. LCD
menggunakan cairan kristal khusus yang berpendar apabila dilalui oleh sinyal
listrik sehingga menghasilkan bentuk dan warna. Kelemahan LCD adalah
harganya yang cukup mahal dan komponen fisik yang ada amat rentan
terhadap gangguan, namun LCD juga memiliki beberapa kelebihan
diantaranya adalah : hanya memerlukan daya yang rendah (Tegangan yang
digunakan cuma 12 Volt), bentuk fisik yang kecil dan ramping sehingga
mudah ditempatkan serta tidak menghasilkan radiasi.

Gambar 9 LCD

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


2. Printer
Printer berfungsi untuk mencetak output yang dikeluarkan oleh Process Device.
Secara garis besar, printer terbagi atas 3 bagian, yaitu :
- Printer Dot Matrix
Jenis ini disebut dengan “Dot Matrix” karena hasil cetakan dibentuk oleh
hentakan jarum pada pita yang membentuk karakter berupa titik-titik yang
beraturan. Oleh sebab itu, maka suara yang dihasilkan oleh printer jenis ini,
jauh lebih besar dan kasar dibandingkan dengan jenis printer lainnya.
Kehalusan hasil cetakan ditentukan oleh banyaknya jarum yang digunakan.
Minimal jumlah jarum yang digunakan adalah 9 pin dan maksimal adalah 24
pin. Salah satu contoh printer yang menggunakan 9 pin adalah Epson LX-300
dan 800, sedangkan yang menggunakan 24 pin adalah LQ (Letter Quality)
1170 dan 2180. Bentuk printer jenis ini juga terdiri dari beberapa macam, ada
yang hanya mampu mencetak dengan ukuran folio, dan ada pula yang
mampu mencetak dengan ukuran double folio. Tinta yang digunakan adalah
pita karbon.

Gambar 10 Printer Dot Matrix 9 pin dan 24 pin


- Printer Inkjet
Sesuai dengan namanya, printer jenis ini mencetak dengan menggunakan
semburan tinta cair pada permukaan kertas, sehingga hasil cetakannya jauh
lebih bagus, lebih cepat dibandingkan dengan dot matrix. Printer ini juga
mampu mencetak warna dengan sempurna, bahkan beberapa jenis printer
bahkan mampu mencetak dengan kualitas foto dan mampu mencetak pada
permukaan selain kertas (Plastik dan kain). Printer inkjet yang terkenal saat
ini adalah Canon BubleJet dan HewlletPackard.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar 11 Contoh Printer Inkjet
- Printer Laser Jet
Printer jenis ini memiliki kecepatan dan kualitas cetakan yang jauh
melampaui Dot Matrix dan Inkjet. Prinsip kerja printer ini amat mirip dengan
mesin Photocopy, yaitu dengan prinsip serbuk tinta dan elemen pemanas.
Secara umum, printer ini hanya mampu mencetak dengan dua warna (Hitam
dan Putih), namun pada jenis tertentu telah dilengkapi dengan tinta warna
sehingga mampu mencetak dengan full color.

Gambar 12 Beberapa Laserjet Printer


3. Plotter
Plotter secara prinsip memiliki fungsi yang sama dengan printer. Yang
membedakan secara umum adalah ukuran dan peruntukan dari plotter tersebut.
Plotter mampu mencetak pada kertas dengan ukuran A0, dan biasanya
digunakan untuk mencetak peta dan gambar ukuran besar lainnya.
Plotter juga mengalami perkembangan yang cukup pesat, yang dimulai hanya
dengan menggunakan pena sebagai alat cetak, hingga saat ini telah
menggunakan inkjet dan bubuk tinta (Laserjet)

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar 13 Contoh Plotter
4. Speaker
Fungsi speaker pada komputer sama dengan fungsi speaker pada perangkat
audio sistem. Yang membedakan secara garis besar hanyalah pada ukurannya.
Speaker pada komputer dibuat seefisien mungkin agar tidak terlalu memerlukan
banyak tempat. Namun pada pengguna tertentu terkadang menghubungkan
output sound mereka pada perangkat speaker lainnya untuk lebih memberikan
kepuasan yang lebih.

Gambar 14 Speaker “Surround”

Masih banyak lagi output device yang sering digunakan pada komputer, utamanya
pada sistem khusus yang diatur oleh komputer (Misalnya pengontrol robot, dan lain-
lain).

q Process Device
Pada bagian inilah seluruh data yang diberikan oleh Input Device diolah dan
selanjutnya diteruskan kepada Output Device. Seluruh unjuk kerja komputer amat
bergantung pada komponen-komponen pada bagian ini.
Komponen-komponen Process Device adalah :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


1. Processor
Komponen kecil ini adalah inti dari sebuah komputer. Dalam komponen inilah
seluruh perhitungan matematis yang amat rumit dilakukan. Singkat kata,
kecepatan, kehandalan dan kompabilitas PC ditentukan oleh Processornya.
Processor dapat dibedakan dari perbedaan jumlah data bus-nya. Misalkan ada
processor 8 bit, itu berarti processor tersebut memiliki 8 data bus.
Ada beberapa produsen processor untuk PC, seperti Intel, AMD, Cyrix dan
Winchip IDT, namun dalam laporan ini kita menggunakan standard processor
keluaran Intel Corp.

Gambar 15 Beberapa Contoh Processor

Dalam perkembangannya, processor sampai saat ini telah mencapai 7 generasi dan
masih terus berlanjut hingga saat ini. Perkembangan processor tersebut adalah :
1. Generasi pertama
Pada generasi ini, Intel mengeluarkan CPU 16 bit pertamanya yaitu Processor
8086 (1978), namun terhambat oleh kendala harga, dimana perangkat keras 16
bit saat ini masih terlalu mahal, sehingga Intel merancang ulang processornya
dan mengluarkan Processor 8088 yang merupakan CPU 16 bit yang memiliki
lebar bus 8 bit. PC pertama (1981) menggunakan Processor jenis ini
2. Generasi Kedua
Pada generasi ini, Intel merilis Processor 80286 (1982) yang juga merupakan
processor 16 bit namun memiliki kemampuan yang lebih, utamanya dalam
penanganan perintah dan mode kerja baru “24 bit virtual address mode” yang
menegaskan arah perpindahan dari DOS ke windows.
3. Generasi Ketiga
Intel meluncurkan Processor 80386 DX pada tanggal 17 Oktober 1985 yang
merupakan Processor 32 bit pertama. Pada generasi inilah procesor mampu
bekerja secara multitasking .
4. Generasi Keempat
Pada generasi ini, Intel mengeluarkan Processor 80486 DX (10 April 1989) yang
mampu bekerja dua kali lebih cepat dari pendahulunya. Intel juga mengeluarkan
Processor 80486 SX yang merupakan chip yang tidak lengkap dengan
dihilangkannya Math co-processor.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Produsen selain Intel juga mengluarkan beberapa jenis processor, misalnya
Cyrix dan Texas Instruments mengeluarkan 486 SLC dan IBM mengeluarkan
486 SLC2
5. Generasi Kelima
Pada generasi inilah, beberapa produsen Processor mulai berlomba
mengeluarkan produk-produk terbaik mereka, diantaranya adalah :
• Intel
Pada tanggal 22 Maret 1993, Intel mengembangkan Pentium Classic (P54C),
dimana processor ini mampu menjalankan lebih dari satu perintah tiap tik
clock (super scalar) yang sebanding dengan dua buah 486 dalam satu chip.
Bus sistem juga mengalami perubahan besar, yaitu menjadi 64 bit dan
kecepatannya meningkat menjadi 60 atau 66 MHz. Sejak itu, Intel
memproduksi dua macam Pentium: yang bekerja pada sistem bus 60 MHz
(P90, P120, P150 dan P180) dan sisanya, bekerja pada 66 MHz (P100, P133,
P166 dan P200)
Pada tanggal 8 Januari 1997, Intel memperkenalkan Processor type MMX
(Multi Media Extension) atau P55C, dimana dalam processor tersebut
ditambahkan 57 perintah integer baru, 4 jenis data baru dan 8 register 64 bit,
yang menambah kemampuan CPU dalam penanganan aplikasi multimedia.
Pentium yang menggunakan fasilitas ini adalah P200 MMX dan P233 MMX
• Cyrix
Cyrix 6x86 diperkenalkan pada 5 Februari 1996 dan merupakan tiruan
pentium yang murah, namun terkenal dengan unjuk kerja yang buruk
utamanya pada floating-point-nya. Pada tanggal 30 Mei 1997, Cyrix
memperkenalkan 6x86 MX yang kemudian dikenal sebagai MII (M-two) yang
kompatibel dengan Pentium MMX. Kecepatan Bus yang digunakan oleh Cyrix
adalah 60 MHz (PR166), 66 MHz (PR200 dan PR300), 75 MHz (PR233 dan
PR266), 83 MHz (PR333) dan 95 MHz (PR433 dan PR466)

Gambar 16 Processor Keluaran Cyrix

• Advanced Micro Devices


Pentium-pentium AMD bersaing ketat dengan Intel, utamanya dari segi
kecepatan dan harga. AMD menggunakan teknologi mereka sendiri sehingga

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


processornya bukan merupakan clone atau tiruan dari Intel. Processor yang
dikeluarkan oleh AMD adalah :
- AMD K5 yang menggunakan rating dari Pentium dan dapat disamakan
dengan Pentium Classic (P54C) dari Intel. PR133 dan PR166 berharga
jauh lebih murah dari jenis Pentium yang sebanding.
- Pada tanggal 2 April 1997, AMD meluncurkan AMD K6 yang berunjuk kerja
sedikit lebih baik dari Pentium MMX. Processor ini berisi 8,8 juta transistor
- Tanggal 28 Mei 1998, AMD memasarkan K6-2 yang memiliki plug-in 3D
baru yang disebut dengan 3Dnow! Yang merupakan penambahan 21
perintah baru untuk mewujudkan unjuk kerja 3D yang jauh lebih baik.
- Processor ini memiliki unjuk kerja yang amat bagus dan memiliki harga
yang lebih murah dibandingkan dengan Processor Intel pada spesifikasi
yang sama.
- Kecepatan bus yang digunakan pada processor ini adalah : 66 MHz (K6-2
266), 88 MHz (K6-2 266), 95 MHz (K6-2 333 dan K6-2 380), 100 MHz (K6-
2 300, K6-2 350 dan K6-2 400)
6. Generasi Keenam
Pada generasi ini, persaingan antar produsen Processor semakin hebat, dimana
tiap-tiap Produsen terus menerus mengeluarkan inovasi dan produk terbaik
mereka yang terus bersaing, baik dari segi kecepatan maupun harga.

• Intel
Intel mengeluarkan beberapa jenis procesor pada generasi ini, antara lain :
Ø Pentium Pro
Pengembangan Pentium Pro dimulai pada tahun 1991 di Oregon dan
diperenalkan pada 1 November 1995. Pentium Pro merupakan processor
RISC murni dan dioptimasi untuk pemrosesan 32 bit pada Windows NT
atau OS/2. Processor ini menggunakan Soket 8 pada Motherboard.
Ø Pentium II
Dengan nama sandi “Klamath”, Processor ini diperkenalkan 7 Mei 1997
dan menggunakan modul SECC (Single Edge Contact Catridge) yang lebih
familiar dengan Soket 1. Pentium II tersedia dalam 233, 266, 300, 333,
400, 450 dan 500 MHz (dan terus berkembang dengan kecepatan yang
lebih tinggi).
Pentium II berbentuk kotak plastik persegi empat yang besar, yang berisi
CPU dan cache. Juga terdapat sebuah controller kecil (S82459AB) dan
kipas pendingan dengan ukuran yang besar.
Ø Pentium II Celeron
Awal 1998, Intel mempunyai masa yang sulit dengan Pentium II yang
agak mahal. Banyak pengguna membeli AMD K6-233, yang menawarkan
unjuk kerja sangat baik pada harga yang layak. Maka Intel membuat merk
CPU baru yang disebut Celeron. Processor ini sama dengan Pentium II
kecuali cache L2 yang telah dilepas. Processor ini dapat disebut Pentium
II-SX. Catridge Celeron sesuai dengan Slot 1 dan bekerja pada bus sistem
66 MHz. Clock internal bekerja pada 266 atau 300 MHz.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Ø Pentium II Celeron A : Mendocino
Type Processor ini, baik kecepatan maupun bentuknya, mirip dengan
Pentium II. Yang membedakan adalah penambahan cache L2 sebesar 128
Kb didalam catridgenya, yang memberikan unjuk kerja yang amat baik,
karena cache L2 bekerja pada kecepatan CPU penuh.
Ø Pentium II Celeron PPGA : Soket 370
Processor ini menggunakan Soket 370 baru untuk celeron dan dikemas
dalam Plastic Pin Grid Array (PPGA). Soket PPGA 370 terlihat seperti soket
7 tradisional dan memiliki 370 pin.
Ø Pentium II Xeon
Pada 26 Juli 1998, Intel mengenalkan catridge Pentium II baru yang diberi
nama Xeon. Ditujukan untuk penggunaan server dan pemakai high-end.
Xeon menggunakan konektor baru yang disebut Slot Two. Perbedaan
utama antara Xeon dan Pentium II lainnya adalah besar cache L2 yang
terintegrasi dapat mencapat 2 Mb
Ø Pentium III – Katmai
Pada bulan Maret 1999 Intel mengenalkan kumpulan MMX2 baru yang
ditingkatkan dengan perintah grafis (diantaranya 70 buah perintah).
Perintah ini disebut Katmai New Instructions (KNI) / Perintah baru Katmai
atau SSE. Perintah ini ditujukan untuk meningkatkan unjuk kerja game 3D
– seperti teknologi 3Dnow! AMD. KNI diperkenalkan pada Pentium III 500
MHz baru. Processor ini sangat mirip dengan pentium II. Menggunakan
Slot 1, dan hanya berbeda pada fitur baru seperti pemakaian Katmai dan
SSE.
Pentium III Xeon (dengan nama sandi Tanner) diperkenalkan 17 Maret
1999.

Gambar 17 Processor Generasi Keenam dari Intel


• AMD
Pada generasi ini, AMD mengenalkan AMD K6-3 yang merupakan K6 model 9
dengan nama sandi “Sharptooth,” yang mungkin mempunyai cache tiga
tingkat. Kecepatan clock Processor ini adalah 400 MHz dan 450 MHz.
7. Generasi Ketujuh
Pada generasi ini, pertarungan antara Processor-processor tercepat, utamanya
antara Intel dan AMD semakin menghangat. Masing-masing produsen mengeluarkan
Processor terbaik mereka.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


• AMD
Processor AMD utama yang sangat menggemparkan, Athlon (K7)
diperkenalkan Agustus 1999. Athlon dapat mengungguli Pentium III pada
frekwensi yang sama.
Athlon menggunakan Soket khusus (Slot A) dalam pemasangannya karena
AMD tidak memiliki lisensi untuk menggunakan rancang bangun Slot 1,
sehingga rangkaian logika controller datang dari Digital Equipment Corp.
Spesifikasi Athlon adalah :
- Memiliki clock 600 MHz pada versi pertama
- Memiliki cache L2 mencapai 8 Mb (Minimum 512 Kb)
- Memiliki cache L1 sebesar 128 Kb
- Beirsi 22 juta transistor (Pentium III mempunyai 9,3 Juta)
- Memiliki kecepatan ram hingga 200 MHz (Peningkatan hingga 400 MHz
diharapkan kemudian)
- Dapat menangani dan menyusun kembali hingga 72 perintah secara
serentak (Pentium III dapat melakukan 40, K6-2 hanya 24)
- Unjuk kerja FPU yang hebat dengan tiga perintah serentak dan satu
GFLOP pada 500 MHz (1 milyar perintah bilangan floating-point tiap detik)
dengan 80 bit bilangan floating-point.
Athlon akan memberi persaingan Intel dalam segala lapisan termasuk server,
yang dapat dibandingkan dengan processor Xeon.

Gambar 18 Processor Generasi Ketujuh dari AMD


• Intel
Pada generasi ini, Intel berupaya keras untuk menghadang laju AMD dengan
mengeluarkan Processor Pentium 4 dengan kecepatan minimal 1,4 GHz, dan
terus berkembang sampai saat ini.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar 19 Generasi Processor
2. Motherboard

Gambar 20 Motherboard

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Motherboard atau “papan ibu” dan biasa juga disebut dengan “Mainboard”
adalah komponen terbesar yang terdapat dalam sebuah Process Device.
Fungsi motherboard secara keseluruhan adalah tempat utama untuk
memasang peripheral lain, seperti Processor, Memori, VGA Card, dan lain-
lain.
Seperti processor, motherboard juga memiliki beberapa produsen,
diantaranya adalah : Intel, Asus, Iwill, Abit, DFI, Gigabyte, dan masih banyak
lagi.

Motherboard terdiri dari beberapa komponen, yaitu :


• Soket Processor
Soket processor berfungsi untuk menancapkan Processor ke motherboard.
Ada beberapa jenis Soket yang tersedia, bergantung kepada jenis Processor
yang dapat dipasang. Jenis-jenis soket tersebut adalah :

Jumlah
Socket CPU Yang sesuai
Pin
DIP 8088 dan 8086 40
Socket 3 386 168
Socket 5 486 dan Pentium Klasik (P54C) 321
Socket 7 Pentium, MMX, K5, 6x86, K6, IDT 321
Winchip, 6x86MX, K6-2
Socket 8 Pentium Pro 387
Slot One Pentium II 242
Slot One Pentium II (bus sistem 100 MHz) 242
Pentium III (bus sistem 100 dan 133
MHz)
Slot One Celeron 242
Socket 370 Celeron yang di-Socket 370
Slot Two Pentium II Xeon, Tanner 330
Socket 423 Pentium IV 423

Gambar.21 Tabel Jenis Soket Processor

Gambar 22 Soket 370 dan Soket A, Serupa tapi tak sama

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


• Chipset
Chipset berfungsi untuk mengontrol motherboard secara keseluruhan.
Frekwensi bus, jenis processor, slot ekspansi dan kapasitas memori juga
amat bergantung pada chipset. Seperti motherboard dan processor, chipset
juga memiliki berbagai produsen dan jenis, diantaranya adalah : OPTi, UMC,
Ali (ACER Laboratories Inc), SiS, VIA dan Intel.
• Slot RAM
Terdapat beberapa jenis Slot RAM, diantaranya adalah DIP, 30 Pin, 72 Pin
dan 168 pin serta Slot RIMM untuk RDRAM
• Slot Ekspansi
Slot ini berfungsi untuk menempatkan peralatan tambahan yang berfungsi
sebagai sarana komunikasi antara peralatan input / output dengan
motherboard, misalnya untuk VGA Card, Sound Card, Modem, dan lain-lain.
Jenis-jenis Slot Ekspansi adalah :
- ISA (Industri Standard Architecture) 8 bit dan 16 bit
- EISA (Extended ISA) 32 Bit
- MCA (Micro Channel Architecture) 32 Bit
- VL-Bus (VESA Local Bus) 32 Bit
- PCI (Peripheral Component Interconnect) 32 Bit
- AGP (Accelerated Graphic Port) 64 Bit
- CNR (Communication and Network Riser)

Gambar 23 Bagian-bagian Motherboard

• Port IDE , FDD Serial dan Paralel


Port ini digunakan untuk pemasangan Hard Disk (IDE Port), Floppy disk drive
(FDD Port) dan sarana komunikasi dengan perangkat lain (Serial Port) serta
untuk pemasangan printer dan scanner (Paralel Port atau LPT Port)

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


• BIOS (Basic Input Output System)
BIOS berfungsi untuk menginisialisasi dan mengkonfigurasi peripheral
utamanya dalam proses input dan output. Kedudukan BIOS berada diantara
perangkat keras dan Sistem Operasi komputer (Windows, DOS, Linux, OS/2,
dan lain-lain). Semua perintah yang berasal dari sistem operasi, misalnya
menulis ke disket atau membaca CDROM, ditampung dulu oleh BIOS.
• Slot Power
Secara garis besar, slot power supply yang biasa digunakan terbagi 2 jenis,
yaitu AT dan ATX.
3. Memori
Secara garis besar, memori dapat dibagi menjadi 3 bagian utama, yaitu :
1. First Level (L1) Cache
Memori yang bernama L1 Cache ini adalah memori yang terletak paling dekat
dengan processor (lebih spesifik lagi: dekat dengan blok CU [control unit]).
Penempatan Cache di processor dikembangkan sejak PC i486. Memori di
tingkat ini memiliki kapasitas yang paling kecil (hanya 16 Kb), tetapi memiliki
kecepatan akses dalam hitungan nanodetik (sepersemilyar detik). Data yang
berada di memori ini adalah data yang paling penting dan paling sering
diakses. Processor AMD Athlon memiliki cache L1 sebesar 128 Kb.
2. Second Level (L2) Cache
Memori L2 Cache ini terletak di motherboard (Lebih spesifik lagi : modul
COAST : Cache On A Stick. Bentuk khusus dari L2 yang mirip seperti memori
module yang dapat diganti-ganti tergantung motherboardnya), penempatan
L2 Cache ini banyak digunakan pada motherboard 486 atau Pentium klasik.
Akan tetapi ada juga yang terintegrasi langsung dengan motherboard, atau
ada juga yang terintegrasi dengan processor module. Kapasitas L2 lebih
besar dari L1 cache, ukurannya berkisar antara 128 Kb – 2 Mb. Namun L2
cache memiliki kecepatan akses yang lebih lambat dibandingkan dengan L1
cache.

Gambar 24 Alur Data Memori

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


3. Memori Module
Memori yang biasa terlihat dipasang pada motherboard adalah memori modul
tersebut. Memori module ini memiliki kapasitas yang berkisar antara 4Mb –
512 Mb. Kecepatan aksesnya juga berbeda, ada yang berkecepatan 80 ns, 60
ns, 66 MHz (15ns), 100 MHz (10ns), 133 MHz (7,5 ns) dan saat ini telah
dikembangkan 200 dan 400 MHz.

Memori module ini terbagi atas 2 bagian, yaitu :

a. SIMM (Single In-Line Memory Module)


Single pada SIMM ini dimaksudkan dalam penomoran pin. Pada
penampakan fisiknya, pin dan pin yang berada tepat dibaliknya memiliki
nomor yang sama.
SIMM dapat dikelompokkan berdasarkan jumlah pin, yaitu :
q 30 pins
- Pertama kali dibuat dalam modul 8 FPM (Fast Page Mode), yang
memiliki kecepatan 80 ns
- Maksimal bandwidth (lebar jalur data) : 176 Mb/sec
q 72 pins
- FPM yang berkecepatan 70 ns
- EDO (Extended Data Output) yang berkecepatan 60 ns, maksimal
bandwidth 264 Mb/sec

Gambar 25 SIMM

b. DIMM (Dual In-Line Memori Module)


Dual berarti kedua sisi dari penampakan fisik ini menunjukkan bahwa dua
buah sisi menjalankan sekuens proses masing-masing, namun masih
mendukung satu proses utama yang sama.
Menurut proses pembuatannya, DIMM menggunakan sistem DRAM
(Dynamic RAM).

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Sistem DRAM ini juga mengalami berbagai perkembangan, antara lain:
q Synchronous DRAM (SDRAM). Jenis DRAM ini memperbaiki kecepatan
akses data yang tersimpan. Modul EDO RAM dapat dibawa ke
kecepatan tertinggi 75 MHz, sedangkan SDRAM dapat dibawa ke
kecepatan 100 MHz pada sistem yang sama. SDRAM ini juga dapat
dikembangkan lebih jauh, diantaranya :
§ PC 100 RAM, yaitu SDRAM yang dikembangkan untuk sistem bus
100 MHz
§ PC 133 RAM, yang merupakan SDRAM untuk sistem bus 133 MHz
§ ECC RAM (Error Checking and Correction RAM), yang merupakan
SDRAM untuk kebutuhan server yang memiliki kinerja yang berat.
Jenis SDRAM ini dapat mencari kerusakan data pada sel memori
yang bersangkutan dan langsung dapat memperbaikinya.

Gambar 26 DIMM

q Burst EDO RAM (BEDO RAM) adalah jenis EDO yang memiliki
kemampuan Bursting, semula dikembangkan untuk menggantikan
SDRAM, tetapi karena prosesnya yang asinkron dan hanya terbatas
sampai 66 MHz, praktis BEDO RAM ditinggalkan.
q Rambus DRAM (RDRAM) dikembangkan oleh RAMBUS Inc. RDRAM ini
memiliki jalur data yang sempit (8 bit) tetapi keinierjanya tidak dapat
diungguli oleh DRAM jenis lain karena memiliki Memori Controller yang
dipercanggih. Tentunya hanya motherboard yang mendukung RAMBUS
saja yang bisa memakai DRAM ini, seperti Motherboard untuk AMD K7
Athlon.
q SyncLink DRAM (SLDRAM) dibuat karena untuk memakai RDRAM ini
harus membayar royalti kepada RAMBUS Inc. Hal ini dirasakan sangat
mahal bagi pengembang motherboard. Dengan kecepatan 200 MHz,
dan bandwidth maksimum 1600 Mb/sec cukup untuk mengkanvaskan
perkembangan RAMBUS DRAM

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Double Data Rate RAM (DDRAM) dikembangkan karena kebutuhan
transmisi data sangat tinggi.

4. Expansion Card
Expansion card adalah card-card tambahan yang terpasang pada komputer dan
memiliki berbagai fungsi. Contoh card-card yang sering digunakan adalah :
1. VGA Card
VGA Card berfungsi untuk menghubungkan dan mengolah output yang
berupa data ke monitor, agar dapat ditampilkan oleh monitor. Peningkatan
kualitas CPU secara keseluruhan juga amat bergantung kepada jenis VGA
card yang digunakan. Jika komputer hanya digunakan sebatas dokumen
pengolahan data, operasi pada spreadsheet atau untuk “surfing” internet,
jenis dan kualitas VGA yang “biasa-biasa saja” sudah memadai. Tetapi jika
komputer banyak digunakan untuk aplikasi 3D berat atau bermain game
dengan kualitas gambar yang tinggi, maka kualitas VGA card mutlak
diperlukan.
Beberapa faktor yang perlu diperhatikan pada saat memilih sebuah video
card adalah :
a. RAMDAC
RAMDAC adalah sebuah chip yang mengkonversikan grafik PC kedalam
sinyal analog merah, hijau, biru, yang digunakan oleh monitor. Semakin
cepat RAMDAC dari sebuah kartu grafis, semakin halus gambar yang
dihasilkan (semakin bagus kualitasnya).
b. Accelerator chip
VGA Card yang dilengkapi dengan accelerator chip akan meringankan
beban processor. Usahakan accelerator yang digunakan mendukung 32
bit.
c. Type Bus
Ada 4 type bus yang biasa digunakan oleh VGA card, yaitu ISA, VL-bus,
PCI dan AGP. Type bus yang saat ini populer adalah type bus slot AGP
karena memiliki daya akselerasi lebih cepat dan sempurna untuk
digunakan oleh game-game dan gambar 3D.
d. Video Memori
Secara prinsip, semakin besar video memori, semakin cepat gerakan
animasi yang dihasilkan dan termasuk meringankan beban processor
untuk memproses grafik yang berat. Di pasaran, tersedia slot AGP video
card dari 4 MB, 8 MB, 16 MB, 32 MB sampai dengan 64 MB

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar 27 VGA Card dengan slot AGP
2. Sound Card
Sound card berfungsi untuk memproses output berupa suara dan musik yang
kemudian diteruskan kepada speaker. Sound card juga dapat digunakan
sebagai alat input untuk Joystick yang digunakan untuk bermain game.
Perkembangan sound card juga semakin berkembang dari tahun ke tahun.
Saat ini sound card bukan hanya digunakan untuk bermain game, tetapi juga
menyemarakkan aplikasi-aplikasi multimedia, seperti ensiklopedia, program
pendidikan dan pengajaran dan program presentasi. Bahkan saat ini sound
card dapat dimanfaatkan untuk
penggunaan komunikasi seperti telepon VoIP (Voice over Internet Protocol),
Teleconverencing dan lain-lain. Secara umum, pemilihan sound card
bergantung pada kemampuan pemrosesan suara (16 bit atau 32 bit), jenis
suara (analog atau digital) dan support terhadap speaker (stereo atau
surround).

Gambar 28 Sound Card yang dilengkapi dengan penjelasan output

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


3. NIC (Network Interface Card)
NIC atau biasa disebut card LAN (Local Area Network), saat ini telah menjadi
suatu peralatan standard, khususnya bagi pendidikan dan perkantoran yang
telah menerapkan sistem jaringan sebagai salah satu upaya pemberdayaan
komputer secara menyeluruh. Fungsi card LAN atau NIC adalah untuk
menghubungkan antara dua atau lebih komputer agar komputer-komputer
tersebut dapat saling berkomunikasi satu sama lain.

Gambar 29 NIC Jenis 10 MBps

4. TV / Radio Tuner
Menonton televisi dan mendengarkan radio saat ini juga dapat dilakukan
dengan menggunakan komputer. Cukup dengan menambahkan TV dan Radio
card dan menghubungkan card tersebut dengan antena televisi maupun
radio.
5. MPEG Card
Untuk komputer-komputer generasi ketiga dan keempat, dimana memiliki
keterbatasan dalam sumber daya VGA Card, dapat menggunakan card ini
untuk tetap dapat menikmati film kesayangan mereka

5. Memori Eksternal (Storage Device)


Memori eksternal berfungsi sebagai tempat untuk menyimpan data secara
permanen (tidak seperti memori internal, dimana data dapat hilang apabila catu
daya ke komponen tersebut diputuskan). Media penyimpan ini terbagi atas :
1. Floppy Disk
Secara fisik, floppy yang saat ini sering digunakan terbagi atas 2 jenis, yaitu
5,25 inchi dan 3,5 inchi , dimana masing-masing ukuran memiliki 2 type
kapasitas, yaitu Double Density (DD) dan High Density (HD)

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Disket diputar pada kecepatan 300 rpm (Double Density) atau 360 rpm (High
Density). Sewaktu disk berputar, head dapat bergerak keluar atau ke dalam
sekitar 1 inchi, menulis sekitar 40 atau 80 track.

Floppy Disk 5,25 inchi

Karakteristik Double Density High Density


Lebar Track 0,330 mm 0,160 mm
Track per inchi 48 96
Koersivitas 300 oersted 600 oersted
Bytes per sector 512 512
Sector per track 9 15
Track per side 40 80
Side 2 2
Kapasitas 360 Kbytes 1,2 Mbytes

Gambar 30 Floppy Disk Drive 5,25 Inch dan Karakteristiknya

Floppy Disk 3,5 inchi


Karakteristik Double Density High Density
Lebar Track 0,115 mm 0,115 mm
Track per inchi 135 135
Koersivitas 300 oersted 600 oersted
Bytes per sector 512 512
Sector per track 9 18
Track per side 80 80
Side 2 2
Kapasitas 720 Kbytes 1,44 Mbytes

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar 31 Floppy Disk Drive 3,5 Inch dan Karakteristiknya

2. Hard Disk
Hard Disk memiliki prinsip kerja yang sama dengan Floppy Disk dan juga
memiliki fungsi sebagai penyimpan data. Yang membedakan antara Hard Disk
dan Floppy Disk adalah bentuk fisik dan kapasitas penyimpanan data serta
kecepatan aksesnya. Sesuai dengan namanya (Hard yang berarti Keras),
media penyimpanan data dalam hard disk menggunakan media logam dan
dapat terdiri dari beberapa plat sehingga mampu menyimpan data yang lebih
banyak. Kapasitas penyimpanan hard disk rata-rata adalah 120 MByte sampai
dengan 100 Gbyte.

Gambar 32 Bentuk fisik Hard Disk


3. CDROM
Media penyimpanan semakin hari mengalami kemajuan dengan amat pesat.
Dengan CDROM ini, besar data yang mampu dimasukkan menjadi berkali-kali
lipat dibandingkan dengan floppy. Juga daya tahan media ini lebih baik
dibandingkan dengan floppy. Jenis CDROM bergantung kepada kecepatan
putarnya, misal : CDROM 12 x berarti memiliki kecepatan putaran 12 x
kecepatan putar floppy.
Saat ini CDROM juga telah mampu merekan ke dalam format CD dan biasa
disebut dengan CD RW (Read-Write).

Gambar 33 Bentuk fisk CDROM

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Pengertian Jaringan
Seringkali kita mendengar kata internet, sekilas mungkin kita akan
berpikir bahwa yang namanya internet merupakan sebuah jaringan yang sangat
besar dan terdiri dari banyak kompuer. Atau bahkan bagi orang yang awam internet
sering diartikan sebagai browsing, chatting, dan lain-lain.

Pengertian ini merupakan sebuah pandangan yang kurang benar. Karena


sebenarnya internet adalah kumpulan dari jaringan-jaringan kecil dan besar yang
saling terhubung secara real-time atau terus menerus di seluruh dunia.

Dalam suatu sistem jaringan, dimana seluruh komputer saling berbagi


data dan resources satu sama lain sehingga tercapai efisiensi dalam pemanfaatan
teknologi, amat dibutuhkan perangkat-perangkat khusus dan instalasi tertentu.

Pada bab ini akan dijelaskan beberapa peralatan yang digunakan dalam
sistem jaringan serta pengaturan TCP/IP pada sistem operasi Windows.

q Topologi Jaringan
Tujuan dari suatu jaringan adalah menghubungkan jaringan-jaringan yang
telah ada dalam jaringan tersebut sehingga informasi dapat ditransfer dari satu
lokawi ke lokasi yang lain. Karena suat perusahaan memuliki keinginan atau
kebutuhan yang berbeda-beda maka terdapat berbagai cara jaringan terminal-
terminal dapat dihubungkan. Struktur Geometric ini disebut dengan LAN
Topologies.
Terdapat 6 jenis topologi yaitu :
q Bus
q Ring
q Star
q Extended Star
q hierarchical topology
q Mesh
Setiap topologi memuliki karakteristik yang berdeda-beda dan masing-
masing juga memiliki keuntungan dan kerugian. Topologi tidak tergantung kepada
medianya dan setiap topologi biasanya menggunakan media sebagai berikut :
Jenis-jenis Media yaitu :
q Twisted Pair
q Coaxial Cable
q Optical Cable
q Wireless

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Topologi dibagi menjadi dua jenis yaitu Physical Topology dan Logical
Topologi. Dibawah ini adalah jenis-jenis Physical Topologi.
1. Topologi Bus atau Daisy Chain
Topologi ini memiliki karakteristik sebagai berikut:
• merupakan satu kabel yang kedua ujung nya ditutup, dimana sepanjang
kabel terdapat node-node
• umum digunakan karena sederhana dalam instalasi
• signal melewati kabel dalam dua arah dan mungkin terjadi collision
• problem terbesar pada saat kabel putus. Jika salah satu segmen kabel putus,
maka seluruh jaringan akan terhenti.

2. Topologi Ring
Topologi ini mempuyai karakteristik sebagai berikut:
• lingkaran tertutup yang berisi node-node
• sederhana dalam layout
• signal mengalir dalam satu arah, sehingga dapat menghindarkan terjadinya
collision (dua paket data bercampur), sehingga memungkinkan pergerakan
data yang cepat dan collision detection yang lebih sederhana
• problem: sama dengan topologi bus
• biasanya topologi ring tidak dibuat secara fisik melainkan direalisasikan
dengan sebuah consentrator dan kelihatan seperti topologi star

3. Topolog Star
Topologi ini mempunyai karakteristik sebagai berikut:
• setiap node berkomunikasi langsung dengan central node, traffic data
mengalir dari node ke central node dan kembali lagi.
• mudah dikembangkan, karena setiap node hanya memiliki kabel yang
langsung terhubung ke central node.
• keunggulannya adalah jika satu kabel node terputus yang lainnya tidak
terganggu.
• dapat digunakan kabel yang “lower grade” karena hanya menghandel satu
traffic node, biasanya digunakan kabel UTP.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


4. Topologi Extended Star
Topologi Extended Star merupakan perkembangan lanjutan dari topologi star
dimana karakteristiknya tidak jauh berbeda dengan topologi star yaitu :
• setiap node berkomunikasi langsung dengan sub node, sedangkan sub node
berkomunikasi dengan central node. traffic data mengalir dari node ke sub
node lalu diteruskan ke central node dan kembali lagi.
• Digunakan pada jaringan yang besar dan membutuhkan penghubung yang
banyak atau melebihi dari kapasitas maksimal penghubung.
• keunggulan : jika satu kabel sub node terputus maka sub node yang lainnya
tidak terganggu, tetapi apabila central node terputus maka semua node
disetiap sub node akan terputus
• tidak dapat digunakan kabel yang “lower grade” karena hanya menghandel
satu traffic node, karena untuk berkomunikasi antara satu node ke node
lainnya membutuhkan beberapa kali hops.

5. Topologi hierarchical
Topologi ini biasa disebut sebagai topolodi tree. Dibangun oleh seperti halnya
topologi extended star yang dihubungkan melalui sub node dalam satu central node.
Topologi ini dapat mensupport baik baseband maupun broadband signaling dan
juga mensupport baik contention maupun token bus access.

6. Topologi Mesh
MESH topologi dibangun dengan memasang link diantara atation-station.
Sebuah ‘fully-connected mesh’ adalah sebauh jaringan dimana setiap terminal
terhubung secara langsung ke semua terminal-terminal yang lain. Biasanya
digunakan pada jaringan komputer kecil. Topologi ini secara teori memungkinkan
akan tetapi tidak praktis dan biayanya cukup tinggi untuk di-implementasikan. Mesh
topologi memiliki tingkat redundancy yang tinggi. Sehingga jika terdapat satu link
yang rusak maka suatu station dapat mencari link yang lainnya.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar 34 Jenis-jenis topologi

Sedangkan Logical Topology adalah FDDI, Token Ring, dan Ethernet.

q Tipe Jaringan
Dalam jaringan terdapat tiga buah peran yang dijalankan. Yang pertama
adalah client. Peran ini hanya sebatas pengguna tetapi tidak menyediakan sumber
daya (sharing), informasi, dan lain-lain. Peran kedua adalah sebagai peer, yaitu
client yang menyediakan sumber daya untuk dibagi kepada client lain sekaligus
memakai sumber daya yang tersedia pada client yang lain (peer to peer).
Sedangkan peran yang terakhir adalah sebagai server, yaitu menyediakan sumber
daya secara maksimal untuk digunakan oleh client tetapi tidak memakai sumber
daya yang disediakan oleh client. Dibawah ini akan dijelaskan jenis-jenis jaringan
yang ada.
1. Jaringan Berbasis Server
Jaringan berbasis server atau client-server diartikan dengan adanya server
didalam sebuah jaringan yang menyediakan mekanisme pengamanan dan
pengelolaan jaringan tersebut. Jaringan ini terdiri dari banyak client dari satu atau

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


lebih server. Client juga biasa disebut front-end meminta layanan seperti
penyimpanan dan pencetakan data ke printer jaringan, sedangkan server yang
sering disebut back-end menyampaikan permintaan tersebut ke tujuan yang tepat.

Pada Windows NT, Windows 2000, dan Windows Server 2003, jaringan
berbasis server diorganisasikan di dalam domain-domain. Domain adalah koleksi
jaringan dan client yang saling berbagi informasi. Keamanan domain dan perizinan
log on dikendalikan oleh server khusus yang disebut domain controlle. Terdapat
satu pengendali domain utama atau Primary Domain Controller (PDC) dan
beberapa domain controller pendukung atau backup Domain Controller (BDC) yang
membantu PDC pada waktu-waktu sibuk atau pada saat PDC tidak berfungsi karena
alasan tertentu.

Primasry Domain Controller juga diterapkan di dalam jaringan yang


menggunakan server Linux. Software yang cukup andal menangani masalah ini
adalah samba yang sekaligus dapat digunakan sebagai penyedia layanan file dan
print yang membuat computer Windows dapat mengakses file-file di mesin Linux
dan begitu pula sebaliknya.

Jaringan berbasis server memiliki beberapa keuntungan diantaranya adalah :


1. Media penyimpanan data yang terpusat memungkinkan semua user menyimpan
dan menggunakan data di server dan memberikan kemudahan melakukan back-
up data di saat kritis. Pemeliharaan data juga menjadi lebih mudah karena data
tidak tersebar di beberapa computer.
2. Kemampuan server untuk menyatukan media penyimpanan di satu tempat akan
menekan biaya pembangunan jaringan. Server yang telah dioptimalkan
membuat jaringan berjalan lebih cepat daripada jaringan peer-to-peer.
Membebaskan user dari pekerjaan mengelola jaringan.
3. Kemudahan mengatur jumlah pengguna yang banyak. Kemampuan untuk
sharing peralatan mahal seperti printer laser. Mengurangi masalah keamanan
karena pengguna harus memasukkan password untuk setiap peralatan jaringan
yang akan digunakan.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


2. Jaringan Peer-to-peer
Setiap computer di dalam jaringan peer mempunyai fungsi yang sama
dan dapat berkomunikasi dengan computer lain yang telah memberi izin. Jadi,
secara sederhana setiap komputer pada jaringan peer berfungsi sebagai client dan
server sekaligus. Jaringan peer digunakan di sebuah kantor kecil dengan jumlah
computer sedikit, dibawah sepuluh workstation.
Keuntungan menggunakan jaringan peer adalah :
1. Tidak memerlukan investasi tambahan untuk pembelian hardware dan software
server.
2. Tidak diperlukan seorang network administrator dan setupnya mudah serta
meminta biaya yang murah.
Kerugian menggunakan jaringan peer adalah :
1. Sharing sumberdaya pada suatu komputer didalam jaringan akan sangat
membebani computer tersebut.
2. Masalah lain adalah kesulitan dalam mengatur file-file. User harus menangani
komputernya sendiri jika ditemui masalah keamanan sangat lemah.
3. Jaringan Hybrid
Jaringan hybrid memiliki semua yang terdapat pada tiga tipe jaringan di
atas. Ini berarti pengguna dalam jaringan dapat mengakses sumber daya yang
dishare oleh jaringan peer, sedangkan di waktu bersamaan juga dapat
memanfaatkan seumber daya yang disediakan oleh server.
Keuntungan jaringan hybrid adalah sama dengan keuntungan
menggunakan jaringan berbasis server dan berbasis peer. Jaringan hybrid memiliki
kekurangan seperti pada jaringan berbasis server.
q Peralatan Jaringan
Ada beberapa peralatan yang digunakan dalam jaringan, peralatan ini
sering digunakan di dalam perkantoran dan perusahan besar. Peralatan ini adalah :
1. Network Interface Card
Dalam memilih network interface card, ada beberapa pertimbangan yang
harus diperhatikan. Pertimbangan-pertimbangan ini sangat penting untuk
diperhatikan, yaitu :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Tipe jaringan seperti Ethernet LANs, Token Ring, atau Fiber Distributed
Data Interface (FDDI).
q Tipe Media seperti Twisted Pair, Coaxial, Fiber-Optic, dan Wireless.
q Tipe Bus seperti ISA dan PCI.

Gambar 35 Network Interface Card

2. PCMCIA Network Interface Card


PCMCIA card adalah card jaringan yang digunakan untuk terhubung
kedalam sebuah jaringan tanpa menggunakan kabel.

Gambar 36 PCMCIA Network Interface Card

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


3. Modem
Modem atau Modul the Modulator adalah peralatan jaringan yang
digunakan untuk terhubung ke jaringan internet menggunakan kabel telepon.

Gambar 37 PCMCIA Network Interface Card

4. HUB/Switch
HUB atau Switch digunakan untuk menghubungkan setiap node dalam
jaringan LAN. Peralatan ini sering digunakan pada topologi star dan extended star.
Perbedaan antara HUB dan Switch adalah kecepatan transfer datanya. Yaitu 10:100
Mbps.

Gambar 38 HUB 8 Port dan Switch 24 Port

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


5. Bridge
Bridge adalah peralatan jaringan yang digunakan untuk memperluas ata
memecah jaringan. Bridge berfungsi untuk menghubungkan dan menggabungkan
media jaringan yang tidak sama seperti kabel unshielded twisted pair (UTP) dan
kabel fiber-optic, dan untuk menggabungkan arsitektur jaringan yang berbeda
seperti Token Ring dan Ethernet. Bridge meregenerate sinyal tetapi tidak melakukan
konversi protocol, jadi protocol jaringan yang sama (seperti TCP/IP) harus berjalan
kepada kedua segemen jaringan yang terkoneksi ke bridge. Bridge dapat juga
mendukung Simple Network Management Protocol (SNMP), serta memiliki
kemampuan diagnosa jaringan.
Bridge hadir dalam tiga tipe dasar yaitu Local, Remote, dan Wireless.
Bridge local secara langsung menghubungkan Local Area Network (LAN). Bridge
remote yang dapat digunakan untuk membuat sebuah Wide Area Network (WAN)
menghubungkan dua atau lebih LAN. Sedangkan wireless bridge dapat digunakan
untuk menggabungkan LAN atau menghubungkan mesin-mesin yang jauh ke suatu
LAN.
Bridge beroperasi mengenali alamat MAC address node asal yang
mentransmisi data ke jaringan dan secara automatis membangun sebuah table
routing internal. Table ini digunakan untuk menentukan ke segmen mana paket akan
di route dan menyediakan kemampuan penyaringan (filtering). Setelah mengetahui
ke segmen mana suatu paket hendak disampaikan, bridge akan melanjutkan
pengiriman paket secara langsung ke segmen tersebut. Jika bride tidak mengenali
alamat tujuan paket, maka paket akan di forward ke semua segmen yang terkoneksi
kecuali segmen alamat asalanya. Dan jika alamat tujuan berada dalam segmen
yang sama dengan alamat asal, bridge akan menolak paket. Bridge juga
melanjutkan paket-paket broadcast ke semua segmen kecuali segmen asalnya.

Gambar 39 Wireless Bridge


6. Router
Router adalah peralatan jaringan yang digunakan untuk memperluas atau
memecah jaringan dengan melanjutkan paket-paket dari satu jaringan logika ke
jaringan yang lain. Router banyak digunakan di dalam internetwork yang besar

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


menggunakan keluarga protocol TCP/IP dan untuk menghubungkan semua host
TCP/IP dan Local Area Network (LAN) ke internet menggunakan dedicated leased
line. Saat ini, masih banyak perusahaan menggunakan router Cisco 2500 series
untuk mengkoneksikan dua buah LAN (WAN dengan anggota dua LAN), LAN ke
ISP (Internet Service Provider). Koneksi seperti ini menyebabkan semua workstation
dapat terkoneksi ke internet selama 24 jam.
Router berisi table-tabel informasi internal yang disebut label routering
yang melakukan pencatatan terhadap semua alamat jaringan yang diketahui dan
lintasan yang mungkin dilalui. Router membuat jalur paket-paket berdasarkan
lintasan yang tersedia dan waktu tempuhnya. Karena menggunakan alamat paket
jaringan tujuan, router bekerja hanya jika protocol yang dikonfigurasi adalah protocol
yang routetable seperti TCP/IP atau atau IPX/SPX. Ini berbeda dengan bridge yang
bersifat protocol independent.

Gambar 40 Cisco Router 2600 series

7. Crimping Tools
Crimping tools berguna untuk memotong, merapikan dan mengunci kabel
UTP dalam melakukan instalasi Networking.

Digunakan untuk
memotong
Dan menjepit kabel
Digunakan untuk
mengupas
kabel
Gambar 41 Crimping Tools

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Pengkabelan
1. Kupas lapisan luar kabel UTP sepanjang ± 1 Cm dari ujung, sehingga 8 urat
kabel terlihat dari luar.
2. Susun urutan warna kabel sesuai dengan standard internasional
Gambar Nomor kaki (pin) Nama Warna
1 Putih orange
2 Orange
3 Putih hijau
4 Biru
5 Putih biru
6 Hijau
7 Putih coklat
8 Coklat

Gambar 35 Susunan kabel straight


Nomor kaki (pin) Nama Warna
1 Putih hijau
2 Hijau
3 Putih orange
4 Biru
5 Putih biru
6 Orange
7 Putih coklat
8 Coklat

Gambar 36 Susunan kabel cross


3. Masukkan Ujung kabel UTP yang telah disusun menurut urutan internasional,
kemudian jepit dengan menggunakan crimping tool.

Gambar 37 Memasukkan Kabel UTP ke dalam RJ-45

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar 38 Menjepit kabel menggunakan Crimping

Gambar 39 Hasil Crimping kabel yang baik

4. Pasang satu sisi RJ-45 ke dalam Network Card, dan sisi lainnya ke HUB/Switch

5. Jaringan siap dioperasikan

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Sejarah TCP/IP

Sejarah TCP/IP dimulainya dari lahirnya ARPANET yaitu jaringan paket


switching digital yang didanai oleh DARPA (Defence Advanced Research Projects
Agency) pada tahun 1969. Sementara itu ARPANET terus bertambah besar
sehingga protokol yang digunakan pada waktu itu tidak mampu lagi menampung
jumlah node yang semakin banyak. Oleh karena itu DARPA mendanai pembuatan
protokol komunikasi yang lebih umum, yakni TCP/IP. Ia diadopsi menjadi standard
ARPANET pada tahun 1983.
Untuk memudahkan proses konversi, DARPA juga mendanai suatu proyek
yang mengimplementasikan protokol ini ke dalam BSD UNIX, sehingga dimulailah
perkawinan antara UNIX dan TCP/IP.. Pada awalnya internet digunakan untuk
menunjukan jaringan yang menggunakan internet protocol (IP) tapi dengan semakin
berkembangnya jaringan, istilah ini sekarang sudah berupa istilah generik yang
digunakan untuk semua kelas jaringan. Internet digunakan untuk menunjuk pada
komunitas jaringan komputer worldwide yang saling dihubungkan dengan protokol
TCP/IP.
Perkembangan TCP/IP yang diterima luas dan praktis menjadi standar de-
facto jaringan komputer berkaitan dengan ciri-ciri yang terdapat pada protokol itu
sendiri yang merupakan keunggulun dari TCP/IP, yaitu :

n Perkembangan protokol TCP/IP menggunakan standar protokol terbuka


sehingga tersedia secara luas. Semua orang bisa mengembangkan perangkat
lunak untuk dapat berkomunikasi menggunakan protokol ini. Hal ini membuat
pemakaian TCP/IP meluas dengan sangat cepat, terutama dari sisi
pengadopsian oleh berbagai sistem operasi dan aplikasi jaringan.

n Tidak tergantung pada perangkat keras atau sistem operasi jaringan


tertentu sehingga TCP/IP cocok untuk menyatukan bermacam macam network,
misalnya Ethernet, token ring, dial-up line, X-25 net dan lain lain.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


n Cara pengalamatan bersifat unik dalam skala global, memungkinkan
komputer dapat mengidentifikasi secara unik komputer yang lain dalam seluruh
jaringan, walaupun jaringannya sebesar jaringan worldwide Internet. Setiap
komputer yang tersambung dengan jaringan TCP/IP (Internet) akan memiliki
address yang hanya dimiliki olehnya.

n TCP/IP memiliki fasilitas routing dan jenis-jenis layanan lainnya yang


memungkinkan diterapkan pada internetwork.

q Arsitektur dan Protokol Jaringan TCP/IP

Dalam arsitektur jaringan komputer, terdapat suatu lapisan-lapisan ( layer )


yang memiliki tugas spesifik serta memiliki protokol tersendiri. ISO (International
Standard Organization) telah mengeluarkan suatu standard untuk arsitektur jaringan
komputer yang dikenal dengan nama Open System Interconnection ( OSI ).
Standard ini terdiri dari 7 lapisan protokol yang menjalankan fungsi komunikasi
antara 2 komputer. Dalam TCP/IP hanya terdapat 5 lapisan sbb :

Application Layer

Presentation Layer

Session Layer Application Layer

Transport Layer Transport Layer

Network Layer Internet Layer

Data Link Layer Network Access Layer

Physical Layer Physical Layer

Arsitektur OSI Arsitektur TCP/IP


Perbandingan Arsitektur OSI dan TCP/IP

Walaupun jumlahnya berbeda, namun semua fungsi dari lapisan-lapisan


arsitektur OSI telah tercakup oleh arsitektur TCP/IP. Adapun rincian fungsi masing-
masing layer arsitektur TCP/IP adalah sbb :
Physical Layer (lapisan fisik) merupakan lapisan terbawah yang mendefinisikan
besaran fisik seperti media komunikasi, tegangan, arus, dsb. Lapisan ini dapat

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


bervariasi bergantung pada media komunikasi pada jaringan yang bersangkutan.
TCP/IP bersifat fleksibel sehingga dapat mengintegralkan mengintegralkan berbagai
jaringan dengan media fisik yang berbeda-beda.
Network Access Layer mempunyai fungsi yang mirip dengan Data Link layer pada
OSI. Lapisan ini mengatur penyaluran data frame-frame data pada media fisik yang
digunakan secara handal. Lapisan ini biasanya memberikan servis untuk deteksi
dan koreksi kesalahan dari data yang ditransmisikan. Beberapa contoh protokol
yang digunakan pada lapisan ini adalah X.25 jaringan publik, Ethernet untuk
jaringan Etehernet, AX.25 untuk jaringan Paket Radio dsb.
Internet Layer mendefinisikan bagaimana hubungan dapat terjadi antara dua pihak
yang berada pada jaringan yang berbeda seperti Network Layer pada OSI. Pada
jaringan Internet yang terdiri atas puluhan juta host dan ratusan ribu jaringan lokal,
lapisan ini bertugas untuk menjamin agar suatu paket yang dikirimkan dapat
menemukan tujuannya dimana pun berada. Oleh karena itu, lapisan ini memiliki
peranan penting terutama dalam mewujudkan internetworking yang meliputi wilayah
luas (worldwide Internet). Beberapa tugas penting pada lapisan ini adalah:

§ Addressing, yakni melengkapi setiap datagram dengan alamat Internet dari


tujuan. Alamat pada protokol inilah yang dikenal dengan Internet Protocol
Address ( IP Address). Karena pengalamatan (addressing) pada jaringan TCP/IP
berada pada level ini (software), maka jaringan TCP/IP independen dari jenis
media dan komputer yang digunakan.

§ Routing, yakni menentukan ke mana datagram akan dikirim agar mencapai


tujuan yang diinginkan. Fungsi ini merupakan fungsi terpenting dari Internet
Protocol (IP). Sebagai protokol yang bersifat connectionless, proses routing
sepenuhnya ditentukan oleh jaringan. Pengirim tidak memiliki kendali terhadap
paket yang dikirimkannya untuk bisa mencapai tujuan. Router-router pada
jaringan TCP/IP lah yang sangat menentukan dalam penyampaian datagram
dari penerima ke tujuan.

Transport Layer mendefinisikan cara-cara untuk melakukan pengiriman data antara


end to end host secara handal. Lapisan ini menjamin bahwa informasi yang diterima

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


pada sisi penerima adalah sama dengan informasi yang dikirimkan pada pengirim.
Untuk itu, lapisan ini memiliki beberapa fungsi penting antara lain :

§ Flow Control. Pengiriman data yang telah dipecah menjadi paket-paket tersebut
harus diatur sedemikian rupa agar pengirim tidak sampai mengirimkan data
dengan kecepatan yang melebihi kemampuan penerima dalam menerima data.

§ Error Detection. Pengirim dan penerima juga melengkapi data dengan sejumlah
informasi yang bisa digunakan untuk memeriksa data yang dikirimkan bebas dari
kesalahan. Jika ditemukan kesalahan pada paket data yang diterima, maka
penerima tidak akan menerima data tersebut. Pengirim akan mengirim ulang
paket data yang mengandung kesalahan tadi. Namun hal ini dapat menimbulkan
delay yang cukup berartii.

Pada TCP/IP, protokol yang dipergunakan adalah Transmission Control Protocol


(TCP) atau User Datagram Protocol ( UDP ). TCP dipakai untuk aplikasi-aplikasi
yang membutuhkan keandalan data, sedangkan UDP digunakan untuk aplikasi
yang membutuhkan panjang paket yang pendek dan tidak menuntut keandalan yang
tinggi. TCP memiliki fungsi flow control dan error detection dan bersifat connection
oriented. Sebaliknya pada UDP yang bersifat connectionless tidak ada mekanisme
pemeriksaan data dan flow control, sehingga UDP disebut juga unreliable protocol.
Untuk beberapa hal yang menyangkut efisiensi dan penyederhanaan, beberapa
aplikasi memilih menggunakan UDP sebagai protokol transport. Contohnya adalah
aplikasi database yang hanya bersifat query dan response, atau aplikasi lain yang
sangat sensitif terhadap delay seperti video conference. Aplikasi seperti ini dapat
mentolerir sedikit kesalahan (gambar atau suara masih bisa dimengerti), namun
akan tidak nyaman untuk dilihat jika terdapat delay yang cukup berarti.
Application Layer merupakan lapisan terakhir dalam arsitektur TCP/IP yang
berfungsi mendefinisikan aplikasi-aplikasi yang dijalankan pada jaringan. Karena itu,
terdapat banyak protokol pada lapisan ini, sesuai dengan banyaknya aplikasi
TCP/IP yang dapat dijalankan. Contohnya adalah SMTP ( Simple Mail Transfer
Protocol ) untuk pengiriman e-mail, FTP (File Transfer Protocol) untuk transfer file,
HTTP (Hyper Text Transfer Protocol) untuk aplikasi web, NNTP (Network News
Transfer Protocol) untuk distribusi news group dan lain-lain. Setiap aplikasi pada

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


umumnya menggunakan protokol TCP dan IP, sehingga keseluruhan keluarga
protokol ini dinamai dengan TCP/IP.

q Pengiriman dan Penerimaan Paket Data

Layer-layer dan protokol yang terdapat dalam arsitektur jaringan TCP/IP


menggambarkan fungsi-fungsi dalam komunikasi antara dua buah komputer. Setiap
lapisan menerima data dari lapisan di atas atau dibawahnya, kemudian memproses
data tersebut sesuai fungsi protokol yang dimilikinya dan meneruskannya ke lapisan
berikutnya. Ketika dua komputer berkomunikasi, terjadi aliran data antara pengirim
dan penerima melalui lapisan-lapisan di atas. Pada pengirim, aliran data adalah dari
atas ke bawah. Data dari user maupun suatu aplikasi dikirimkan ke Lapisan
Transport dalam bentuk paket-paket dengan panjang tertentu. Protokol
menambahkan sejumlah bit pada setiap paket sebagai header yang berisi informasi
mengenai urutan segmentasi untuk menjaga integritas data dan bit-bit pariti untuk
deteksi dan koreksi kesalahan.
Dari Lapisan Transport, data yang telah diberi header tersebut diteruskan ke
Lapisan Network / Internet. Pada lapisan ini terjadi penambahan header oleh
protokol yang berisi informasi alamat tujuan, alamat pengirim dan informasi lain
yang dibutuhkan untuk melakukan routing. Kemudian terjadi pengarahan routing
data, yakni ke network dan interface yang mana data akan dikirimkan, jika terdapat
lebih dari satu interface pada host. Pada lapisan ini juga dapat terjadi segmentasi
data, karena panjang paket yang akan dikirimkan harus disesuaikan dengan kondisi
media komunikasi pada network yang akan dilalui. Proses komunikasi data di atas
dapat dijelaskan seperti pada gambar berikut ini :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Data

Application Layer

Header Data

Transport Layer

Header Data

Internet Layer

Header Data

Network Access Layer

Sinyal Listrik / Gelombang EM

Physical Layer
Proses Enkapsulasi Data

Selanjutnya data menuju Network Access Layer (Data Link) dimana data
akan diolah menjadi frame-frame, menambahkan informasi keandalan dan address
pada level link. Protokol pada lapisan ini menyiapkan data dalam bentuk yang paling
sesuai untuk dikirimkan melalui media komunikasi tertentu.
Terakhir data akan sampai pada Physical Layer yang akan mengirimkan
data dalam bentuk besaran-besaran listrik/fisik seperti tegangan, arus, gelombang
radio maupun cahaya, sesuai media yang digunakan.
Di bagian penerima, proses pengolahan data mirip seperti di atas hanya
dalam urutan yang berlawanan (dari bawqah ke atas). Sinyal yang diterima pada
physical layer akan diubah dalam ke dalam data. Protokol akan memeriksa
integritasnya dan jika tidak ditemukan error t header yang ditambahkan akan
dilepas.
Selanjutnya data diteruskan ke lapisan network. Pada lapisan ini, address
tujuan dari paket data yang diterima akan diperiksa. Jika address tujuan merupakan
address host yang bersangkutan, maka header lapisan network akan dicopot dan
data akan diteruskan ke lapisan yang diatasnya. Namun jika tidak, data akan di
forward ke network tujuannya, sesuai dengan informasi routing yang dimiliki.
Pada lapisan Transport, kebenaran data akan diperiksa kembali,
menggunakan informasi header yang dikirimkan oleh pengirim. Jika tidak ada

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


kesalahan, paket-paket data yang diterima akan disusun kembali sesuai urutannya
pada saat akan dikirim dan diteruskan ke lapisan aplikasi pada penerima.
Proses yang dilakukan tiap lapisan tersebut dikenal dengan istilah
enkapsulasi data. Enkapsulasi ini sifatnya transparan. Maksudnya, suatu lapisan
tidak perlu mengetahui ada berapa lapisan yang ada di atasnya maupun di
bawahnya. Masing-masing hanya mengerjakan tugasnya. Pada pengirim, tugas ini
adalah menerima data dari lapisan diatasnya, mengolah data tersebut sesuai
dengan fungsi protokol, menambahkan header protokol dan meneruskan ke lapisan
di bawahnya.
Pada penerima, tugas ini adalah menerima data dari lapisan di bawahnya,
mengolah data sesuai fungsi protokol, mencopot header protokol tersebut dan
meneruskan ke lapisan di atasnya.
Internet Protocol
Internet Protocol (IP) berfungsi menyampaikan paket data ke alamat yang
tepat. Oleh karena itu Internet Protokol memegang peranan yang sangat penting
dari jaringan TCP/IP. Karena semua aplikasi jaringan TCP/IP pasti bertumpu kepada
Internet Protocol agar dapat berjalan dengan baik.
IP merupakan protokol pada network layer yang bersifat :

§ Connectionless, yakni setiap paket data yang dikirim pada suatu saat akan
melalui rute secara independen. Paket IP (datagram) akan melalui rute yang
ditentukan oleh setiap router yang dilalui oleh datagram tersebut. Hal ini
memungkinkan keseluruhan datagram tiba di tempat tujuan dalam urutan yang
berbeda karena menempuh rute yang berbeda pula.

§ Unreliable atau ketidakandalan yakni Protokol IP tidak menjamin datagram


yang dikirim pasti sampai ke tempat tujuan. Ia hanya akan melakukan best effort
delivery yakni melakukan usaha sebaik-baiknya agar paket yang dikirim tersebut
sampai ke tujuan.

Suatu datagram bisa saja tidak sampai dengan selamat ke tujuan karena
beberapa hal berikut:

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


§ Adanya bit error pada saat pentransmisian datagram pada suatu medium

§ Router yang dilewati mendiscard datagram karena terjadinya kongesti dan


kekurangan ruang memori buffer

§ Putusnya rute ke tujuan untuk sementara waktu akibat adanya router yang down

Terjadinya kekacauan routing, sehingga datagram mengalami looping


IP juga didesain untuk dapat melewati berbagai media komunikasi yang
memiliki karakteristik dan kecepatan yang berbeda-beda. Pada jaringan Ethernet,
panjang satu datagram akan lebih besar dari panjang datagram pada jaringan publik
yang menggunakan media jaringan telepon, atau pada jaringan wireless. Perbedaan
ini semata-mata untuk mencapai throughput yang baik pada setiap media. Pada
umumnya, semakin cepat kemampuan transfer data pada media tersebut, semakin
besar panjang datagram maksimum yang digunakan. Akibat dari perbedaan ini,
datagram IP dapat mengalami fragmentasi ketika berpindah dari media kecepatan
tinggi ke kecepatan rendah (misalnya dari LAN Ethernet 10 Mbps ke leased line
menggunakan Point-to-Point Protocol dengan kecepatan 64 kbps). Pada router/host
penerima, datagram yang ter-fragmen ini harus disatukan kembali sebelum
diteruskan ke router berikutnya, atau ke lapisan transport pada host tujuan. Hal ini
menambah waktu pemrosesan pada router dan menyebabkan delay.
Seluruh sifat yang diuraikan pada di atas adalah akibat adanya sisi efisiensi
protokol yang dikorbankan sebagai konsekuensi dari keunggulan protokol IP.
Keunggulan ini berupa kemampuan menggabungkan berbagai media komunikasi
dengan karakteristik yang berbeda-beda, fleksibel dengan perkembangan jaringan,
dapat merubah routing secara otomatis jika suatu rute mengalami kegagalan, dsb.
Misalnya, untuk dapat merubah routing secara dinamis, dipilih mekanisme routing
yang ditentukan oleh kondisi jaringan dan elemen-elemen jaringan (router). Selain
itu, proses routing juga harus dilakukan untuk setiap datagram, tidak hanya pada
permulaan hubungan. Marilah kita perhatikan struktur header dari protokol IP
beserta fungsinya masing-masing.
Setiap protokol memiliki bit-bit ekstra diluar informasi/data yang dibawanya.
Selain informasi, bit-bit ini juga berfungsi sebagai alat kontrol. Dari sisi efisiensi,
semakin besar jumlah bit ekstra ini, maka semakin kecil efisiensi komunikasi yang

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


berjalan. Sebaliknya semakin kecil jumlah bit ekstra ini, semakin tinggi efisiensi
komunikasi yang berjalan. Disinilah dilakukan trade-off antara keandalan datagram
dan efisiensi. Sebagai contoh, agar datagram IP dapat menemukan tujuannya,
diperlukan informasi tambahan yang harus dicantumkan pada header ini. Struktur
header datagram protokol IP dapat dilihat pada gambar berikut.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

Header
Version Type of Service Total Length of Datagram
Length

Identification Flags Fragment Offset

Time to Live Protocol Header Checksum

Source Address

Destination Address

OPTIONS
Strict Source Route
Loose Source Route
Record Route
Timestamp
Security
Padding

DATA

Format datagram IP

Setiap paket IP membawa data yang terdiri atas :

§ Version, yaitu versi dari protokol IP yang dipakai.

§ Header Length, berisi panjang dari header paket IP dalam hitungan 32 bit word.

§ Type of Service, berisi kualitas service yang dapat mempengaruhi cara


penanganan paket IP.

§ Total length Of Datagram, panjang IP datagram total dalam ukuran byte.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


§ Identification, Flags, dan Fragment Offset, berisi data yang berhubungan
fragmentasi paket.

§ Time to Live, berisi jumlah router/hop maksimal yang dilewati paket IP


(datagram). Nilai maksimum field ini adalah 255. Setiap kali paket IP lewat satu
router, isi dari field ini dikurangi satu. Jika TTL telah habis dan paket tetap belum
sampai ke tujuan, paket ini akan dibuang dan router terakhir akan mengirimkan
paket ICMP time exceeded. Hal ini dilakukan untuk mencegah paket IP terus
menerus berada dalam network.

§ Protocol, mengandung angka yang mengidentifikasikan protokol layer atas


pengguna isi data dari paket IP ini.

§ Header Checksum, berisi nilai checksum yang dihitung dari jumlah seluruh field
dari header paket IP. Sebelum dikirimkan, protokol IP terlebih dahulu
menghitung checksum dari header paket IP tersebut untuk nantinya dihitung
kembali di sisi penerima. Jika terjadi perbedaan, maka paket ini dianggap rusak
dan dibuang.

§ Source Address dan Destination Address, isi dari masing-masing field ini cukup
jelas, yakni alamat pengirim dan alamat penerima dari datagram. Masing-masing
field terdiri dari 32 bit, sesuai panjang IP Address yang digunakan dalam
Internet. Destination address merupakan field yang akan dibaca oleh setiap
router untuk menentukan kemana paket IP tersebut akan diteruskan untuk
mencapai destination address tersebut. Struktur IP Address ini secara lebih jelas
akan diuraikan pada bagian selanjutnya.

q Pembagian Kelas IP Address

Pengertian
IP address digunakan sebagai alamat dalam hubungan antar host di internet
sehingga merupakan sebuah sistem komunikasi yang universal karena merupakan
metode pengalamatan yang telah diterima di seluruh dunia. Dengan menentukan IP
address berarti kita telah memberikan identitas yang universal bagi setiap interadce
komputer. Jika suatu komputer memiliki lebih dari satu interface (misalkan

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


menggunakan dua ethernet) maka kita harus memberi dua IP address untuk
komputer tersebut masing-masing untuk setiap interfacenya.

q Format Penulisan IP Address

IP address terdiri dari bilangan biner 32 bit yang dipisahkan oleh tanda titik
setiap 8 bitnya. Tiap 8 bit ini disebut sebagai oktet. Bentuk IP address dapat
dituliskan sebagai berikut :
xxxxxxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx
Jadi IP address ini mempunyai range dari
00000000.00000000.00000000.00000000 sampai
11111111.11111111.11111111.11111111. Notasi IP address dengan bilangan biner
seperti ini susah untuk digunakan, sehingga sering ditulis dalam 4 bilangan desimal
yang masing-masing dipisahkan oleh 4 buah titik yang lebih dikenal dengan “notasi
desimal bertitik”. Setiap bilangan desimal merupakan nilai dari satu oktet IP
address. Contoh hubungan suatu IP address dalam format biner dan desimal :

Desimal 167 205 206 100


Biner 10100111 11001101 11001110 01100100

Format IP Address

q Pembagian Kelas IP Address

Jumlah IP address yang tersedia secara teoritis adalah 255x255x255x255


atau sekitar 4 milyar lebih yang harus dibagikan ke seluruh pengguna jaringan
internet di seluruh dunia. Pembagian kelas-kelas ini ditujukan untuk mempermudah
alokasi IP Address, baik untuk host/jaringan tertentu atau untuk keperluan tertentu.

IP Address dapat dipisahkan menjadi 2 bagian, yakni bagian network (net ID)
dan bagian host (host ID). Net ID berperan dalam identifikasi suatu network dari
network yang lain, sedangkan host ID berperan untuk identifikasi host dalam suatu
network. Jadi, seluruh host yang tersambung dalam jaringan yang sama memiliki net
ID yang sama. Sebagian dari bit-bit bagian awal dari IP Address merupakan network

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


bit/network number, sedangkan sisanya untuk host. Garis pemisah antara bagian
network dan host tidak tetap, bergantung kepada kelas network. IP address dibagi
ke dalam lima kelas, yaitu kelas A, kelas B, kelas C, kelas D dan kelas E.
Perbedaan tiap kelas adalah pada ukuran dan jumlahnya. Contohnya IP kelas A
dipakai oleh sedikit jaringan namun jumlah host yang dapat ditampung oleh tiap
jaringan sangat besar. Kelas D dan E tidak digunakan secara umum, kelas D
digunakan bagi jaringan multicast dan kelas E untuk keprluan eksperimental.
Perangkat lunak Internet Protocol menentukan pembagian jenis kelas ini dengan
menguji beberapa bit pertama dari IP Address. Penentuan kelas ini dilakukan
dengan cara berikut :

Bit pertama IP address kelas A adalah 0, dengan panjang net ID 8 bit dan
panjang host ID 24 bit. Jadi byte pertama IP address kelas A mempunyai range dari
0-127. Jadi pada kelas A terdapat 127 network dengan tiap network dapat
menampung sekitar 16 juta host (255x255x255). IP address kelas A diberikan untuk
jaringan dengan jumlah host yang sangat besar, IP kelas ini dapat dilukiskan pada
gambar berikut ini:

0-127 0-255 0-255 0-255


0nnnnnnn hhhhhhhh hhhhhhhh hhhhhhhh
Bit-bit Network Bit-bit Host

IP address kelas A

§ Dua bit IP address kelas B selalu diset 10 sehingga byte pertamanya selalu
bernilai antara 128-191. Network ID adalah 16 bit pertama dan 16 bit sisanya
adalah host ID sehingga kalau ada komputer mempunyai IP address
192.168.26.161, network ID = 192.168 dan host ID = 26.161. Pada. IP address
kelas B ini mempunyai range IP dari 128.0.xxx.xxx sampai 191.155.xxx.xxx,
yakni berjumlah 65.255 network dengan jumlah host tiap network 255 x 255 host
atau sekitar 65 ribu host.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


128-191 0-255 0-255 0-255
10nnnnnn nnnnnnnn hhhhhhhh hhhhhhhh
Bit-bit Network Bit-bit Host

IP address kelas B

§ IP address kelas C mulanya digunakan untuk jaringan berukuran kecil seperti


LAN. Tiga bit pertama IP address kelas C selalu diset 111. Network ID terdiri dari
24 bit dan host ID 8 bit sisanya sehingga dapat terbentuk sekitar 2 juta network
dengan masing-masing network memiliki 256 host.

192-223 0-255 0-255 0-255


110nnnnn nnnnnnnn nnnnnnnn hhhhhhhh
Bit-bit Network Bit-bit Host

IP address kelas C

§ IP address kelas D digunakan untuk keperluan multicasting. 4 bit pertama IP


address kelas D selalu diset 1110 sehingga byte pertamanya berkisar antara
224-247, sedangkan bit-bit berikutnya diatur sesuai keperluan multicast group
yang menggunakan IP address ini. Dalam multicasting tidak dikenal istilah
network ID dan host ID.

§ IP address kelas E tidak diperuntukkan untuk keperluan umum. 4 bit pertama IP


address kelas ini diset 1111 sehingga byte pertamanya berkisar antara 248-255.

Sebagai tambahan dikenal juga istilah Network Prefix, yang digunakan untuk
IP address yang menunjuk bagian jaringan.Penulisan network prefix adalah dengan
tanda slash “/” yang diikuti angka yang menunjukkan panjang network prefix ini
dalam bit. Misal untuk menunjuk satu network kelas B 192.168.xxx.xxx digunakan
penulisan 192.168/16. Angka 16 ini merupakan panjang bit untuk network prefix
kelas B.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Address Khusus
Selain address yang dipergunakan untuk pengenal host, ada beberapa jenis
address yang digunakan untuk keperluan khusus dan tidak boleh digunakan untuk
pengenal host. Address tersebut adalah:
Network Address. Address ini digunakan untuk mengenali suatu network pada
jaringan Internet. Misalkan untuk host dengan IP Address kelas B 192.168.9.35.
Tanpa memakai subnet (akan diterangkan kemudian), network address dari host ini
adalah 192.168.0.0. Address ini didapat dengan membuat seluruh bit host pada 2
segmen terakhir menjadi 0. Tujuannya adalah untuk menyederhanakan informasi
routing pada Internet. Router cukup melihat network address (192.168) untuk
menentukan ke router mana datagram tersebut harus dikirimkan. Analoginya mirip
dengan dalam proses pengantaran surat, petugas penyortir pada kantor pos cukup
melihat kota tujuan pada alamat surat (tidak perlu membaca selutuh alamat) untuk
menentukan jalur mana yang harus ditempuh surat tersebut.
Broadcast Address. Address ini digunakan untuk mengirim/menerima informasi
yang harus diketahui oleh seluruh host yang ada pada suatu network. Seperti
diketahui, setiap datagram IP memiliki header alamat tujuan berupa IP Address dari
host yang akan dituju oleh datagram tersebut. Dengan adanya alamat ini, maka
hanya host tujuan saja yang memproses datagram tersebut, sedangkan host lain
akan mengabaikannya. Bagaimana jika suatu host ingin mengirim datagram kepada
seluruh host yang ada pada networknya ? Tidak efisien jika ia harus membuat
replikasi datagram sebanyak jumlah host tujuan. Pemakaian bandwidth akan
meningkat dan beban kerja host pengirim bertambah, padahal isi datagram-
datagram tersebut sama. Oleh karena itu, dibuat konsep broadcast address. Host
cukup mengirim ke alamat broadcast, maka seluruh host yang ada pada network
akan menerima datagram tersebut. Konsekuensinya, seluruh host pada network
yang sama harus memiliki broadcast address yang sama dan address tersebut tidak
boleh digunakan sebagai IP Address untuk host tertentu.
Jadi, sebenarnya setiap host memiliki 2 address untuk menerima datagram :
pertama adalah IP Addressnya yang bersifat unik dan kedua adalah broadcast
address pada network tempat host tersebut berada.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Broadcast address diperoleh dengan membuat bit-bit host pada IP Address menjadi
1. Jadi, untuk host dengan IP address 192.168.9.35 atau 192.168.240.2, broadcast
addressnya adalah 192.168.255.255 (2 segmen terakhir dari IP Address tersebut
dibuat berharga 11111111.11111111, sehingga secara desimal terbaca 255.255).
Jenis informasi yang dibroadcast biasanya adalah informasi routing.
Multicast Address. Kelas address A, B dan C adalah address yang digunakan
untuk komunikasi antar host, yang menggunakan datagram-datagram unicast.
Artinya, datagram/paket memiliki address tujuan berupa satu host tertentu. Hanya
host yang memiliki IP address sama dengan destination address pada datagram
yang akan menerima datagram tersebut, sedangkan host lain akan
mengabaikannya. Jika datagram ditujukan untuk seluruh host pada suatu jaringan,
maka field address tujuan ini akan berisi alamat broadcast dari jaringan yang
bersangkutan. Dari dua mode pengiriman ini (unicast dan broadcast), muncul pula
mode ke tiga. Diperlukan suatu mode khusus jika suatu host ingin berkomunikasi
dengan beberapa host sekaligus (host group), dengan hanya mengirimkan satu
datagram saja. Namun berbeda dengan mode broadcast, hanya host-host yang
tergabung dalam suatu group saja yang akan menerima datagram ini, sedangkan
host lain tidak akan terpengaruh. Oleh karena itu, dikenalkan konsep multicast.
Pada konsep ini, setiap group yang menjalankan aplikasi bersama mendapatkan
satu multicast address. Struktur kelas multicast address dapat dilihat pada Gambar
berikut.

224-239 0-255 0-255 0-255


1110xxxx xxxxxxxx xxxxxxxx xxxxxxxx
Struktur IP Address Kelas Multicast Address
Untuk keperluan multicast, sejumlah IP Address dialokasikan sebagai
multicast address. Jika struktur IP Address mengikuti bentuk
1110xxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx (bentuk desimal 224.0.0.0 sampai
239.255.255.255), maka IP Address merupakan multicast address. Alokasi ini
ditujukan untuk keperluan group, bukan untuk host seperti pada kelas A, B dan C.
Anggota group adalah host-host yang ingin bergabung dalam group tersebut.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Anggota ini juga tidak terbatas pada jaringan di satu subnet, namun bisa mencapai
seluruh dunia. Karena menyerupai suatu backbone, maka jaringan muticast ini
dikenal pula sebagai Multicast Backbone (Mbone).

q Aturan Dasar Pemilihan network ID dan host ID


Berikut adalah aturan-aturan dasar dalam menentukan network ID dan host
ID yang digunakan :

§ Network ID tidak boleh sama dengan 127

Network ID 127 secara default digunakan sebagai alamat loopback yakni IP


address yang digunakan oleh suatu komputer untuk menunjuk dirinya sendiri.

§ Network ID dan host ID tidak boleh sama dengan 255

Network ID atau host ID 255 akan diartikan sebagai alamat broadcast. ID ini
merupakan alamat yang mewakili seluruh jaringan.

§ Network ID dan host ID tidak boleh sama dengan 0

IP address dengan host ID 0 diartikan sebagai alamat network. Alamat network


digunakan untuk menunjuk suatu jaringn bukan suatu host.

§ Host ID harus unik dalam suatu network.

Dalam suatu network tidak boleh ada dua host yang memiliki host ID yang sama.

q Subnetting

Untuk beberapa alasan yang menyangkut efisiensi IP Address, mengatasi


masalah topologi network dan organisasi, network administrator biasanya
melakukan subnetting. Esensi dari subnetting adalah “memindahkan” garis pemisah
antara bagian network dan bagian host dari suatu IP Address. Beberapa bit dari
bagian host dialokasikan menjadi bit tambahan pada bagian network. Address satu
network menurut struktur baku dipecah menjadi beberapa subnetwork. Cara ini
menciptakan sejumlah network tambahan, tetapi mengurangi jumlah maksimum
host yang ada dalam tiap network tersebut.
Subnetting juga dilakukan untuk mengatasi perbedaan hardware dan media
fisik yang digunakan dalam suatu network. Router IP dapat mengintegrasikan

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


berbagai network dengan media fisik yang berbeda hanya jika setiap network
memiliki address network yang unik. Selain itu, dengan subnetting, seorang Network
Administrator dapat mendelegasikan pengaturan host address seluruh departemen
dari suatu perusahaan besar kepada setiap departemen, untuk memudahkannya
dalam mengatur keseluruhan network.
Suatu subnet didefinisikan dengan mengimplementasikan masking bit
(subnet mask ) kepada IP Address. Struktur subnet mask sama dengan struktur IP
Address, yakni terdiri dari 32 bit yang dibagi atas 4 segmen. Bit-bit dari IP Address
yang “ditutupi” (masking) oleh bit-bit subnet mask yang aktif dan bersesuaian akan
diinterpretasikan sebagai network bit. Bit 1 pada subnet mask berarti mengaktifkan
masking ( on ), sedangkan bit 0 tidak aktif ( off ). Sebagai contoh kasus, mari kita
ambil satu IP Address kelas A dengan nomor 44.132.1.20. Ilustrasinya dapat dilihat
Tabel berikut :
44 132 1 20
00101100 10000100 00000001 00010100
IP Address

255 255 0 0
11111111 11111111 00000000 00000000
Subnet Mask

44 132 0 0
00101100 10000100 00000000 00000000
Network Address

44 132 255 255


00101100 10000100 11111111 11111111
Broadcast Address

Subnetting 16 bit pada IP Address kelas A


Dengan aturan standard, nomor network IP Address ini adalah 44 dan nomor
host adalah 132.1.20. Network tersebut dapat menampung maksimum lebih dari 16
juta host yang terhubung langsung. Misalkan pada address ini akan akan
diimplementasikan subnet mask sebanyak 16 bit 255.255.0.0.( Hexa = FF.FF.00.00
atau Biner = 11111111.11111111.00000000.00000000 ). Perhatikan bahwa pada 16
bit pertama dari subnet mask tersebut berharga 1, sedangkan 16 bit berikutnya 0.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Dengan demikian, 16 bit pertama dari suatu IP Address yang dikenakan subnet
mask tersebut akan dianggap sebagai network bit. Nomor network akan berubah
menjadi 44.132 dan nomor host menjadi 1.20. Kapasitas maksimum host yang
langsung terhubung pada network menjadi sekitar 65 ribu host.
Subnet mask di atas identik dengan standard IP Address kelas B. Dengan
menerapkan subnet mask tersebut pada satu network kelas A, dapat dibuat 256
network baru dengan kapasitas masing-masing subnet setara network kelas B.
Penerapan subnet yang lebih jauh seperti 255.255.255.0 ( 24 bit ) pada kelas A
akan menghasilkan jumlah network yang lebih besar ( lebih dari 65 ribu network )
dengan kapasitas masing-masing subnet sebesar 256 host. Network kelas C juga
dapat dibagi-bagi lagi menjadi beberapa subnet dengan menerapkan subnet mask
yang lebih tinggi seperti untuk 25 bit (255.255.255.128), 26 bit (255.255.255.192),
27 bit ( 255.255.255.224) dan seterusnya.
Subnetting dilakukan pada saat konfigurasi interface. Penerapan subnet
mask pada IP Address akan mendefinisikan 2 buah address baru, yakni Network
Address dan Broadcast Address. Network address didefinisikan dengan menset
seluruh bit host berharga 0, sedangkan broadcast address dengan menset bit host
berharga 1. Seperti yang telah dijelasakan pada bagian sebelumnya, network
address adalah alamat network yang berguna pada informasi routing. Suatu host
yang tidak perlu mengetahui address seluruh host yang ada pada network yang
lain. Informasi yang dibutuhkannya hanyalah address dari network yang akan
dihubungi serta gateway untuk mencapai network tersebut. Ilustrasi mengenai
subnetting, network address dan broadcast address dapat dilihat pada Tabel di
bawah. Dari tabel dapat disimpulkan bagaimana nomor network standard dari suatu
IP Address diubah menjadi nomor subnet / subnet address melalui subnetting.

IP Address Network Subnet Mask Interpretasi Broadcast


Address Address
Standard
44.132.1.20 44.0.0.0 255.255.0.0(16 Host 1.20 pada 44.132.255.255
bit) subnet
44.132.0.0
81.150.2.3 81.0.0.0 255.255.255.0 Host 3 pada 81.50.2.255
(24 bit) subnet

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


81.50.2.0
192.168.2.100 192.168.0.0 255.255.255.12 Host 100 pada 192.168.2.127
8 (25 bit) Subnet
192.168.2.0
192.168.2. 130 192.168.0.0 255.255.255.19 Host 130 pada 192.168.2.191
2 (26 bit) subnet
192.168.2.128
Beberapa kombinasi IP Address, Netmask dan network number

Subnetting hanya berlaku pada network lokal. Bagi network di luar network
lokal, nomor network yang dikenali tetap nomor network standard menurut kelas IP
Address.

Desain LAN

q 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

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


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.

q 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, sebuah kantor memasang jaringan internet via V-SAT
mendapat alokasi IP addres dari INTERNIC (http://www.internic.net) untuk kelas B
yaitu 192.168.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 kantor tersebut 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-

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


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 192.168.1.xxx dialokasikan untuk cadangan

§ IP address 192.168.2.xxx dialokasikan untuk departemen A

§ IP address 192.168.3.xxx dialokasikan untuk departemen B

§ Ip address 192.168.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 192.168.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 192.168.9.0 sampai 192.168.9.255.
Dalam pembagian ini, seorang network administrator di suatu lembaga
mendapat alokasi IP Address 192.168.9.xxx. Alokasi ini setara dengan satu buah
kelas C karena sama-sama memiliki kapasitas 256 IP Address, yakni dari
192.168.9.0 sampai dengan 192.168.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 :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Jumlah bit host dari subnet 192.168.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 192.168.9.(0-127), sedangkan subnet
kedua akan menggunakan IP Address 192.168.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 :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


167 205 9 xxx
10100111 11001101 00001001 xxxxxxxx
11111111 11111111 11111111 11100000 Byte Akhir

10100111 11001101 00001001 000xxxxx 0-31


10100111 11001101 00001001 001xxxxx 32-63
10100111 11001101 00001001 010xxxxx 64-95
10100111 11001101 00001001 011xxxxx 96-127
10100111 11001101 00001001 100xxxxx 128-159
10100111 11001101 00001001 101xxxxx 160-191
10100111 11001101 00001001 110xxxxx 192-223
10100111 11001101 00001001 111xxxxx 224-255

Studi Kasus :
Anda sebagai penanggungjawab jaringan di suatu kantor yang mempunyai 3 buah
departemen mendapat alokasi IP dari suatu ISP (Internet Service Provider)
192.168.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 :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


192.168.9.10000000
192.168.9.10010000
192.168.9.10100000
192.168.9.10110000
§ Terdapat broadcast address sbb:
192.168.9.10001111 = 192.168.9.143
192.168.9.10011111 = 192.168.9.159
192.168.9.10101111 = 192.168.9.175
192.168.9.10111111 = 192.168.9.191

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Sejarah Linux

Linux pada awalnya dibuat oleh seorang mahasiswa Finlandia yang bernama
Linus Torvalds. Dulunya Linux merupakan proyek hobi yang diinspirasikan dari
Minix, yaitu sistem UNIX kecil yang dikembangkan oleh Andrew Tanenbaum. Linux
versi 0.01 dikerjakan sekitar bulan Agustus 1991. Kemudian pada tanggal 5 Oktober
1991, Linus mengumumkan versi resmi Linux, yaitu versi 0.02 yang hanya dapat
menjalankan shell bash (GNU Bourne Again Shell) dan gcc (GNU C Compiler).
Saat ini Linux adalah sistem UNIX yang sangat lengkap, bisa digunakan
untuk jaringan, pengembangan software dan bahkan untuk pekerjaan sehari-hari.
Linux sekarang merupakan alternatif sistem operasi yang jauh lebih murah jika
dibandingkan dengan sistem operasi komersial (misalnya Windows
9.x/NT/2000/ME). Linux mempunyai perkembangan yang sangat cepat. Hal ini dapat
dimungkinkan karena Linux dikembangkan oleh beragam kelompok orang.
Keragaman ini termasuk tingkat pengetahuan, pengalaman serta geografis. Agar
kelompok ini dapat berkomunikasi dengan cepat dan efisien, internet menjadi pilihan
yang sangat tepat.
Karena kernel Linux dikembangkan dengan usaha yang independent, banyak
aplikasi yang tersedia, sebagai contoh, C Compiler menggunakan gcc dari Free
Software Foundation GNU’s Project. Compiler ini banyak digunakan
pada lingkungan Hewlett-Packard dan Sun.
Sekarang ini, banyak aplikasi Linux yang dapat digunakan untuk keperluan
kantor seperti untuk spreadsheet, word processor, database dan program editor
grafis yang memiliki fungsi dan tampilan seperti Microsoft Office, yaitu Star Office.
Selain itu, juga sudah tersedia versi Corel untuk Linux dan aplikasi seperti Matlab
yang pada Linux dikenal sebagai Scilab.
Linux bisa didapatkan dalam berbagai distribusi (sering disebut Distro). Distro
adalah bundel dari kernel Linux, beserta sistem dasar linux, program instalasi, tools

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


basic, dan program-program lain yang bermanfaat sesuai dengan tujuan pembuatan
distro. Ada banyak sekali distro Linux, diantaranya :

q RedHat
Distribusi yang paling populer, minimal di Indonesia. RedHat merupakan distribusi
pertama yang instalasi dan pengoperasiannya mudah.

q Debian
Distribusi yang mengutamakan kestabilan dan kehandalan, meskipun
mengorbankan aspek kemudahan dan kemutakhiran program. Debian
menggunakan .deb dalam paket instalasi programnya.

q Slackware
Merupakan distribusi yang pernah merajai di dunia Linux. Hampir semua
dokumentasi Linux disusun berdasarkan Slackware. Dua hal penting dari Slackware
adalah bahwa semua isinya (kernel, library ataupun aplikasinya) adalah yang sudah
teruji. Sehingga mungkin agak tua tapi yang pasti stabil. Yang kedua karena dia
menganjurkan untuk menginstall dari source sehingga setiap program yang kita
install teroptimasi dengan sistem kita. Ini alasannya dia tidak mau untuk
menggunakan binary RPM dan sampai Slackware 4.0, ia tetap menggunakan libc5
bukan glibc2 seperti yang lain.

q SuSE
Distribusi yang sangat terkenal dengan YaST (Yet another Setup Tools) untuk
mengkonfigurasi sistem. SuSE merupakan distribusi pertama dimana instalasinya
dapat menggunakan bahasa Indonesia.

q Mandrake
Merupakan varian distro RedHat yang dioptimasi untuk pentium. Kalau komputer
kita menggunakanpentium ke atas, umumnya Linux bisa jalan lebih cepat dengan
Mandrake.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q WinLinux
Distro yang dirancang untuk diinstall di atas partisi DOS (WIndows). Jadi untuk
menjalankannya bisa di-klik dari Windows. WinLinux dibuat seakan-akan merupakan
suatu program aplikasi under Windows.

Masih banyak lagi distro linux yang lain, diatas hanyalah sebagian distro yang
popular dan sering digunakan.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Hardware komputer pada hakekatnya tidak dapat berfungsi tanpa adanya
Software yang mengaturnya. Software yang paling dekat ke Hardware adalah
"Sistem Operasi". Suatu jenis prosessor tentu dapat saja di-"atur" oleh berbagai
macam Sistem-Operasi pada saat yang berbeda, asalkan ada orang yang mau
menulis program Sistem-Operasi tersebut.
Walaupun pada saat Linux ditulis prosessor Intel 80386 telah dipasarkan
dengan Sistem-Operasi DOS, namun DOS belum menggunakan 80386 secara
optimal. Intel 80386 sebenarnya dirancang sebagai prosessor yang mampu
melakukan "multi-tasking" atau "multi-program" namun DOS hanya mampu
melakukan "single-tasking". Linux ketika dirancang memanfaatkan 80386 seoptimal
mungkin.

Di sini akan dijelaskan beberapa kelebihan dari sistem operasi Linux/UNIX


dibandingkan dengan dengan sistem operasi yang lain. Dan berikut ini adalah
beberapa fakta dari hal-hal yang menguntungkan dengan menggunakan program
dan file-file Linux/UNIX :

q Pada dasarnya semua data tersimpan di dalam harddisk walau ada beberapa
kondisi dimana data tersimpan di disket. Linux/UNIX memberikan beberapa
proses spesial dimana terminal, printer dan device hardware lainnya dapat
diakses seperti kita mengakses file yang tersimpan dalam harddisk atau disket.
q Ketika program dijalankan, program tersebut dijalankan dari harddisk ke dalam
RAM dan setelah dijalankan akan dinamakan sebagai proses.
q Linux/UNIX menyediakan servis untuk membuat, memodifikasi program, proses
dan file.
q Linux/UNIX mendukung struktur file yang bersifat hirarki.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Linux/UNIX adalah salah satu sistem operasi yang termasuk ke dalam kelas
sistem operasi yang dapat melakukan multitasking. Multitasking sendiri adalah
keadaan dimana suatu sistem operasi dapat melakukan banyak kerjaan pada
saat yang bersamaan.
q Selain multitasking, Linux/UNIX juga dapat mendukung multiuser. Yaitu sistem
operasi yang pada saat bersamaan dapat digunakan oleh lebih dari satu user
yang masuk ke dalam sistem. Bahkan untuk Linux juga mendukung untuk
multiconsole dimana pada saat bersamaan di depan komputer langsung tanpa
harus melalui jaringan dan memungkinkan lebih dari satu user masuk ke dakam
sistem.

APLIKASI LINUX

q Sebagai Server
web server, mail server, ftp server, dll.
q Sebagai Client / Workstation pengguna
Aplikasi perkantoran (Star office, yang mirip Microsoft office)
Gimp (image tool seperti Photoshop)
q Koleksi aplikasi di http://freshmeat.net, http://www.sourceforge.net, dll

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


INSTALASI LINUX SuSE 9.1
Dalam Instalasi server ini penulis menggunakan Operating System Linux
S.u.S.E versi 9.1 . Semua instalasi yang dilakukan disini melalui media CD-ROM
bukan dari Floppy Disk.

Persiapan hardware sebelum instalasi :


1. Processor Minimal Intel Pentium II 800 Mhz
2. Memory Minimal 64 Mb
3. VGA Card
4. Monitor 14”
5. CD ROM drive 52x
6. CD instalasi Linux SuSE 9.1

Proses instalasi :
q Booting

Pada saat komputer baru


dihidupkan, masuklah ke BIOS, atur
urutan booting awal dimulai dari
CD-ROM, setelah itu simpan dan
keluar dari menu BIOS. Masukkan
CD 1 Linux SuSE 9.1 kedalam CD-
ROM. Tunggu sejenak sampai
komputer membaca proses boot
dari CD-ROM dan masuk ke
tampilan pembuka Instalasi Linux
SuSE 9.1 . Perhatikan Gambar 1

Gambar 1

Setelah menu pembuka selesai,


instalasi akan dilanjutkan ke menu
pemilihan booting yang dimulai dari
CD Linux SuSE 9.1 seperti pada
gambar disamping, Tekan arah
panah bawah untuk memilih
Instalation, kita memilih pilihan ini
dikarenakan kita akan menginstal
Linux didalam komputer yang masih
belum meiliki Sistem Operasi sama
sekali. Perhatikan Gambar 2.

Gambar 2

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar 3a Gambar 3b

Setelah memilih menu Instalation, instalasi akan dilanjutkan ke proses Loading


seperti Gambar 3a, tekan F2 untuk melihat proses yang dilakukan Linux pada saat
melakukan booting awal sistem operasi, Gambar 3b adalah proses yang sedang
dilakukan linux pada saat awal booting dalam mode text.

q Pilihan Bahasa

Setelah proses loading selesai,


instalasi akan dilanjutkan pada
pemilihan bahasa yang akan
digunakan, gunakan bahasa English
US lalu klik Accept seperti tombol
yang dilingkari merah pada Gambar 4.

Gambar 4

q Menu Instalasi

Saat anda selesai mengklik tombol


accept, instalasi aka dilanjutkan ke dalam
Menu Instalation, disini kita akan
mengatur dari awal sampai proses
instalasi selesai, Perhatikan Gambar 5.

Gambar 5

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Section System

Pada gambar disamping menu


yang pertama kali adalah Menu
System, dalam menu ini hanya
menjelaskan secara detail
tentang perangkat-perangkat
yang terpasang pada computer
kita, seperti processor, memory,
dll. Perhatikan Gambar 6.

Gambar 6
q Section Mode

Gambar 7a Gambar 7b

Pada tahap menu instalasi sesuai Gambar 7a diatas adalah Menu Mode. Setelah anda
mengklik Menu Mode, anda akan diberikan pilihan mode instalasi seperti Gambar 7b.
New Instalation adalah pemilihan instalasi yang memungkinkan bahwa computer yang
diinstal belum memiliki sistem operasi, Update An Existing System adalah pilihan yang
memungkinkan kita untuk memperbaharui sistem operasi Linux yang lama. Repair
Installed System adalah pilihan yang memungkinkan kita untuk memperbaiki sistem
operasi Linux yang sedang bermasalah. Boot Installed System adalah pilihan yang
memungkinkan kita untuk melakukan proses booting melalui CD-Rom apabila Linux gagal
melakukan proses booting melalui Hardsik. Dalam hal ini penulis memilih New Instalaion
dikarenakan computer yang diinstall masih baru dan belum memiliki system operasi sama
sekali. Setelah itu kliklah tombol Ok.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Section Keyboard Layout

Menu instalasi berikutnya adalah


Menu Keyboard Layout, dalam menu
ini anda bisa memilih jenis keyboard
yang anda pakai, secara default linux
telah mengenali keyboard yang anda
pakai.Perhatikan Gambar 8.

Gambar 8

Disamping ini adalah Layout


keyboard yang akan digunakan,
penulis menyarankan agar
menggunakan layout English
US.Setelah itu klik tombol Accept
seperti lingkaran merah pada
gambar. Perhatikan Gambar 9.

q Section Mouse
Gambar 9

Setelah menu keyboard selesai,


menu berikutnya adalah Menu
Mouse. Seperti halnya keyboard,
dalam menu ini kita memilih jenis
mouse yang akan digunakan,
Perhatikan Gambar 10.

Gambar 10

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar disamping kanan adalah
daftar jenis-jenis mouse yang
terdapat dalam Linux, setelah anda
memilih jenis mouse dan melakukan
Test mouse anda, klik tombol Accept.
Perhatikan Gambar 11.

q Section Partitioning
Gambar 11

Setelah Menu Mouse selesai,


Menu Instalasi berikutnya adalah
Menu Partitioning, Perhatikan
Gambar 12.

Gambar 12

Setelah anda mengklik Menu Partitioning,


maka anda aka mendapatkan menu
dengan 3 buah option pilihan yaitu : Accept
Proposal as-is, Base partition setup on this
proposal, Create Custom Partition Setup.
Option pertama menjelaskan agar linux
membuat partisi secara automatis, option
kedua menjelaskan agar linux membuat
partisi dengan konfirmasi dari user, option
ketiga adalah membuat partisi sesuai
dengan kemauan anda, pilih option ketiga
dan klik Next. Perhatikan Gambar 12.

Gambar 13

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Pada gambar disamping, terdapat dua
buah pilihan. Pilihan ini digunakan
apabila dalam computer kita terdapat
lebih dari satu buah hardisk yang
terpasang, saran penulis adalah
menggunakan pilihan kedua yaitu
Custom Partitioning – For Experts.
Setelah memilih pilihan tersebut
lanjutkan dengan mengklik tombol
Next. Perhatikan Gambar 14.

Gambar 14

Perhatikan Gambar 14. Pada kotak


dijelaskan secara sekilas tentang
Kapasitas hardisk, Type Hardisk,
Start dan End Cylinder,dll. Pada
hardisk ini kita akan membuat
partisi yang dibutuhkan Linux. Klik
tombol Create untuk membuat
pertisi Linux.

q Partisi Boot Gambar 15

Partisi boot digunakan sebagai partisi khusus yang dibuat untuk penyimpanan file-
file yang akan diloading pada saat linux pertama kali dijalankan.

Setelah anda mengklik tombol


Create maka akan muncul dialog
box seperti gambar disamping ini,
Anda akan diberikan pertanyaan
“Which type of partition do you
want to create ?”. Pilihan yang
diberikan adalah Primary Partition
dan Extended Partition. Pilihlah
Primary Partition lalu klik tombol
Ok.Perhatikan Gambar 15.

Gambar 15

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Perhatikan dengan seksama gambar
disamping, yaitu File System, Mount
Point, End. Pada File System
pilihlah Ext2, Sedangkan Mount
Point pililah /boot. Lalu pada kotak
End isilah dengan +15M. Lalu klik
Ok. File System adalah jenis system
file yang dibuat dalam sebuah partisi.
Mount Point adalah nama partisi
yang akan dibuat, Sedangkan End
adalah besar partisi yang akan di
buat. Perhatikan Gambar 16.

Gambar 16

Gambar 17

Pada gambar diatas, terdapat partisi boot seperti pada gambar yang di lingkari merah. Klik pada
bagian /dev/hda untuk melanjutkan pembuatan partisi Linux Swap lalu klik tombol create.
Perhatikan Gambar 17.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Partisi Swap
Partisi Swap digunakan sebagai pengganti memory, partisi ini berguna untuk
komputer yang memiliki kapasitas memory yang rendah. Untuk menghindari crash
maka linux menyimpan sebagian isi dari memory didalam hardisk.

Pada /dev/hda Klik tombol create


untuk membuat partisi Linux
Swap. Apabila muncul dialog box
“Which type of partition do you
want to create ?”, Pilihlah Primary
Partition. Perhatikan Gambar 18.

Gambar 18

Gambar 19

Perhatikan dengan baik pada File System dan End, Ubah File System menjadi
Swap, Sedangkan pada kolom End isi dengan +256M, Setelah semua sudah
benar klik kembali tombol Ok. Penulis menyarankan agar kolom End diberikan
angka sebesar dua kali dari jumlah memory, pada contoh ini penulis menggunakan
memory sebesar 128 MB, jadi dua kali dari jumlah memory adalah 256 MB. Angka
256 itulah yang diisikan pada kolom End. Perhatikan Gambar 19.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Partisi Home
Partisi Home digunakan sebagai tempat home direktori user yang berada dalam
mesin server anda.

Pada list partisi yang sudah dibuat


pilihlah /dev/hda lalu kliklah tombol
create untuk membuat partisi /home.
Parhatikan Gambar 20.

Gambar 20

Setelah anda mengklik tombol


create maka akan tampil dialog box
dengan pertanyaan “Which type of
partition do you want to create
?”, Pilihlah Primary Partition.
Setelah anda memilih Primary
Partition kliklah tombol Ok untuk
melanjutkan pembuatan partisi.
Perhatikan Gambar 21.

Gambar 21
Perhatikan dengan seksama gambar
disamping, yaitu File System, Mount
Point, End. Pada File System pilihlah
Ext2, Sedangkan Mount Point pililah
/home. Lalu pada kotak End isilah
dengan +2G. Lalu klik Ok. File System
adalah jenis system file yang dibuat
dalam sebuah partisi. Mount Point
adalah nama partisi yang akan dibuat,
Sedangkan End adalah besar partisi
yang akan di buat untuk partisi Home
User. Perhatikan Gambar 22.

Gambar 22

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Partisi Root

Perhatikan gambar disamping ini.


Sekarang partisi yang akan dibuat
adalah partisi /root. Pada
/dev/hda kliklah tombol create.
Perhatikan Gambar 23.

Gambar 23

Setelah anda mengklik tombol


create maka akan tampil dialog box
dengan pertanyaan “Which type of
partition do you want to create
?”, Pilihlah Primary Partition.
Setelah anda memilih Primary
Partition kliklah tombol Ok untuk
melanjutkan pembuatan partisi.
Perhatikan Gambar 24.

Gambar 24

Setelah anda mengklik Ok. Akan


muncul menu pada gambar
disamping. Anda tidak perlu
mengubah File System, Mount Point
dan End. Klik langsung tombol Ok.
Jadi pada pembuatan partisi Root ini
semua kapasitas hardisk akan
digunakan untuk partisi /root.
Perhatikan Gambar 25.

Gambar 25

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Setelah semua partisi telah
dibuat, kliklah tombol Next,
seperti pada gambar disamping.
Perhatikan Gambar 26.

Gambar 26
q Section Software

Menu instalasi berikutnya


adalah Menu Instalasi
Software. Perhatikan gambar
disamping, kliklah Software
untuk memulai pemilihan
software yang akan di install
kedalam mesin server anda.
Perhatikan Gambar 27.

Gambar 27

Pada pilihan menu Software,


pilihlah Option Default
System. Setelah anda milih
option software, kliklah
Detailed Selection untuk
memilih paket-paket server.
Perhatikan Gambar 28.

Gambar 28

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


1
4

3
Gambar 29a Gambar 29b
Pada Gambar 29a bagian yang dilingkari memiliki fungsi tersendiri, yaitu : 1. Pemilihan paket dalam
mode filter atau satu persatu. 2. Pemilihan paket dalam mode Group Packages. 3. Informasi kapasitas
hardisk pada paket-paket linux yang di-install. 4. Kumpulan paket grup pada pemilihan filter dengan
menggunakan Packages Groups. 5. Informasi tentang paket yang di-install berupa fungsi paket dan
lain-lain. Berilah tanda cek pada bagian kedua yaitu Network Server,LDAP Server and Tools, Simple
Webserver with Apache2, C/C++ Compiler Tools, Kernel Development, Experience User. Sedangkan
pada Gambar 29b adalah salah satu contoh mode instalasi dalam mode Search. Setelah semua paket
sudah selesai dipilih, kliklah tombol Accept Perhatikan dengan baik Gambar 29a.

Setelah anda memilih paket-


paket yang akan di-install dan
telah mengklik tombol Accept
maka dialog box akan muncul
seperti pada gambar disamping
ini. Pada isi dialog box adalah
informasi sebagian paket-paket
dengan informasi sekilas dari
paket-paket tersebut.
Perhatikan Gambar 30.

Gambar 30

Catatan : Pada pemilihan paket-paket yang akan di-install, setelah anda memberi tanda centang pada
network server, LDAP server and Tools, Simple Web Server With Apache2, maka secara automatis
linux akan menginstal paket-paket untuk server seperti BIND, Apache2, SMB, dll sehingga pada saat
konfigurasi server anda tidak perlu lagi menginstall paket-paket untuk server.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Section Booting
Menu instalasi ini menjelaskan bagaimana mengatur booting pada boot lader untuk
masuk kedalam Operating System.

Menu instalasi berikutnya adalah


Menu Instalasi Booting.
Perhatikan lingkaran merah pada
gambar disamping. Kliklah pada
Link Booting untuk mengatur
proses instalasi booting.
Perhatikan Gambar 31.

Gambar 31

Gambar 32

Pada gambar disamping, perhatikan dengan baik pada bagian dialog box yang berisi : Boot Loader
Type, Default Section, Available Sections, Time Out. Pada Boot Loader Type, anda bisa mengubah
dari GRUB menjadi LILO. Default Sections adalah sistem operasi yang paling pertama kali diloading
pada saat pertama kali boot, ini berlaku jika dalam komputer anda terdapat system operasi lain seperti
Windows. Available Sections adalah urutan menu pada boot loader yang akan dibuat. Sedangkan
Time Out adalah waktu yang dibutuhkan boot loader untuk masuk kedalam OS dalam detik. Anda
dapat juga mengubah konfigurasi diatas melalui Text apabila anda mengklik tombol Edit
Configuration Files. Perhatikan Gambar 32.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Section Time Zone
Bagian ini untuk mengatur waktu didalam mesin server yang akan kita install.

Menu instalasi berikutnya adalah


Menu Instalasi Time Zone.
Perhatikan gambar disamping, pada
lingkaran merah gambar disamping
adalah bagian menu instalasi time
zone. Kliklah link Time Zone untuk
melanjutkan instalasi barikutnya.
Perhatikan Gambar 33.

Gambar 33

Perhatikan baik-baik gambar disamping.


Pada gambar linkaran yang diberikan
kode 1 adalah Region, Kode 2 adalah
Time Zone, Kode 3 adalah Change Time
Or Date, sedangkan kode 4 adalah Clock 1 2
Time Set. Carilah daerah regional anda,
lalu pada time zone carilah ibukotanya,
konfigurasikan waktunya lalu kliklah
tombol Accept. Perhatikan Gambar 34.
3 4

Gambar 34

Menu instalasi berikutnya adalah


Menu Intalasi Languange.
Perhatikan gambar disamping,
kliklah Link Languange untuk
memilih bahasa yang digunakan
dalam mesin server anda.
Perhatikan Gambar 35.

Gambar 35

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Section Languange

Pilihlah bahasa standar yang akan


digunakan mesin server anda.
Secara default gunakanlah bahasa
English (US). Setelah anda
memilih bahasa yang akan
digunakan, kliklah tombol Accept.
Perhatikan Gambar 36.

Gambar 36

Menu instalasi berikutnya adalah


Menu Intalasi Run Level.
Perhatikan gambar disamping,
kliklah Link Run Level untuk
mengatur instalasi berjalan pada
init level berapa, penjelasan
mengenai init level akan
dijelaskan pada bab berikutnya.
Perhatikan Gambar 37.

Gambar 37

Perhatikan gambar disamping.


Secara default Run Level yang
diberikan adalah Run Level 5 yaitu
Full Multiuser with network and
xdm. Untuk penjelasan lebih lanjut
mengenai Run Level akan
dijelaskan secara mendetail di bab
berikutnya. Untuk bagian Run
Level gunakanlah setting default
linux, yaitu Run Level 5.
Perhatikan Gambar 38.

Gambar 38

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar 39a Gambar 39b

Setelah semua menu instalasi telah dikonfigurasikan kliklah tombol Accept seperti
pada Gambar 39a. Lalu akan tampil dialog box peringatan mengenai instalasi Linux
SuSE. Perhatikan Gambar 39b. Dialog box ini menjelaskan mengenai instalasi linux
yang akan dilakukan bahwa instalasi akan dilakukan menggunakan setting dan
konfigurasi yang dilakukan. Semua konfigurasi yang dilakukan dapat dilakukan
kembali setelah proses instalasi selesai. Kliklah tombol Yes, Install untuk memulai
proses instalasi. Perhatikan Gambar 39b.

Proses Instalasi CD 1 Linux


SuSE versi 9.1. Pada gambar
disamping tombol Details…
berfungsi untuk melihat proses
instalasi paket-paket linux
kedalam komputer anda,
sedangkan tombol Abort
Instalation berfungsi untuk
membatalkan proses instalasi.
Perhatikan Gambar 40.

Gambar 40

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar 41

Setelah proses intalasi CD pertama Linux SuSE 9.1 selesai, maka proses intalasi akan melakukan
Finishing Basic Instalation. Proses ini berfungsi untuk melakukan uji coba terhadap instalasi tahap
pertama yang kita lakukan. Perhatikan gambar disamping, proses yang berjalan adalah : Update
Configuration, Copy Files to Installed System, Install Boot Manager, Prepare System for Initial
Boot. Setelah proses diatas selesai maka komputer akan melakukan restart. Keluarkan CD installer
Linux SuSE 9.1 dari CD-ROM. Lakukan proses booting melalui Hardisk. Perhatikan Gambar 41.

Setelah proses Finishing Basic


Instalation selesai dan telah melakukan
restart. Maka secara automatis linux akan
melakukan loading untuk melanjutkan
proses instalasi CD-2 Linux SuSE 9.1.
Perhatikan gambar disamping. Linux
akan meminta kepada anda untuk
memasukkan CD-2 Installer Linux SuSE
9.1. Klik Eject untuk mengeluarkan CD,
dan klik Ok apabila anda ingin
memasukkan kembali CD-ROM.
Perhatikan Gambar 42.

Gambar 42

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Setelah proses instalasi CD-2
Linux SuSE 9.1 selesai, lanjutkan
proses instalasi CD-3 Linux SuSE
9.1 seperti saat anda diminta
untuk memasukkan CD-2
Installer Linux. Lalu kliklah
tombol Ok. Sehingga Linux akan
melanjutkan proses instalasi
seperti pada gambar disamping
ini. Perhatikan Gambar 43.

Gambar 43

Seperti proses instalasi CD-3


Linux SuSE 9.1. Apabila proses
instalasi CD-3 Linux SuSE 9.1
selesai, lanjutkan proses instalasi
CD-4 dan CD-5 Linux SuSE 9.1.
Perhatikan gambar disamping.
Gambar disamping adalah proses
instalasi CD-4 Linux SuSE 9.1.
Perhatikan Gambar 44.

Gambar 44

q Root Password

Setelah proses instalasi selesai


maka linux akan meminta kepada
anda untuk mengisi password
untuk user root. Isikanlah
password pada kolom yang
disediakan. Lalu kliklah tombol
Next. Perhatikan Gambar 45.

Gambar 45

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Network Configuration

Setelah anda mengklik tombol Next pada


saat memasukkan password root, maka
komputer akan melanjutkan instalasi ke
proses Network Configuration. Perhatikan
gambar disamping. Perangkat jaringan
yang dideteksi pada instalasi ini adalah
Network Interfaces. Kliklah link tersebut
untuk mengkonfigurasikan Ethernet card
anda. Perhatikan Gambar 46.

Gambar 46

Setelah anda mengklik link Network


Interfaces maka akan muncul Network
Card Configuration seperti pada
gambar disamping. Perhatikan tanda
kotak merah. Pada bagian tersebut
anda akan diinformasikan mengenai
merk ethernet card anda. Kliklah
tombol change untuk melakukan
konfigurasi Ethernet card anda.
Perhatikan Gambar 47.

Gambar 47

Gambar disamping adalah Network Card


Configuration Overview disini anda dapat
menambah, mengkonfigurasikan, dan
menghapus Ethernet card. Kliklah Edit
untuk melanjutkan konfigurasi Ethernet
card. Perhatikan Gambar 48.

Gambar 48

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar 49a Gambar 49b

Masukkanlah IP Address kedalam text box dan Netmask seperti pada Gambar 49a. lalu kliklah pada
Hostname And Name Server. Masukkan nama Hostname dan nama domain server yang akan dibuat.
Perhatikan Gambar 49b. Untuk bagian ini akan dijelaskan lebih detail pada bab berikutnya.

Gambar 50a Gambar 50b

Setelah selesai mengkonfigurasikan IP address dan Hostname maka kliklah tombol Next seperti pada
Gambar 50a. Setelah itu kliklah tombol Finish untuk mengakhiri konfigurasi Network Conection.
Perhatikan Gambar 50b.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar 51a Gambar 51b

Setelah selesai kliklah tombol Next seperti pada Gambar 51a. Lalu linux akan menyimpan hasil
konfigurasi Network Conection. Perhatikan Gambar 51b.

Gambar 52

Perhatikan gambar diatas, jika anda memiliki koneksi ke internet anda bisa melakukan test
koneksi anda dengan melakukan proses download dan update. Anda bisa melewati tahap ini
dengan memilih Option No, Skip This Test. Lalu kliklah tombol Next. Perhatikan Gambar 52.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar disamping adalah bagaimana
cara agar Client dalam jaringan anda
bisa mengenali server anda. Pada
bagian ini terdapat 2 Option yaitu
Stand Alone dan Network Client.
Sebaiknya anda memilih Stand
Alone. Perhatikan Gambar 53.

Gambar 53

Setelah itu maka anda dapat


menambahkan user biasa dalam mesin
server anda. Masukkan Username,
User Login dan Password lalu kliklah
tombol Next. Perhatikan Gambar 54.

Gambar 54

Setelah menambahkan user maka


linux akan menyimpan konfigurasi
yang dilakukan seperti gambar
disamping. Perhatikan Gambar 55.

Gambar 55

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar disamping adalah informasi
sekilas mengenai Linux SuSE 9.1. Lalu
kliklah tombol Next apabilaanda telah
selesai membacanya. Perhatikan
Gambar 56.

Gambar 56

Konfgurasi terakhir adalah VGA


Card, Printers, Sound Card, dll.
Secara default linux sudah
mendeteksi dan mengkonfigurasikan
perangkat tersebut, jadi sebaiknya
lewati saja konfigurasi ini. Kliklah
tombol Next jika anda tidak ingin
mengkonfigurasikan perangkat
tersebut. Perhatikan Gambar 57.

Gambar 57

Gambar disamping menandakan bahwa


instalasi yang dilakukan telah berhasil.
Kliklah tombol Finish untuk
menyelesaikan proses instalasi Linux.
Perhatikan Gambar 58.

Gambar 58

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar 59

Setelah proses intalasi selesai maka linux akan melakukan restart seperti pada gambar
diatas. Perhatikan Gambar 59.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q File System Linux
Struktur filesystem Linux adalah berbentuk tree, dengan “pusat”-nya adalah root
(akar) yang dilambangkan dengan tanda “/” (slash).
Contoh struktur direktori pada Linux dapat digambarkan sebagai berikut:

q Perintah Dasar Linux

Sintaks
Secara umum perintah pada Linux memiliki sintaks sebagai berikut :

perintah [option….] [argumen….]

Ø option adalah pilihan untuk mendapatkan hasil tertentu


Ø argumen adalah sesuatu yang akan diproses, misalnya file atau direktori

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


CATATAN :
Perintah dalam Linux adalah Case Sensitive yang berbeda dengan DOS Command.
Pada DOS Command perintah ‘dir’ sama dengan ‘DIR’, tetapi pada linux ‘ls’ tidak
sama dengan ‘LS’ atau ‘Ls’.

Perintah ls (list directory)


Perintah ini akan menampilkan isi sebuah direktori.
Bila Anda ketikkan :
# ls
maka akan ditampilkan isi direktori di mana Anda berada (working directory).
Perintah :
# ls /home/adjie
akan menampilkan isi direktori /home/adjie
option yang dapat digunakan antara lain
-a menampilkan semua file termasuk yang beratribut hidden, yaitu file atau
direktori yang berawalan tanda titik (.)
-l menampilkan file dan direktori dalam tampilan yang lengkap, termasuk nama
file, ukuran, tanggal modifikasi, owner, group dan atributnya.

Perintah cd (Change Directory)


Perintah ini untuk berpindah direktori.
Perintah :
# cd
akan membawa ke home directory Anda.
Perintah :
# cd /home/meong
akan membawa Anda ke direktori /home/meong
Bila terdapat susunan direktori berikut : /usr/src/linux/arch
dan Anda sedang berada di direktori /usr/src/linux, maka bila Anda hendak masuk
ke direktori arch, maka ketikkan :
# cd arch

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


sedangkan jika Anda ingin naik satu tingkat lebih atas maka ketikkan :
# cd ..
Perintah pwd (Print Working Directory)
Perintah ini digunakan untuk melihat di direktori mana Anda sekarang berada.
Perintahnya :
# pwd

Perintah more
Perintah more dapat Anda gunakan untuk melihat isi suatu file teks dengan layar
perlayar, Artinya jika file Anda tampilkan ukurannya lebih dari suatu layar, maka
more akan menghentikan tampilannya saat isi file telah mencapai satu layar. Anda
dapat menlanjutkan ke tampilan berikutnya dengan menekan tombol [SPACEBAR],
melihat baris berikutnya dengan tombol [enter], melihat baris sebelumnya dengan
tombol b, atau keluar dari tampilan more dengan tombol q. Misalnya:
# more /etc/httpd/httpd.conf
akan menampilkan isi file /etc/httpd/httpd.conf layar per layar. Indikator (15%) di
baris paling bawah manandai posisi (dalam persen) dari seluruh isi file (yaitu file
httpd.conf) yang sekarang sedang ditampilkan.

Perintah cat
Perintah ini digunakan untuk menampilkan isi file ke layar tanpa fasilitas tampilan
layar per layar. Biasanya digunakan bersamaan dengan pipeline atau redirection.
Misalnya, untuk melihat dan menampilkan isi file /etc/passwd dan /etc/group,
gunakan perintah:
# cat /etc/passwd /etc/group

Perintah rm
Perintah ini digunakan untuk menghapus direktori atau file. Misalnya:
# rm data.txt

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


akan menghapus file data1.txt yang terletak pada direktori tempat Anda berada
sekarang, asalkan Anda memiliki hak untuk itu.
Perintah berikut akan menghapus file data.txt yang terletak pada direktori /usr/data,
asalkan Anda memiliki hak untuk itu.
# rm /usr/data/data2.txt
Perintah berikut akan menghapus direktori data, yang terletak pada direktori /usr,
beserta seluruh isinya.
# rm –r /usr/data

Perintah mkdir
Perintah ini digunakan untuk membuat direktori. Misalnya:
# mkdir data
akan membuat direktori data pada current directory. Perintah berikut akan membuat
direktori januari pada direktori /usr/data, asal direktori data telah terdapat pada
direktori /usr.
# mkdir /usr/data/ januari
Jika direktori data belum terdapat pada direktori /usr, Anda dapat menggunakan
perintah berikut yang akan secar otomatis membuat semua direktori yang diperlukan
dalam rangka membuat direktori januari.
# mkdir –p /usr/data/januari
Perintah berikut akan secara otomatis membuat direktori januari, februari, dan maret
secara sekaligus pada current directory.
# mkdir januari februari maret

q Pipeline
Pada UNIX dan Linux, hasil keluaran suatu proses program dapat diberikan sebagai
input pada proses lainnya. Misalnya, jika Anda menampilkan isi direktori /etc dengan
ls –1, maka hasil tampilannya akan sangat banyak dan Anda tidak sempat
membaca nama file yang paling atas. Sementara itu, Anda telah mengenal perintah
more, yang dapat digunakan untuk menampilkan sesuatu layar perlayar.
Dengan pipeline, Anda dapat memberikan keluaran perintah ls-1 sebagai masukan
perintah more. Caranya adalah sebagai berikut:

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


# ls –1 /etc | more
Tanda vertical bar (|) adalah tanda yang digunakan untuk pipeline. Penggunaan
pipeline pada perintah- perintah Linux tidak terbatas. Perhatikan lagi contoh berikut:
# ls /etc | sort | more
Program sort adalah program yang akan mensortir inputnya dan menampilkan
hasilnya ke layar monitor.
q Filter
Dengan menggunakan pipeline, Anda dapat melakukan filter, atau penyaringan hasil
proses suatu program untuk ditampilkan sesuai dengan kriteria yang Anda tentukan.
Misalnya tampilan layar per layar (dengan pipeline ke more) atau tampilan tersortir
(dengan pipeline ke sort).
Ada banyak perintah Linux dan Unix lainnya yang dapat Anda gunakan untuk
melakukan penyaringan ini. Beberapa diantaranya adalah:

q Perintah grep
Perintah grep digunakan untuk menyaring masukanya dan menampilkan baris-baris
yang hanya mengandung pola yang Anda tentukan. Pola ini disebut reguler
expression.
Misalnya, pada Linux terdapat perintah w yang digunakan untuk mengetahui siapa
saja yang sedang login pada komputer Anda.
Untuk mengetahui siapa saja yang telah login sejak malam dan sore hari, Anda
dapat menyaring tampilan perintah w sehingga hanya menampilkan baris-baris yang
mengandung karakter “PM”
# w –h I grep PM
Catatan: Option –h akan menghilangkan header tampilan perintah w
Perintah grep dapat juga digunakan tanpa pipeline, yaitu mengambil inputnya
langsung dari file. Misalnya, pada UNIX dan Linux terdapat file /etc/passwd yang
berisi database user account yang terdapat pada komputer Anda. Jika Anda hendak
melihat baris-baris pada file /etc/passwd yang mengandung kata dan (artinya Anda
hendak mengetahui user account di komputer Anda yang namanya namanya
mengandung kata dan, misalnya daniel, dani, buldan, dan sebagainya ), gunakan
perintah:

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


# grep dan /etc/passwd

q Perintah wc
Perintah wc dapat Anda gunakan untuk menghitung jumlah baris, kata, dan karakter
dari baris-baris masukan yang diberikan kepadanya. Untuk mengetahui berapa
baris, gunakan option –1, untuk mengetahui berapa kata, digunakan option –w, dan
untuk mengetahui berapa karakter, gunakan option –c. Jika salah satu option itu
tidak Anda gunakan, maka tampilannya adalah jumlah baris, jumlah kata, dan
jumlah karakter.
Misalnya jika Anda ingin mengetahui berapa jumlah file yang ada pada direktori /etc,
maka ketikkan perintah:
# ls /etc I wc –1
Hasilnya adalah :
84 753 4908
Artinya bahwa hasil tampilan isi direktori /etc terdiri dari 84 baris (file dan direktori),
753 kata, dan 4908 karakter. Perhatikan bahwa perintah ls umumnya manampilkan
hasilnya dalam bentuk beberapa kolom, namun jika Anda menggunakan pipeline, ls
secara otomatis mengubah tampilannya menjadi satu kolom.
Perintah wc dapat juga digunakan tanpa pipeline, yaitu mengambil inputnya
langsung dari file.
Jika Anda jalankan perintah:
# wc data.txt
maka hasilnya adalah
3 15 104 data
yang artinya adalah bahewa file data.txt terdiri atas tiga baris, 15 kata, dan 104
karakter.
Perintah sort
Perintah sort digunakan untuk mensortir masukannya berdasarkan urutan nomor
ASCII dari karakter. Misalnya Anda memiliki file kelas1.txt yang isinya sebagai
berikut:
Badu
Zulkifli

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Yulizir
Yudi
Ade
Maka untuk menampilkan file itu dengan urutan yang beraturan, gunakan perintah
# sort kelas1.txt
Misalnya Anda memiliki lagi file kelas2.txt yang isinya sebagai berikut:
Budi
Gama
Asep
Mukhlis
Maka untuk mencetak di printer kedua file yang Anda miliki itu dengan urutan
berdasarkan abjad, gunakan perintah:
# cat kelas1.txt kelas2.txt | sort |lpr
Catatan: Perintah lpr adalah perintah untuk mencetak inputnya ke langsung printer.
q Perintah cut
Perintah cut digunakan untuk mengambil kolom tertentu dari baris-baris
masukannya, yang ditentukan pada option –c. Misalnya Anda ingin memproses hasil
perintah who yang menampilkan informasi user yang sedang login suatu saat.
Seperti terlihat, nama user ditampilkan pada kolom 1-8, dan untuk mengambil kolom
ini saja, Anda dapat menggunakan:
# who | cut -c1-8
Hasilnya adalah
Daniel
train-01
train-02
Catatan: Istilah kolom yang dimaksud di sini adalah kolom-kolom karakter yang
terdapat pada layar monitor atau terminal Anda, biasanya maksimal 80 kolom.
Lihat pada manual (man cut) untuk cara penggunaan perintah ini secara lebih detail.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Perintah uniq
Perintah uniq digunakan untuk menghilangkan baris-baris berurutan yang
mengalami duplikasi, biasanya digabungkan dalam pipeline dengan sort. Misalnya
jika Anda memiliki file kelas.txt dengan isi:
Bambang
Badu
Budi
Ade
Bambang
Ade
Maka untuk menghilangkan baris-baris yang mengalami duplikasi, gunakan
perintah:
# cat kelas.txt |sort |
uniq
Catatan : Lihat pada manual (man uniq) untuk cara penggunaan perintah ini secara
lebih detail.
q Reguler expression
Reguler expression adalah cara untuk menentukan sebuah pola karakter untuk
pencarian dan pemfilteran. Dengan reguler expression, Anda tidak harus
menentukan pola karakter yang eksak, misalnya pada perintah grep, untuk mencari
baris-baris yang mengandung kata dan, Anda tinggal menggunakan grep. Namun
bagaimana jika Anda ingin mencari baris-baris yang mengandung kata yang dimulai
dengan karakter H, diikuti dengan sembarang karakter, lalu diakhiri dengan karakter
n? Disinilah dibutuhkan reguler expression.
Untuk menggunakan reguler expression, Anda harus mengenal karakter-karakter
khusus yang memiliki arti tersendiri jika digunakan didalam pola reguler expression.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Akses Floppy, Harddisk dan CDROM

q Membaca isi disket


Untuk dapat membuka dan mengakses disket, terlebih dahulu dilakukan proses
mounting terhadap device file ke sebuah direktori di bawah root direktori.
Misalnya :
# mount /dev/fd0 /mnt/floppy
(catatan : direktori /mnt/floppy harus sudah ada, bila belum buatlah dengan mkdir)
Setelah itu jika kita akan mengakses floppy tersebut, kita melakukannya lewat
direktori /mnt/floppy
Untuk melihat isi disket kita tuliskan :
#ls /mnt/floppy
Untuk mengkopi file meong.txt ke direktori /home/adjie, ketikkan :
#cp /mnt/floppy/meong.txt /home/adjie
Untuk disket yang diformat dalam lingkungan DOS atau Windows (FAT12), maka
perlu disertakan option jenis filessistem yang digunakan disket, yaitu –t msdos.
#mount –t msdos /dev/fd0 /mnt/floppy
Jika hendak mengganti disket Anda harus meng-unmount disket yang lama dengan
:
#umount /mnt/floppy
Keluarkan disket lama,masukkan disket baru dan mount lagi.

q Membaca isi CDROM


Sama halnya dengan disket untuk membaca CDROM, terlebih dahulu harus
dilakukan proses mount.
# mount /dev/cdrom /mnt/cdrom

q Membaca isi partisi DOS dan Windows


Bila harddisk Anda memiliki partisi DOS atau Windows, maka untuk membacanya
harus dilakukan juga proses mounting.
Misal partisi itu adalah hda3, dan jenis partisi DOS, maka kita ketikkan :
#mount –t msdos /dev/hda3 /mnt/harddisk

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


(asumsi sebelumnya sudah dibuta direktori /mnt/harddisk)

Bila partisi itu berformat Windows maka option yang digunakan adalah –t vfat, jadi
kita ketikkan :
# mount –t vfat /dev/hda3 /mnt/harddisk
Bila partisi itu berformat Windows NT (NTFS=NT File System) maka option yang
digunakan adalah –t vfat, jadi kita ketikkan :
# mount –t vfat /dev/hda3 /mnt/harddisk

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


System Linux

q File system
Untuk mengorganisasi file-file pada device diperlukan suatu metode yang disebut
dengan filesystem. Jika Anda mengenal FAT selama ini di sistem operasi Windows
maka Anda akan mengenal beberapa metode filesystem di Linux, seperti ext fs,
ext2 fs atau xia fs dll. Saat ini ext2 fs adalah filesystem yang banyak digunakan
untuk Linux karena terkenal sangat efisien. Meskipun demikian Red Hat Linux tetap
menyediakan dukungan terhadap filesystem lain seperti msdos yang sudah built in
di kernel atau dalam bentuk modul seperti vfat (Windows95 native fs), ext,umsdos
dan sebagainya.
q Mount & Umount Command
Untuk menggunakan filesystem tersebut kita lebih dahulu harus me-mount sebuah
block device yang memiliki filesystem. Perintahnya adalah sebagai berikut:
# mount [-t] [-o] device mount_point
device berupa block device, mount_point berupa sebuah direktori untuk
menampilkan filesystem. t adalah type atau jenis filesystem dan o adalah option,
keduanya boleh saja tidak disertakan bila Anda sudah mengkonfigurasi file
/etc/fstab yang berisi keterangan detail mengenai device,jenis filesystem, mount
point yang digunakan dan sebagainya.
Misalnya saya akan mengakses sebuah file di disket di drive A: maka pertama kali
saya harus me-mount dulu disk tersebut ke sebuah direktori yang sudah saya buat
misalnya /mnt/floppy:
# mount /dev/fd1 -t vfat /mnt/floppy
<enter>
mount: block device /dev/fd1 is write-protected, mounting read-only
Setelah perintah itu barulah saya bisa membaca disket di drive A: tersebut di
direktori /mnt/floppy. Misalnya dengan mengetikkan perintah ls maka akan
ditampilkan isi disket di drive A:
# ls /mnt/floppy
Untuk membatalkan perintah mount digunakan perintah umount

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


# umount /mnt/floppy
Setelah perintah tersebut dieksekusi, otomatis drive A: tidak bisa digunakan,
cobalah dengan mengetikkan perintah ls lagi. Pesan kesalahan akan ditampilkan
seperti dibawah ini.
# ls /mnt/floppy
filesystem not mounted

mtools

Bila Anda memiliki filesystem DOSdan ingin mengunakannya tanpa harus


melakukan mount maka gunakan mtools. Dengan cara ini Anda tidak perlu lagi
melakukan mount bila ingin mengakses filesystem DOS dan partisi yang belum
diformat sekalipun. (Syafrudin, haydin@arjuna.csc.ui.ac.id). Setelah menginstalasi
mtools tersebut, Anda cukup menjalankan perintah-perintah seperti di DOS untuk
mengakses filesystem DOS tersebut, misalnya mdir, mcopy dan sebagainnya.

q Filesystem Manager
Pada saat boot, kernel akan me-mount root filesystem dari device yang telah
ditentukan dalam LILO. Selama proses boot tersebut semua filesystem yang ada
dalam tabel filesystem atau dalam file /etc/fstab juga akan diperiksa apakah perlu di
mount atau tidak.
Red Hat telah menyediakan program yang sangat mudah digunakan untuk
mengkonfigurasi filesystem tersebut. Program ini berjalan di X dan dapat dipanggil
melalui control panel atau cukup mengeksekusinya dengan perintah fstool.
Selanjutnya hasil konfigurasinya juga akan disimpan dalam file /etc/fstab.
Bila Anda tidak menginstalasi X dan tidak bisa menjalankan fstool, jangan
kuatir file /etc/fstab juga dapat di edit secara manual dengan program teks editor
favorit Anda. Filesystem manager menampilkan informasi mengenai nama
device,mount point, jenis filesystem, ukuran dan sisa spasi yang masih tersedia.
(Informasi ini seperti ini juga bisa diperoleh dengan perintah df).
Filesystem dapat di mount atau di unmount dengan tombol Mount dan
Unmount. Tanda asterik (*) didepan jenis filesystem menandakan filesystem
tersebut sudah atau sedang di mount.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Tombol Format hanya berfungsi untuk partisi hard disk. Tombol ini akan
menjalankan program mkfs yaitu program untuk membuat filesystem.
Tombol Check hanya berfungsi untuk filesystem ext2 dan minix. Tombol ini akan
menjalakan program fsck dan membutuhkan waktu beberapa saat untuk
menampilkan hasil pemeriksaan. Bila filesystem digunakan secara normal dan fsck
selalu dijalankan pada saat boot maka hasil check seringkali tidak menunjukkan
kesalahan apapun.

q Mengedit file /etc/fstab

File /etc/fstab berupa file teks biasa, bisa dibaca dan mudah di edit dengan
program editor teks favorit kita. Lakukan secara hati-hati karena kesalahan dalam
memasukkan atau menghapus sesuatu menyebabkan sistim tidak bisa me-mount
filesystem saat boot nanti.
Mirip dengan tampilan program fstool diatas, saat dibuka file /etc/fstab
menampilkan kolom-kolom yang berisi informasi nama device, mount point, jenis
filesystem, option, dump dan fsckorder. Kolom-kolom tersebut masing-masing
dipisahkan dengan tabs atau spasi.
Kolom dump berhubungan dengan program dump, lihat manual page
program dumb. Kolom terakhir fsckorder berhubungan dengan program fsck.
Urutan pengecekan filesystem saat boot ditunjukkan oleh nomor dikolom ini.
Pengecekan filesystem dapat dilakukan secara paralel dengan memberikan nomor
urut yang sama tapi filesystem root selalu harus nomor 1. Filesystem dengan
fsckorder 0 tidak akan dicek saat boot.

q Filesystem Support

Linux memiliki dukungan terhadap beberapa filesystem lain sehingga kita


dapat menggunakan atau mengakses filesystem yang berbeda tanpa harus
melakukan konversi lebih dulu. Berikut ini adalah beberapa filesystem yang bisa di
dukung Linux sejak kernel 2.0.30 di keluarkan: (Anda dapat mengkonfigurasi
dukungan filesystem ini saat konfigurasi kernel )
Minix Merupakan filesystem Linux yang pertama dan saat ini masih banyak
digunakan untuk boot disk dan beberapa format disket.
Extended fs Tidak banyak yang menggunakannya lagi dan sebaiknya tidak perlu
di kompile dalam kernel.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Second Saat ini merupakan filesystem default untuk Linux dan seharusnya di
Extended fs kompile dalam kernel karena filesystem root tidak bisa bekerja bila
berupa modul.
xiafs filesystemDiperkenalkan bersamaan dengan second extended fs dan
dimaksudkan untuk menggantikan extended fs. Saat ini jarang
digunakan dan sebaiknya tidak di kompile dalam kernel kecuali Anda
membutuhkannya.
DOS FAT fs Pada dasarnya bukan merupakan sebuah filesystem tapi merupakan
dasar bagi filesystem berbasis FAT lainnya seperti MS-DOS FAT,
VFAT (Windows95) atau umsdos.
MS-DOS FAT fsJika Anda menginginkan Linux dapat mengakses sistem berbasis
DOS maka Anda dapat menkompilenya dalam kernel. Sangat
berguna untuk komputer yang memiliki sistem dual-boot.
VFAT Merupakan peningkatan dari MS-DOS FAT fs dan mendukung format
(Windows95) fs long filename. Ini juga berguna untuk komputer yang memiliki sistem
dual-boot.
umsdos Dukungan ini dibutuhkan bila ingin menjalankan Linux diatas partisi
DOS tapi sepertinya SuSE Linux tidak akan bisa berjalan pada
sebuah filesystem umsdos.
/proc Filesystem ini dipakai oleh kernel untuk menyediakan informasi
mengenai sistem kepada user program, seperti ps, top, xload, free
atau netstat. Filesystem ini memang seharusnya selalu ada dan
walaupun ada isinya tapi tidak akan mengisi spasi hard disk.
NFS Dibutuhkan bila Anda akan mengakses remote filesystem dan untuk
sebuah server dukungan ini merupakan suatu keharusan.
SMB Sangat berguna bila Anda menginginkan memiliki akses langsung ke
Windows95 atau NT.
NCP Dukungan terhadap NetWare melalui protokol NCP.
ISO9660 Bila Anda memiliki CD-ROM sebaiknya memanfaatkan dukungan ini
karena banyak sekali CD-ROM yang ada dipasaran menggunakan
format ISO9660 ini.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


OS/2 HPFS Mendukung filesystem OS/2 dan HPFS. Linux hanya dapat
membaca filesystem tersebut (read-only).
System V Merupakan filesystem UNIX generasi lama dan dukungan ini hanya
& Coherent diperlukan bila Anda memiliki data-data lama dan ingin
memindahkannya ke filesystem yang baru.
Amiga FFS Masih berupa experimental code dan sebaiknya gunakan dengan
hati-hati.
UFS Filesystem ini digunakan oleh beberapa sistem UNIX, Solaris dan
SunOS(4.2). Linux hanya dapat membaca filesystem ini.

Manajemen Sistem

q Organisasi File
Disamping memiliki program instalasi yang baik, distribusi SuSE juga
mengorganisasi file-file yang diinstalasi dengan baik pula. SuSE mengikuti standar
pengorganisasian filesystem Linux atau FSSTND yang tersedia di website
http://www.pathname.com/fhs/
Keterangan lebih lengkap tentu saja dapat diperoleh di website tersebut tapi secara
sederhana organisasi file di SuSE dapat dijelaskan sebagai berikut:
Pada tingkat tertinggi adalah root direktori, /, yang hanya mengandung sejumlah
file penting seperti:
bin/, boot/, dev/, etc/, home/, lib/, lost+found/, mnt/, proc/, sbin/, tmp/, usr/, dan var/.

/bin & /sbin

Direktori ini menyimpan program-program penting yang digunakan untuk


pemeliharaan sistem. Sesuai dengan nama direktorinya, file-file program yang
tersimpan didalamnya berupa file binary yang dapat dieksekusi (executable).
Isi direktori /bin umumnya adalah user program seperti:
• login
• Shell (bash, ksh, csh)
• File utility (cp, mv, rm. ln, tar)
• Editor (ed, vi)
• Filesystem utilty (dd, df, mount, umount, sync)

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


• System utility (uname, hostname, arch)
• GNU utility (gzip, gunzip)
Isi direktori /sbin umumnya adalah program pemeliharaan atau sistem program.
Program-program yang disimpan di direktori /sbin ini hanya dapat dieksekusi oleh
root. Contohnya adalah sebagai berikut:
• fsck
• fdisk
• mkfs
• shutdown
• lilo
• init

/etc

Direktori ini menyimpan file-file konfigurasi systemwide yang dibutuhkan oleh


program-program lainnya. Beberapa file penting di direktori ini misalnya:
• passwd
• shadow
• fstab
• hosts
• motd
• profile
• shells
• services
• lilo.conf

/home

Direktori ini menyimpan direktori masing-masing user yang ada di sistem termasuk
HTTPD. Beberapa sistem Linux menyimpan home user root di direktori ini sebagai
/home/root tapi ada juga yang menyimpan direktori home user root di direktori / atau
root direktori.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


/mnt

Umumnya direktori ini didalamnya mengandung subdirektori-subdirektori yang


merupakan sebuah mount point untuk jenis device tertentu. Misalnya cdrom/,
floppy/, atau zip/.

/tmp & /var

Direktori /tmp untuk menampung file-file sementara(temporary) dan /var


menampung varying content atau macam-macam file.
Direktori /tmp biasanya juga dimanfaatkan oleh program instalasi saat kita
mengintalasi program atau aplikasi. Isi direktori ini bisa saja dihapus setiap saat
tanpa menimbulkan penagaruh apapun.
Direktori /var memiliki isi yang lebih banyak dari /tmp dan biasanya isinya adalah
seperti ini:
catman/, lib/, local/, lock/, log/, nis/, preserve/, run/, spool/ dan tmp/.
Direktori /var/log merupakan direktori yang sangat familiar bagi setiap user. Di
dalamnya disimpan pesan-pesan yang dihasilkan oleh sistem. Berikut ini isi direktori
/var/log di komputer saya:
httpd/, boot.log, cron, dmesg, htmlaccess.log, lastlog, maillog, messages,
netconf.log, secure, sendmail.st, spooler, wtmp. File-file pesan tersebut sangat
berguna bagi kita untuk mendiagnosis masalah atau kesalahan sistem. Bagi yang
tidak berpengalaman dalam menangani masalah sistem, isi file-file pesan tersebut
bisa disertakan bila kita minta bantuan orang lain atau di forum milis.

/usr

Berisi semua program dan file yang secara langsung berhubungan dengan setiap
user dalam sistem. Misalnya di komputer saya isinya adalah sebagai berikut:
~X11, X11R6/, ~X386, bin/, dict/, doc/, etc/, games/, i486-linux-libc5/, i486-
linuxaout/, include/, info/, lib/, libexec/, local/, man/, sbin/, share/, src/, ~tmp.
Direktori /usr/bin dan /usr/sbin menyimpan banyak sekali file executable. File-file
executable yang disimpan di direktori ini memiliki kesamaan fungsi dan jenis dengan
file-file di direktori /bin dan /sbin.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Direktori /usr/X11 dan /usr/X11R6 dan subdirektori dibawahnya berisi semua file
yang berhubungan dengan X Window seperti man page, library dan file executable.

q Menganalisis Sistem
Menganalisis sistem biasanya dilakukan oleh seorang administrator sistem untuk
mendeteksi adanya gejala-gejala yang dapat menyebabkan kerusakan atau
masalah pada sistem kelak. SuSE sudah menyediakan tool-tool untuk melakukan
hal itu, diantaranya adalah dua buah program tool yang sangat berguna yaitu
vmstat dan top, dengan menggunakan kedua program tersebut administrator
memperoleh informasi mengenai sistem seperti penggunaan CPU, memori atau
proses-proses yang sedang berjalan dan dengan bantuan informasi ini administrator
sistem bisa mendeteksi secara cepat apakah sistemnya mengalami gangguan atau
tidak.
Dengan menggunakan kedua program tersebut, Anda sendiri bisa mencoba dan
melihat apakah sistem yang dipakai saat ini berjalan dengan baik atau tidak.
Lihatlah informasi yang ditampilkan program-program tersebut dan bila Anda
memperkirakan ada masalah, silakan menghubungi administrator sistem untuk
mendapatkan bantuan.

vmstat

Program atau perintah ini akan melakukan test dan menampilkan informasi
penggunaan CPU, memori, proses-proses yang sedang berjalan serta operasi I/O.
Sintaks penulisan perintahnya adalah sebagai berikut:
$ vmstat [interval] [count]
Interval adalah waktu jeda test dalam detik dan count adalah jumlah test yang kita
kehendaki. Misalnya akan dilakukan test sebanyak 5 kali dengan waktu jeda setiap
5 detik maka perintah dan hasilnya adalah seperti dibawah ini:
[zakaria@linux source]$ vmstat 5 5
procs memory swap io system cpu
r b w swpd free buff cache si so bi bo in cs us sy id
0 0 0 37924 824 840 13280 54 14 30 9 522 271 21 6 73
3 0 0 37924 1080 816 13060 0 0 1 0 110 329 20 16 64

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


1 0 0 37924 1036 824 13084 0 0 2 1 130 331 18 18 64
1 0 0 37924 1036 824 13084 0 0 0 0 107 329 19 16 65
2 0 0 37924 1036 828 13084 0 0 0 1 112 326 21 14 65

Tiga kolom pertama menunjukkan proses-proses yang sedang dikerjakan, yaitu


waiting for runtime(r), uninterupted sleep(b) dan swapped out(w). Banyaknya proses
yang mengalami waiting for runtime(r) dapat merupakan indikasi terjadinya suatu
masalah misalnya telah terjadi bottleneckyaitu penumpukan proses-proses disuatu
tempat.
Kolom memory dan swap digunakan untuk mendeteksi adanya kesalahan yang
ditimbulkan oleh manajemen memori. Kolom-kolom swpd, free, buff dan cache
berturut-turut menjelaskan jumlah memori virtual yang digunakan, jumlah memori
idle, jumlah memori yang dipakai sebagai buffer dan jumlah memori yang tersisa
dalam cache, semuanya dalam KB. Perhatikan kolom swap in(si), merupakan
jumlah memori yang di-paging dari disk dalam satuan KB/detik sedangkan swap
out(so) adalah kebalikannya.
Tiga kolom terakhir adalah persentasi penggunaan CPU yaitu persentasi
penggunaan CPU untuk tugas-tugas user(us), persentasi penggunaan CPU untuk
tugas-tugas sistem termasuk waktu tunggu I/O, pelaksanaan fungsi-fungsi sistem
operasi secara umum(sy) dan persentasi CPU idle atau saat tidak digunakan(id).
Untuk mendeteksi suatu kesalahan yang diakibatkan oleh masalah CPU sebaiknya
dengan melihat persentasinya secara signifikan dalam satu periode waktu. Misalnya
pada saat komputer idle dalam satu periode waktu, perhatikan kolom us dan sy
seharusnya menunjukkan angka yang rendah sedangkan kolom id menunjukkan
angka yang tinggi. Bila tidak seperti itu maka dipastikan ada masalah yang berkaitan
dengan CPU.

top

Menampilkan informasi proses yang sedang dilakukan CPU secara real time.
Kelebihan dari top ini adalah kita dapat memanipulasi proses-proses tersebut secara
interaktif dengan menekan tombol-tombol menu. Misalnya untuk meng-kill sebuah

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


proses, kita cukup menekan tombol K dan mengisi nomor proses(PID) yang ingin di-
kill.
Untuk menjalankannya cukup dengan mengetikkan perintah top dan segera
ditampilkan daftar proses-proses yang sedang berjalan saat itu berikut informasi-
informasi lainnya. Informasi-informasi yang ditampilkan tersebut secara default akan
diperbarui atau diupdate setiap 5 detik. Berikut ini tampilan sebagian dari daftar
proses-proses yang ditunjukkan oleh top:

Baris-baris header menampilkan informasi mengenai waktu, jumlah user, banyaknya


proses, penggunaan CPU serta memori secara jelas. Misalnya saat itu sistem
memiliki 35 buah proses, dimana 4 proses sedang berjalan, 30 proses sleeping dan
ada sebuah proses menjadi zombie. Porses zombie ini adalah sebuah proses yang
hang atau hidup segan, mati tak mau dan apabila Anda tidak bisa mem-kill proses
zombie ini maka parent process-nya harus di-kill lebih dahulu. Gunakan perintah
pstree atau ps ufx untuk mengurut proses mana yang menjadi parent dari zombie
tersebut.
Daftar menu untuk mengoperasikan top dapat dilihat dengan menekan tombol ?,
atau h. Dengan menggunakan tombol-tombol dalam daftar menu tersebut, kita
dapat melakukan manipulasi semua proses dalam sistem. Misalnya, tombol k untuk
meng-kill sebuah proses, tombol r untuk me-renice proses dan q untuk keluar atau
mengakhiri progam top.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Multi User

q Bagaimana Tidak Menggunakan Root?


Bila Anda membaca beberapa bab yang lalu, pernah disinggung mengenai
kerugian-kerugian apabila kita selalu bekerja sebagai root. Tapi kemudian saya
memperoleh beberapa pertanyaan seperti ini: Apakah saya masih bisa
menggunakan hak-hak khusus root setelah saya tidak memakainya? Mengapa saya
tidak bisa lagi melakukan koneksi dial-up setelah saya login bukan sebagai root?
Seperti yang telah kita ketahui, Linux termasuk sistem multiuser dimana suatu
resource bisa digunakan oleh banyak user. Setiap user biasanya diberi ruangan
atau space yang di simpan rapi dibawah direktori /home. Setiap user di home
masing-masing memiliki hak mengakses, membaca atau menulis file-file di dalam
home mereka sendiri tetapi mereka belum tentu bisa melakukan hal yang sama di
home milik user lain atau direktori milik root. Masing-masing user bisa diberi hak-hak
khusus yang berlainan untuk mengakses, membaca atau menulis ke sebuah file
atau direktori oleh root. Oleh karena itu kita bisa saja meninggalkan root atau tidak
lagi login sebagairoot sepanjang hari dengan cara membuat home sendiri, login
sebagai user biasa serta memberikan hak akses seperlunya saja agar tidak
membahayakan sistem bila suatu saat kita melakukan kesalahan.
q Membuat User
Mudah saja, saat Anda login sebagai root, jalankan perintah sebagai berikut:
# adduser meong
# passwd meong
Setelah mengetik perintah terkahir Anda akan ditanya password untuk membuka
home Anda. Ketikkan saja passwordnya sebanyak dua kali dengan kata yang sama.
Selanjutnya Anda telah memiliki 'rumah' baru dan siap untuk digunakan. Bila Anda
menginginkan, Anda juga bisa memberikan home lain kepada mama, keponakan
yang masih duduk TK atau kepada teman kuliah Anda yang sedang menumpang
mengetik skripsinya di komputer Anda.
q Group
Setiap user paling sedikit bergabung dengan sebuah group. Group bisa berisi
kumpulan user lain atau program yang mempunyai kesamaan tugas. Group
memungkinkan sebuah file bisa dipergunakan secara bersama hanya oleh user-user

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


yang tergabung didalamnya. Oleh karena itu cara mengelompokkan user-user
dalam group ini adalah salah satu cara yang mudah bagi root untuk memberikan
hak akses file-file miliknya kepada sekelompok user.
Untuk membuat group baru, Anda bisa menggunakan perintah groupadd. Misalnya,
Anda ingin membuat group baru yang namanya konek maka perintahnya adalah
sbb:
# groupadd konek
Untuk parameter yang lain seperti menentukan gid, password dan lain-lain silakan
lihat manualnya. Berikutnya adalah menambahkan user-user yang akan bergabung
ke dalam group konek ini. Informasi group disimpan dalam file /etc/group, bukalah
dengan menggunakan editor kesayangan Anda, kemudian tambahkan nama-nama
user yang akan bergabung dalam group konek.
Setiap baris dalam file /etc/group terdiri dari empat segmen yang dipisahkan oleh
tanda titik dua,
nama group : password : group id(gid) : user
Carilah baris group konek dan cukup tambahkan nama user yang akan bergabung
dengan group konek ini di segmen terakhir. Pisahkan nama user dengan tanda
koma bila user yang bergabung lebih dari satu, misalnya:
konek : : 501 : meong, fryda
Password biasanya kosong atau * atau biarkan saja bila Anda tidak membuat
password untuk group ini. Setelah file /etc/group ini di simpan maka tugas
berikutnya adalah merubah permission dan ownership file-file yang bisa diakses
oleh group konek.
q Permission dan Ownership
Setiap file memiliki perijinan dan kepemilikan yang menentukan siapa saja yang
boleh mengaksesnya. Lihatlah kembali bab mengenai command line khusunya
perintah chgrp, chmod dan chown atau lihat manual perintah-perintah tersebut
untuk lebih memahami fungsi perijinan dan kepemilikan ini.
Sebagai contoh, bila Anda menginginkan group konek yang telah dibuat beberapa
saat lalu itu, semua anggotanya bisa melakukan dial-up sendiri maka Anda harus
merubah perijinan atau kepemilikan dari beberapa file yang berhubungan dengan
dial-up supaya bisa diakses oleh group konek.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Bila Anda memakai kppp dari KDE sebagai dial-up maka Anda bisa merubah
kepemilikan file kppp menjadi milik group konek seperti ini:
# ls -l /usr/bin/kppp
-rwx------ 1 root root 365660 Apr 19 00:33 /usr/bin/kppp
# chown .konek /usr/bin/kppp
# ls -l /usr/bin/kppp
-rwsrws--- 1 root konek 365660 Apr 19 00:33 /usr/bin/kppp
Lakukanlah hal yang sama pada file-file yang berhubungan dengan dial-up seperti
/dev/modem, file-file di /etc/ppp/option dan sebagainya.
Setelah itu user-user yang tergabung dalam group konek diharuskan login ke group
konek dengan mengetikkan perintah newgrp apabila ingin dapat melakukan dial-up
dengan kppp:
$ newgrp konek
Sekarang user fryda sudah dapat melakukan dial-up sendiri dengan kppp tanpa
bantuan root.
q Command Line

Seperti halnya bila kita mengetikkan perintah di DOS, command line atau baris
perintah di Linux juga diketikkan di prompt dan diakhiri enter untuk mengeksekusi
perintah tersebut. Baris perintah merupakan cara yang lebih efisien untuk
melakukan sesuatu pekerjaan oleh karena itu pemakai Linux tetap mengandalkan
cara ini untuk bekerja. Sebaiknya pemula juga harus mengetahui dan sedikitnya
pernah menggunanakan perintah baris ini karena suatu saat pengetahuan akan
perintah-perintah ini bisa sangat diperlukan.
Saya mengumpulkan beberapa perintah dasar yang mungkin kelak akan sering
digunakan terutama oleh para pemula. Perhatian: pengetahuan akan perintah-
perintah yang lain akan segera bertambah seiring dengan kemajuan Anda
menguasai sistem operasi Linux ini.
Penjelasan masing-masing perintah akan dipersingkat saja dan untuk mengetahui
lebih detail lagi fungsi-fungsi suatu perintah, Anda dapat melihat manualnya,
misalnya dengan mengetikkan perintah man:
$ man ls

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Manual tersebut akan menampilkan bagaimana cara penggunaan perintah lsitu
secara lengkap.

Daftar Perintah Menurut Alfabet


& adduser alias bg cat cd chgrp chmod chown
cp fg find grep gzip halt hostname kill less
login logout ls man mesg mkdir more mount mv
passwd pwd rm rmdir shutdown su tail talk tar
umount unalias unzip wall who xhost + xset zip

&
Perintah & dipakai dibelakang perintah lain dan menjalankannya di background.
Tujuannya adalah untuk membebaskan shell agar bisa dipergunakan menjalankan
proses-proses yang lain. Lihat juga perintah bg dan fg.
adduser
Biasanya hanya dilakukan oleh root untuk menambahkan user atau account yg
baru. Setelah perintah ini bisa dilanjutkan dengan perintah passwd, yaitu perintah
untuk membuat password bagi user tersebut.
# adduser udin
# passwd udin
Selanjutnya Anda akan diminta memasukkan password untuk user udin. Isikan
password untuk udin dua kali dengan kata yang sama.
alias
Digunakan untuk memberi nama lain dari sebuah perintah. Misalnya bila Anda ingin
perintah ls dapat juga dijalankandengan mengetikkan perintah dir, maka buatlah
aliasnya sbb:
$ alias dir=ls
Untuk melihat perintah-perintah apa saja yang mempunyai nama lain saat itu, cukup
ketikkan alias. Lihat juga perintah unalias.
bg
Untuk memaksa sebuah proses yang dihentikan sementara(suspend) agar berjalan

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


di background. Misalnya Anda sedang menjalankan sebuah perintah di foreground
(tanpa diakhiri perintah &) dan suatu saat Anda membutuhkan shell tersebut maka
Anda dapat memberhentikan sementara perintah tersebut dengan Ctrl-Z kemudian
ketikan perintah bg untuk menjalakannya di background. Dengan cara ini Anda
telah membebaskanshell tapi tetap mempertahankan perintah lama berjalan di
background. Lihat juga perintah fg.
cat
Menampilkan isi dari sebuah file di layar.
$ cat namafile
cd
Change Directory atau untuk berpindah direktori dan saya kira Anda tidak akan
menemui kesulitan menggunakan perintah ini karena cara penggunaanya mirip
dengan perintah cd di DOS.
chgrp
Perintah ini digunakan untuk merubah kepemilikan kelompok file atau direktori.
Misalnya untuk memberi ijin pada kelompok atau grup agar dapat mengakses suatu
file. Sintaks penulisannya adalah sbb:
# chgrp <grup baru> <file>
chmod
Digunakan untuk menambah dan mengurangi ijin pemakai untuk mengakses file
atau direktori. Anda dapat menggunakan sistem numeric coding atau sistem letter
coding. Ada tiga jenis permission/perijinan yang dapat dirubah yaitu r untuk read, w
untuk write dan x untuk execute.
Dengan menggunakan letter coding, Anda dapat merubah permission diatas untuk
masing-masing u (user), g (group), o (other) dan a (all) dengan hanya memberi
tanda plus (+) untuk menambah ijin dan tanda minus (-) untuk mencabut ijin.
Misalnya untuk memberikan ijin baca dan eksekusi file coba1 kepada owner dan
group, perintahnya adalah:
$ chmod ug+rx coba1
Untuk mencabut ijin-ijin tersebut:
$ chmod ug-rx coba1

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Dengan menggunakan sitem numeric coding, permission untukuser, group dan
other ditentukan dengan menggunakan kombinasi angka-angka, 4, 2 dan 1 dimana
4 (read), 2 (write) dan 1 (execute).
Misalnya untuk memberikan ijin baca(4), tulis(2) dan eksekusi(1) file coba2 kepada
owner, perintahnya adalah:
$ chmod 700 coba2
Contoh lain, untuk memberi ijin baca(4) dan tulis(2) file coba3 kepada user, baca(4)
saja kepada group dan other, perintahnya adalah:
$ chmod 644 coba3
chown
Merubah user ID (owner) sebuah file atau direktori
$ chown <user id> <file>
cp
Untuk menyalin file atau copy. Misalnya untuk menyalin file1 menjadi file2:
$ cp <file1> <file2>
fg
Mengembalikan suatu proses yang dihentikan sementar(suspend) agar berjalan
kembali di foreground. Lihat juga perintah bg diatas.
find
Untuk menemukan dimana letak sebuah file. Perintah ini akan mencari file sesuai
dengan kriteria yang Anda tentukan. Sintaksnya adalah perintah itu sendiri diikuti
dengan nama direktori awal pencarian, kemudian nama file (bisa menggunakan
wildcard, metacharacters) dan terakhir menentukan bagaimana hasil pencarian itu
akan ditampilkan. Misalnya akan dicari semua file yang berakhiran .doc di current
direktori serta tampilkan hasilnya di layar:
$ find . -name *.doc -print
. /public/docs/account.doc
. /public/docs/balance.doc
. /public/docs/statistik/prospek.doc
./public/docs/statistik/presconf.doc
grep

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Global regular expresion parse atau grep adalah perintah untuk mencari file-file
yang mengandung teks dengan kriteria yang telah Anda tentukan.
$ grep <teks> <file>
Misalnya akan dicari file-file yang mengandung teks marginal di current direktori:
$ grep marginal <file>
diferent.doc: Catatan: perkataan marginal luas dipergunakan di dalam ilmu ekonomi
prob.rtf: oleh fungsi hasil marginal dan fungsi biaya marginal jika fungsi
prob.rtf: jika biaya marginal dan hasil marginal diketahui maka biaya total

gzip
Ini adalah software kompresi zip versi GNU, fungsinya untuk mengkompresi sebuah
file. Sintaksnya sangat sederhana:
$ gzip <namafile>
Walaupun demikian Anda bisa memberikan parameter tertentu bila memerlukan
kompresi file yang lebih baik, silakan melihat manual page-nya. Lihat juga file tar,
unzip dan zip.
halt
Perintah ini hanya bisa dijalankan oleh super useratau Anda harus login sebagai
root. Perintah ini untuk memberitahu kernel supaya mematikan sistem atau
shutdown.

hostname
Untuk menampilkan host atau domain name sistem dan bisa pula digunakan untuk
mengesset nama host sistem.
[meong@localhost docs] $ hostname
localhost.localdomain
kill
Perintah ini akan mengirimkan sinyal ke sebuah proses yang kita tentukan.
Tujuannya adalah menghentikan proses.
$ kill <sinyal> <pid>
PID adalah nomor proses yang akan di hentikan.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


less
Fungsinya seperti perintah more.
login
Untuk masuk ke sistem dengan memasukkan login ID atau dapat juga digunakan
untuk berpindah dari user satu ke user lainnya.
logout
Untuk keluar dari sistem.
ls
Menampilkan isi dari sebuah direktori seperti perintah dir di DOS. Anda dapat
menggunakan beberapa option yang disediakan untuk mengatur tampilannya di
layar. Bila Anda menjalankan perintah ini tanpa option maka akan ditampilkan
seluruh file nonhidden(file tanpa awalan tanda titik) secara alfabet dan secara
melebar mengisi kolom layar. Option -la artinya menampilkan seluruh file/all
termasuk file hidden(file dengan awalan tanda titik) dengan format panjang.
man
Untuk menampilkan manual page atau teks yang menjelaskan secara detail
bagaimana cara penggunaan sebuah perintah. Perintah ini berguna sekali bila
sewaktu-waktu Anda lupa atau tidak mengetahui fungsi dan cara menggunakan
sebuah perintah.
$ man <perintah>
mesg
Perintah ini digunakan oleh user untuk memberikan ijin user lain menampilkan
pesan dilayar terminal. Misalnya mesg Anda dalam posisi y maka user lain bisa
menampilkan pesan di layar Anda dengan write atau talk.
$ mesg y atau mesg n
Gunakan mesg n bila Anda tidak ingin diganggu dengan tampilan pesan-pesan dari
user lain.
mkdir
Membuat direktori baru, sama dengan perintah md di DOS.
more
Mempaging halaman, seperti halnya less

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


mount
Perintah ini akan me-mount filesystem ke suatu direktori atau mount-point yang
telah ditentukan. Hanya superuser yang bisa menjalankan perintah ini. Untuk
melihat filesystem apa saja beserta mount-pointnya saat itu, ketikkan perintah
mount. Perintah ini dapat Anda pelajari di bab mengenai filesystem. Lihat juga
perintah umount.
$ mount
/dev/hda3 on / type ext2 (rw)
none on /proc type proc (rw)
/dev/hda1 on /dos type vfat (rw)
/dev/hda4 on /usr type ext2 (rw)
none on /dev/pts type devpts (rw,mode=0622)
mv
Untuk memindahkan file dari satu lokasi ke lokasi yang lain. Bila argumen yang
kedua berupa sebuah direktori maka mv akan memindahkan file ke direktori
tersebut. Bila kedua argumen berupa file maka nama file pertama akan menimpa file
kedua. Akan terjadi kesalahan bila Anda memasukkan lebih dari dua argumen
kecuali argumen terakhir berupa sebuah direktori.
passwd
Digunakan untuk mengganti password. Anda akan selalu diminta mengisikan
password lama dan selanjutnya akan diminta mengisikan password baru sebanyak
dua kali. Password sedikitnya terdiri dari enam karakter dan sedikitnya mengandung
sebuah karakter.
pwd
Menampilkan nama direktori dimana Anda saat itu sedang berada.
rm
Untuk menghapus file dan secara default rm tidak menghapus direktori. Gunakan
secara hati-hati perintah ini terutama dengan option -r yang secara rekursif dapat
mengapus seluruh file.
rmdir
Untuk menghapus direktori kosong.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


shutdown
Perintah ini untuk mematikan sistem, seperti perintah halt. Pada beberapa sistem
anda bisa menghentikan komputer dengan perintah shutdown -h now dan
merestart sistem dengan perintah shutdown -r now atau dengan kombinasi tombol
Ctr-Alt-Del.
su
Untuk login sementara sebagai user lain. Bila user ID tidak disertakan maka
komputer menganggap Anda ingin login sementara sebagai super user atau root.
Bila Anda bukan root dan user lain itu memiliki password maka Anda harus
memasukkan passwordnya dengan benar. Tapi bila Anda adalah root maka Anda
dapat login sebagai user lain tanpa perlu mengetahui password user tersebut.
tail
Menampilkan 10 baris terakhir dari suatu file. Default baris yang ditampilkan adalah
10 tapi Anda bisa menentukan sendiri berapa baris yang ingin ditampilkan:
$ tail <jumlah baris> <file file ....>
talk
Untuk mengadakan percakapan melalui terminal. Input dari terminal Anda akan
disalin di terminal user lain, begitu sebaliknya.
tar
Menyimpan dan mengekstrak file dari media seperti tape drive atau hard disk. File
arsip tersebut sering disebut sebagai file tar. Sintaknya sebagai berikut:
$ tar <aksi> <option> <file atau direktori>
umount
Adalah kebalikan dari perintah mount, yaitu untuk meng-unmount filesystem dari
mount-pointnya. Setelah perintah ini dijalankan direktori yang menjadi mount-point
tidak lagi bisa digunakan.
# umount <filesystem>
unalias
Kebalikan dari perintah alias, perintah ini akan membatalkan sebuah alias. Jadi
untuk membatalkan alias dir seperti telah dicontohkan diatas, gunakan perintah:
$ unalias dir

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


unzip
Digunakan untuk mengekstrak atau menguraikan file yang dikompres dengan zip.
Sintaknya sederhana dan akan mengekstrak file yang anda tentukan:
$ unzip <namafile>
Lihat juga perintah-perintah gzip dan unzip.
wall
Mengirimkan pesan dan menampilkannya di terminal tiap user yang sedang login.
Perintah ini berguna bagi superuser atau root untuk memberikan peringatan ke
seluruh user, misalnya pemberitahuan bahwa server sesaat lagi akan dimatikan.
# who Dear, everyone..... segera simpan pekerjaan kalian, server akan saya
matikan 10 menit lagi.
who
Untuk menampilkan siapa saja yang sedang login. Perintah ini akan menampilkan
informasi mengenai login name, jenis terminal, waktu login dan remote hostname
untuk setiap user yang saat itu sedang login. Misalnya:
$ who
root ttyp0 May 22 11:44
meong ttyp2 May 22 11:59
pooh ttyp3 May 22 12:08
xhost +
Perintah ini digunakan untuk memberi akses atau menghapus akses(xhost -) host
atau user ke sebuah server X.
xset
Perintah ini untuk mengeset beberapa option di X Window seperti bunyi bel,
kecepatan mouse, font, parameter screen saver dan sebagainya. Misalnya bunyi bel
dan kecepatan mouse dapat Anda set menggunakan perintah ini:
$ xset b <volume> <frekuensi> <durasi dalam milidetik>
$ xset m <akselerasi> <threshold>
zip
Perintah ini akan membuat dan menambahkan file ke dalam file arsip zip. Lihat juga
perintah gzip dan unzip.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q MAILING LIST LINUX

Milis id-linux

Milis 'resmi' yang memakai bahasa Indonesia adalah id-linux yang beberapa saat
lalu terpecah-pecah menjadi beberapa sub topik:
Linux Admin - Membicarakan administrasi sistem dan networking Linux.
Subscribe: linux-admin-subscribe@linux.or.id
Linux Aktivis - Membicarakan pengembangan dan pemasyarakatan Linux di
Indonesia.
Subscribe: linux-aktivis@linux.or.id
Linux Berita - Memberikan informasi tentang berita dan pengumuman kegiatan
Linux di Indonesia khususnya.
Subscribe: linux-berita-subscribe@linux.or.id
Linux Bursa - Jual-beli barang/jasa Linux, penawaran dan pencarian kerja di bidang
Linux.
Subscribe: linux-bursa-subscribe@linux.or.id
Linux Desktop - Diskusi cara penggunaan program aplikasi seperti KDE, Gnome,
StarOffice dsb.
Subscribe: linux-desktop-subscribe@linux.or.id
Linux Policy - Non teknis Linux misalnya GPL, Open Source.
Subscribe: linux-policy-subscribe@linux.or.id
Linux Programming - Diskusi mengenai pemrograman Linux, bahasa, teknik, trik
dan tips.
Subscribe: linux-programming-subscribe@linux.or.id
Linux Setup - Tempat yang menarik bagi newbie menanyakan masalah instalasi,
cara setup program dsb.
Subscribe: linux-setup-subscribe@linux.or.id

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Pendahuluan

Server adalah ibarat pelayan yang memiliki hak untuk mengatur. Kenapa

server disebut sebagai pelayan ? server disebut sebagai pelayan dikarenakan fungsi

server secara keseluruhan adalah memberi layanan (service) kepada client yang

saling terhubung satu sama lain dalam satu jaringan.

Sedangkan fungsi server dalam mengatur adalah bagaimana server mengatur

dalam memberi hak akses terhadap client yang terhubung dengan server tersebut.

Contohnya hak akses internet, akses directory, dll

Selain itu server dapat berfungsi sebagai dinding keamanan (firewall). Fungsi

server ini sangat penting dalam jaringan yang terhubung dengan jaringan luar

seperti internet. Server dapat berfungsi untuk membatasi dan menolak suatu

koneksi yang ingin merusak dan melakukan pencurian metadata.

Server dapat pula berfungsi sekaligus sebagai router yang menghubungkan

antara sebuah jaringan dengan jaringan yang lain tapi berbeda segmen.

Layanan yang diberikan server kepada client bermacam-macam. Layanan

tersebut dapat juga berupa service E-Mail, Domain, Web, Proxy, dll.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


MEMBANGUN SERVER

q Pendahuluan

Setiap kali anda meggunakan internet dalam kegiatan anda sehari-hari, maka
setiap kali itu pula secara tidak langsung anda menggunakan DNS (Domain Name
System). Penggunaan DNS meliputi aplikasi email (electronic-mail), browsing,
ssh/telnet, ftp, maupun aplikasi yang lain yang ada kaitannya dengan internet.
Fungsi utama dari sebuah sistem DNS adalah menerjemahkan nama-nama host
(hostnames) menjadi nomor IP (IP address) ataupun sebaliknya, sehingga nama
tersebut mudah diingat oleh pengguna internet. Fungsi lainnya adalah untuk
memberikan suatu informasi tentang suatu host ke seluruh jaringan internet.
Sebelum kita mulai instalasiBIND kita flashback dulu dengan sejarah internet, DNS
dan BIND, serta konsep DNS.
Sejarah Internet Pada akhir tahun 1960, US. Department of Defense Advanced
Research Projects Administration (ARPA/DARPA) mendanai percobaan dan riset
tentang jaringan komputer secara luas yang saling menghubungkan antar hampir
semua organisasi di Amerika yang akhirnya dikenal dengan sebutan
ARPAnet. Hasil dari riset tersebut email (electronic-mail) mulai digunakan.
Pada awal tahun 1980 protokol TCP/IP (Transmission Control Protocol/Internet
Protocol) mulai dikenalkan dan akhirnya menjadi protokol standar dalam struktur
jaringan ARPAnet. Jaringan ARPAnet berkembang pesat jumlahnya menjadi ribuan
host dan masih menggunakan standar protokol TCP/IP, dan akhirnya jaringan
tersebut dikenal dengan internet.
Pada tahun 1988, DARPA digantikan oleh National Science Foundation (NSF)
dalam pendanaan riset diikuti dengan penggantian dari ARPAnet menjadi NSFnet
sebagai tulang punggung (backbone) jaringan internet. Kemudian pada musim semi
tahun 1995, backbone internet melakukan transisi dari NSFnet (yang didanai oleh

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


publik) ke beberapa backbone komersil, dimana memungkinkan interknoneksi antar
jaringan bisa menjadi lebih jauh jaraknya. Penyedia backbone komersil tersebut
diantaranya adalah MCI dan Sprint serta pemain lama seperti UUNet dan PSINet.
Sejarah DNS Pada tahun 1970an jaringan ARPAnet hanya terdiri dari
beberapa ratus host saja. Pada waktu itu, sebuah file HOSTS.TXT yang berisi
tentang semua informasi host-hosts tersebut masih bisa melayani setiap permintaan
query dan menerjemahkan nama ke alamat IP (name-to-address-mapping).Pada
sistem operasi berbasis UNIX, file /etc/hosts merupakan hasil dari pengolahan file
HOSTS.TXT tersebut.
File HOSTS.TXT pada waktu itu dikelola oleh Stanford Research Insitute
Network Information Center (SRINIC) di Menlo Park, California. File tersebut
tersebut didistribusikan ke semua host dan penggunanya hanya 2 dengan
menggunakan satu buah host (mesin/komputer) saja. Petugas administrasi dari
ARPAnet biasanya mengirimkan email kepada SRI-NIC tentang perubahan
(termasuk penambahan maupun pengurangan) tentang informasi suatu host, dan
dalam periode tertentu, mereka melakukan transfer file HOSTS.TXT yang paling
baru (biasanya diperbaharui sekali dalam seminggu) dengan menggunakan protokol
ftp. Seiring dengan berkembangnya jaringan ARPAnetdan penggunaan protokol
TCP/IP, ukuran dari file HOSTS.TXT menjadi besar dengan bertambahnya jumlah
host yang bergabung dengan jaringan ARPAnet. Kemudian timbul beberapa
masalah dengan penggunaan file HOSTS.TXT ini, misalnya :
• Trafik dan Beban (Traffic and load) Beban mesin dan trafik (bandwith) di SRI-
NIC dalam mendistribusikan file menjadi lebih berat dan besar
• Penamaan yang saling bentrok (name collisions) Pada file HOSTS.TXT tidak
diperkenankan adanya dua buah nama host yang sama. Namun pada prakteknya,
tidak ada cara untuk mencegah seseorang untuk menambahkan nama yang sama
sehingga kemungkinan bisa menjadi bentrok dan pada akhirnya merusak skema
yang telah ada
• Keaslian (consistency) Mengelola keaslian dan keutuhan sebuah file antar
beberapa jaringan yang sedang berkembang pesat merupakan sesuatu hal yang
sulit dilakukan Berangkat dari masalah-masalah tersebut diatas, ARPAnet
membentuk suatu sistem alternatif pengganti dari sistem lama yang menggunakan

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


file HOSTS.TXT. Tujuannya adalah untuk memecahkan masalah dalam pengelolaan
tabel host yang sangat beraneka ragam dan masih menggunakan metode
sentralisasi. Pada sistem yang baru, seorang sistem administrator memungkinkan
untuk mengelola data secara lokal, namun akan selalu update secara global di
internet. Sistem yang menggunakan metode desentralisasi ini diharapkan akan
mengurangi beban dan trafik, serta pengelolaan data dan proses update dari
sebuah informasi akan menjadi lebih mudah.
Paul Mockapertis dari University of Southern California Information Science
Institute di Marina del Rey, California, dipilih sebagai orang yang bertanggung jawab
terhadap rancangan, desain, arsitektur dan implementasi dari sistem pengelolaan
data host yang baru. Pada tahun 1984 beliau merilis RFC (Request For Comment)
882 dan RFC 883 yang menjelaskan tentang Domain Name System (DNS).
Kemudian disusul dengan RFC 1034 dan RFC 1035 yang juga menambahkan
tentang masalah kemanan DNS, penerapan (implementasi), pengelolaan
(adminstrative),mekanisme pembaharuan data secara dinamis, serta kemanan data
dalam sebuah domain dan lain-lainnya.
(DNS and BIND 3rd Edition, Paul Albitz & Cricket Liu, 1998 Hal 3)
Konsep dan hirarki DNS DNS adalah suatu bentuk database yang terdistribusi,
dimana pengelolaan secara lokal terhadap suatu data akan segera diteruskan ke
seluruh jaringan (internet) dengan menggunakan skema client-server. Suatu
program yang dinamakan name server, mengandung semua segmen informasi dari
database dan juga merupakan resolver bagi client-client yang berhubungan ataupun
menggunakannya.
Struktur dari database DNS bisa diibaratkan dengan dengan struktur file dari
sebuah sistem operasi UNIX. Seluruh database digambarkan sebagai sebuah
struktur terbalik dari sebuah pohon (tree) dimana pada puncaknya disebut dengan
root node. Pada setiap node dalam tree tersebut mempunyai keterangan (label)
misalnya, .org, .com, .edu, .net, .id dan lain-lainnya, yang relatif rerhadap puncaknya
(parent).Ini bisa diibaratkan dengan relative pathname pada sistem file UNIX,seperti
direktori bin, usr, var, etc dan lain sebagainya. Pada puncak root node dalam
sebuah sistem DNS dinotasikan dengan ”.” atau ”/” pada sistem file UNIX.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar DNS namespace

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Pada setiap node juga merupakan root dari subtree, atau pada sistem file UNIX
merupakan root direktori dari sebuah direktori. Hal ini pada sistem DNS disebut
dengan nama domain. Pada tiap domain juga memungkinkan nama subtree dan
bisa berbeda pula, hal ini disebut subdomain atau subdirektori pada sistem file
UNIX. Pada bagian subdomainjuga memungkinkan adanya subtree lagi yang bisa
dikelola oleh organisasi yang berbeda dengan domain utamanya.

(DNS and BIND 3rd Edition, Paul Albitz & Cricket Liu, 1998 Hal 4)
Sejarah BIND Program DNS yang bernama JEEVES pertama kali
diimplementasikan dan ditulis sendiri oleh Paul Mockapertis. Kemudian diteruskan
oleh BIND (versi 4.8.3) yang diimplementasikan pada sistem operasi 4.3 BSD UNIX
yang ditulis oleh Douglas Terry, Mark Painter, David Riggle dan Songnian Zhou dari
Computer Systems Research Group (CSRG) pada Universitas California di
Berkeley. Pada tahun antara 1985-1987, Kevin Dunlap seseorang dari Digital
Equipment Corporation (DEC) bergabung dengan CSRG yang kemudian diikuti oleh
Doug Kingston, Craig Partridge, Smoot Carl- Mitchell, Mike Muuss, Jim Bloom dan
Mike Schwartz. Pemimpin dari proyek ini adalah Mike Karels dan O. Kure.
BIND versi 4.9 dan 4.9.1 kemudian dirilis oleh DEC (yang sekarang diakusisi
oleh Compaq Computer Corporation). Pemimpin dari proyek ini adalah Paul Vixie
yang merupakan karyawan dari DEC serta dibantu oleh Phil Almquist, Robert Elz,
Alan Barrett, Paul Albitz, Bryan Beecher, Andrew Partan, Andy Cherenson, Tom
Limoncelli, Berthold Paffrath, Fuat Baran, Anant Kumar, Art Harkin, Win Treese, Don

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Lewis, Christophe Wolfhugel, dan lain-lainnya. BIND versi 4.9.2 kemudian diambil
alih oleh Vixie Enterprises, dan Paul Vixie menjadi arsitek dan programmernya.
BIND mulai dari versi 4.9.3 dan seterusnya kemudian diambil alih oleh Internet
Software Consortium (ISC) dan akhirnya untuk pertama kalinya, pada tanggal 8 Mei
1997 Bob Halley dan Paul Vixie merilis versi BIND untuk keperluan produksi.
Sekarang BINDversi 4 sudah mulai jarang digunakan, dan sebagai penggantinya
adalah BIND versi 8 dan versi 9. (http://www.isc.org/products/BIND/bind-
history.html)
Cara kerja DNS Ketika anda melakukan query (bisa berupa ping, ssh, dig, host,
nslookup, email, dan lain sebagainya) ke sebuah host misalnya local.bpgupg.go.id
maka name server akan memeriksa terlebih dahulu apakah ada record host tersebut
di cache name server lokal. Jika tidak ada, name server lokal akan melakukan query
kepada root server dan mereferensikan name server untuk TLD .edu , name server
lokal kembali melakukan query kepada name server .edu dengan jenis query yang
sama dan mereferensikan local.bpgupg.go.id . Name server lokal kembali
melakukan query ke name server local.bpgupg.go.id dan mereferensikan query
selanjutnya ke name server lokal yaitu local.bpgupg.go.id . Kemudian name server
lokal melakukan query kepada name server lokal yaitu ee.linux dan akhirnya
mendapatkan jawaban address yang diminta.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Instalasi DNS Server

Apabila anda melakukan instalasi linux melalui media instalasi CD, maka pada
saat pemilihan paket-paket instalasi anda dapat menginstall sekaligus paket BIND
yang dibutuhkan untuk DNS Server. Yaitu dengan memberi tanda centang pada
Network Server, Simple Web Server, LDAP Server and Tools. Perhatikan kembali
proses instalasi pada Section Software. Jadi pada bagian ini tidak dijelaskan
bagaimana cara menginstall BIND. Dikarenakan linux yang dinstall telah menginstall
paket-paket BIND.

q Instalasi DNS Server

Secara Default setelah linux anda terinstall maka direktori yang perlu anda edit
adalah /etc/named.conf , /etc/resolv.conf , /var/lib/named . contoh kali ini kita akan
membuat server dengan nama domain linux.net dan nama host adalah server.
Domain dan host berkaitan erat pada pembuatan DNS Server. Sekarang kita akan
memulai pembuatan DNS Server.
Masuklah kedalam direktori /var/lib/named dan lihat isi direktori tersebut.
root:~# cd /var/lib/named
root:/var/lib/named# ls
Setelah anda menjalankan perintah ls maka linux akan menampilkan isi default
direktori /var/lib/named yaitu :
root:/var/lib/named# ls
. .. slave 127.0.0.zone localhost.zone root.hint

Salinlah file 127.0.0.zone didalam direktori /var/lib/named/ dengan nama file


192.168.0.zone . file ini sesuai dengan segmen IP yang disetting pada Ethernet card
yaitu 192.168.0.1
root:/var/lib/named# cp 127.0.0.zone 192.168.0.zone /var/lib/named
Setelah anda menyalin file 127.0.0.zone maka editlah 192.168.0.zone dengan
menggunakan perintah vi atau pico
root:/var/lib/named# pico 192.168.0.zone
Isi fle tersebut masih sama dengan 127.0.0.zone karena file 192.168.0.zone disalin
dari file 127.0.0.zone. maka anda harus mengedit file 192.168.0.zone dengan isi
seperti berikut.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


$TTL 86400
@ IN SOA server.linux.net. root.linux.net. (
11 ; serial
28800 ; refresh
14400 ; retry
3600000 ; expiry
86400 ) ; minimum

IN NS linux.net.
IN NS server.linux.net.
1 IN PTR server.linux.net.
Lalu save file tersebut dan keluarlah dari text editor pico. Salinlah file
192.168.0.zone didalam direktori /var/lib/named/ dengan nama file db/linux.net. file
root:/var/lib/named# cp 192.168.0.zone db.linux.net /var/lib/named
Setelah anda menyalin file 192.168.0.zone maka editlah db.linux.net dengan
menggunakan perintah vi atau pico
root:/var/lib/named# pico db.linux.net
Isi file dari db.linux.net adalah :
$TTL 86400
@ IN SOA server.linux.net. root.linux.net. (
12 ; serial
28800 ; refresh
14400 ; retry
3600000 ; expiry
86400 ) ; minimum

IN NS linux.net.
IN NS server.linux.net.
1 IN PTR server.linux.net.
IN MX 10 server.linux.net.
localhost IN A 127.0.0.1
server IN A 192.168.0.1
www IN CNAME server.linux.net.
mail IN CNAME server.linux.net.
smtp IN CNAME server.linux.net.
pop3 IN CNAME server.linux.net.
ftp IN CNAME server.linux.net.

Isi fle tersebut masih sama dengan 127.0.0.zone karena file 192.168.0.zone disalin
dari file 127.0.0.zone. maka anda harus mengedit file 192.168.0.zone dengan isi
seperti berikut.
Simpan file diatas lalu keluar dari text editor pico. Pada file diatas terdapat resources
record yaitu IN NS, IN PTR, IN MX, IN A, IN CNAME. Maksud record db file tersebut
adalah :
SOA record
Mengindikasikan otoritas dari sebuah zone file
NS record
Mengindikasikan daftar nama server

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Other records
Menjelaskan mengenai data dari zone file tersebut, Record ini berupa :
A
Mengubah Nama menjadi Alamat IP
PTR
Mengubah Nama IP menjadi Nama
CNAME
Menjelaskan nama Alias

Setelah itu editlah file /etc/named.conf


root:/var/lib/named# cd /etc/
root:/var/lib/named# pico named.conf
Default dari isi file named.conf sebelum diedit adalah :
# Copyright (c) 2001 SuSE GmbH Nuernberg, Germany
#
# Author: Frank Bodammer <feedback@suse.de>
#
# /etc/named.conf
#
# This is a sample configuration file for the name server
# BIND9.
# It works as a caching only name server without
# modification.
#
# A sample configuration for setting up your own domain can
# be found in /usr/share/doc/packages/bind8/sample-config.
#
# A description of all available options can be found in
# /usr/share/doc/packages/bind8/html/options.html

options {

# The directory statement defines the name server's


# working directory

directory "/var/lib/named";

# The forwarders record contains a list of servers to


# which queries should be forwarded. Enable this line
# and
# modify the IP-address to your provider's name server.
# Up to three servers may be listed.

#forwarders { 10.11.12.13; 10.11.12.14; };

# Enable the next entry to prefer usage of the name

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


# server declared in the forwarders section.

#forward first;

# The listen-on record contains a list of local network


# interfaces to listen on. Optionally the port can be
# specified. Default is to listen on all interfaces
# found
# on your system. The default port is 53.

#listen-on port 53 { 127.0.0.1; };

# The next statement may be needed if a firewall stands


# between the local server and the internet.

#query-source address * port 53;

# The allow-query record contains a list of networks or


# IP-addresses to accept and deny queries from. The
# default is to allow queries from all hosts.

#allow-query { 127.0.0.1; };

# The cleaning-interval statement defines the time


# interval
# in minutes for periodic cleaning. Default is 60
# minutes.
# By default, all actions are logged to
# /var/log/messages.

cleaning-interval 120;

# Name server statistics will be logged to


# /var/log/messages
# every <statistics-interval> minutes. Default is 60
# minutes.
# A value of 0 disables this feature.

statistics-interval 0;

# If notify is set to yes (default), notify messages


# are
# sent to other name servers when the the zone data is
# changed. Instead of setting a global 'notify'
# statement
# in the 'options' section, a separate 'notify' can be
# added to each zone definition.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


notify no;
};

# The following three zone definitions don't need any


# modification.
# The first one defines localhost while the second defines
# the
# reverse lookup for localhost. The last zone "." is the
# definition of the root name servers.

zone "localhost" in {
type master;
file "localhost.zone";
};

zone "0.0.127.in-addr.arpa" in {
type master;
file "127.0.0.zone";
};

zone "." in {
type hint;
file "root.hint";
};

# You can insert further zone records for your own domains
below.

Edit file named.conf dan tambahkan baris berikut pada bagian akhir file named.conf
root:/etc# pico named.conf
Bagian yang ditambahkan adalah :
zone "0.168.192.in-addr.arpa" in {
type master;
file "192.168.0.zone";
};

zone "linux.net" in {
type master;
file "db.linux.net";
};

Simpan file tersebut, lalu keluar dari editor pico. Sekarang kita edit file resolv.conf
pada direktori /etc/resolv.conf
root:/etc# pico resolv.conf

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Sedangkan isi dari file resolv.conf adalah :
domain linux.net
nameserver 192.168.0.1
nameserver 127.0.0.1
search linux.net
Setelah semuanya telah selesai maka jalankan service named
root:/etc# /etc/init.d/named start
Atau anda bias menggunakan perintah.
root:/etc# rcnamed start
Lalu anda bisa melihat apakah hasil konfigurasi DNS server anda telah berjalan apa
tidak jalankan perintah dibawah ini untuk melihat zone file yang error.
root:/etc# less /var/log/messages
Feb 15 12:54:18 named[25139]: starting BIND 9.2.2rc1 -u named -c
/usr/local/named/etc/named.conf
Feb 15 12:54:18 named[25139]: using 1 CPU
Feb 15 12:54:18 named[25139]: loading configuration from
’/usr/local/named/etc/named.conf’
Feb 15 12:54:18 named[25139]: no IPv6 interfaces found
Feb 15 12:54:18 named[25139]: listening on IPv4 interface lo, 127.0.0.1#53
Feb 15 12:54:18 named[25139]: listening on IPv4 interface eth0, 192.168.0.1#53
Feb 15 12:54:18 named[25139]: command channel listening on 127.0.0.1#53
Feb 15 12:54:18 named[25139]: zone 0.168.192.in-addr.arpa/IN: loaded serial 9
Feb 15 12:54:18 named[25139]: zone 0.0.127.in-addr.arpa/IN: loaded serial 10
Feb 15 12:54:18 named[25139]: zone localhost/IN: loaded serial 11
Feb 15 12:54:18 named[25139]: zone db.linux.net/IN: loaded serial 12
Feb 15 12:54:18 named[25139]: running
Jalankan perintah dig untuk mengecek apa server DNS yang anda buat sudah
berjalan dengan baik apa tidak.
root:/etc# dig –x 192.168.0.1
; <<>> DiG 9.2.2rc1 <<>> -x 192.168.0.1
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 30843
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;0.168.192.in-addr.arpa. IN PTR

;; ANSWER SECTION:
0.168.192.in-addr.arpa. 86400 IN PTR server.linux.net.

;; AUTHORITY SECTION:
0.168.192.in-addr.arpa. 86400 IN NS server.linux.net.

;; ADDITIONAL SECTION:
server.linux.net. 86400 IN A 192.168.0.1
;; Query time: 1 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sat Feb 15 14:53:44 2003
;; MSG SIZE rcvd: 142

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Pendahuluan

Web Server adalah software server yang menjadi tulang belakang dari World
Wide Web (WWW). Web server menunggu permintaan dari client yang
menggunakan browser seperti netscape navigator, Internet Explorer, modzilla, dan
program browser lainnya. Jika ada permintaan dari browser, maka web server akan
memproses permintaan itu dan kemudian memberikan hasil prosesnya berupa data
yang diinginkan kembali ke browser. Data ini mempunyai format yang standar
disebut dengan format SGML ( Standard General Markup Language). Data yang
berupa format ini kemudian akan ditampilkan oleh browser sesuai dengan
kemampuan browser itu. Contohnya ialah bila data yang dikirim berupa data
gambar, browser yang hanya mampu menampilkan text (misalnya lynx) tidak akan
mampu menampilkannya dan jika ada akan menampilkan alternatifnya saja.

Web Server, untuk berkomunikasi dengan clientnya (web browser)


mempunyai protokol sendiri yaitu HTTP (HyperText Transfer Protocol). Dengan
protokol ini, komunikasi antar web server dengan clientnya (browser) dapat saling
dimengerti dan lebih mudah.

Seperti telah dijelaskan diatas, Standar format data pada World Wide Web
adalah SGML. Tapi sudah menjadi hal yang umum bahwa para pengguna internet
lebih banyak menggunakan format HTML (HyperText Markup Language) karena
penggunaannya yang lebih sederhana dan mudah dipelajari.

Kata HyperText mempunyai arti bahwa seorang pengguna internet dengan


web browsernya dapat membuka dan mambaca dokumen-dokumen yang ada
dalam komputernya atau bahkan komputer yang jauh tempatnya sekalipun. Hal ini
memberikan cita rasa dari suatu proses yang tridimensional, artinya pengguna
internet dapat membaca dari satu dokumen ke dokumen yang lain hanya dengan
mengklik beberapa bagian dari halaman-halaman dokumen (web) itu.

Proses yang dimulai dari permintaan webclient (browser), diterima web


server, diproses, dan dikembalikan hasil prosesnya oleh web server ke webclient
lagi dilakukan secara transparan. Setiap orang dapat dengan mudah mengetahui
apa yang terjadi pada tiap-tiap proses. Secara garis besarnya web server hanya
memproses semua masukan yang diperolehnya dari web clientnya.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Untuk membuat sebuah web server, maka kita akan menemukan berbagai
macam persoalan, dimulai dari pemilihan software web browser yang manayang
paling sesuai kebutuhan, apa spesifikasi hardware yang dibutuhkan, bagaimana
kondisi interkoneksi jaringan internet yang ada, dan lain sebagainya. Belum lagi
termasuk bagian pembuatan halaman-halaman webnya, mau menggunakan format
apa (HTML, SGML, PHP, PHP3, CGI, dan lain-lain). Hal yang paling utama dalam
proses pembuatan Web Server adalah memilih software mana yang akan digunakan
sebagai web server kita.Untuk itu, perlu adanya beberapa pertimbangan sebagai
berikut :
1. Komersial lawan Freeware (software gratis).

2. Kemudahan instalasi

3. Kemudahan mengonfigurasi

4. Kemudahan untuk menambah atau mengubah periferalnya.

5. Kemampuan software.

6. Besar ruang yang dibutuhkan untuk menyimpan file-file minimal yang

dibutuhkan agar software berfungsi dengan baik

7. Prospek software tersebut dimasa yang akan datang

8. Performasi dan konsumsi sumber daya yang digunakan software itu.

9. Fasilitas apa yang mampu didukung software itu.

10. Dukungan Teknis (mempunyai site-site atau mailis untuk bertanya bila terjadi

masalah).

11. Dukungan Platform (jenis sistem operasi apa saja yang dapat menjalankan

software tersebut)

12. Dukungan terhadap third party (Apakah software ini dapat ditambahkan

software tambahan sebagai pelengkap)

q APACHE WEB SERVER

Banyak sekali software web server yang berada di internet. Dengan


berdasarkan pada 12 macam pertimbangan diatas, maka dapat dipilih software
mana saja yang cocok dengan kebutuhan kita.Misalnya : Kita memasang web
server untuk keperluan suatu perusahaan jasa internet (ISP ), maka pertimbangan
yang harus diambil adalah apakah mereka menginginkan software yang gratis atau

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


komersial. Keuntungan dari software komersial adalah mereka punya dukungan
teknis dan dokumentasi yang lengkap, sedang pada kebanyakan software gratis
tidak punya. Namun ada juga software gratisan yang mempunyai dukungan teknis
dari pembuatnya dan dengan dokumentasi yang lengkap. Salah satu software web
server gratisan seperti itu adalah Web server Apache. Web server Apache
mempunyai kelebihan dilihat dari beberapa pertimbangan diatas:

• Apache termasuk dalam kategori freeware (software gratisan)


• Apache mudah sekali proses instalasinya jika dibanding web server lainnya
seperti NCSA, IIS, dan lain-lain.

Mampu beroperasi pada berbagai platform sistem operasi seperti : AUX 3.1,
BSDI 2.0, FreeBSD 2.1, HP-UX 9.07, IRIX 5.3, Linux, NetBSD 1.1, NEXTSTEP,
SolarisX86 2.5, Solaris 2.4, Solaris 2.5, SunOS 4.1.3, UnixWare 1.1.2. Apache
mudah untuk mengkonfigurasinya karena hanya mempunyai satu file konfigurasi.

Apache Web server mudah dalam menambahkan periferal lainnya ke dalam


platform web servernya, misalnya : untuk menambahkan modul, cukup hanya
menset file konfigurasinya agar mengikutsertakan modul itu kedalam kumpulan
modul lain yang sudah dioperasikan.
Features atau ciri khas dari web server Apache adalah :

1. Dapat dijadikan pengganti bagi NCSA web server.

2. Perbaikan terhadap kerusakan dan error pada NCSA 1.3 dan 1.4

3. Apache web server dalam merespon client sangat cepat jauh melebihi server

NCSA.

4. Mampu di kompilasi sesuai dengan spesifikasi HTTP yang sekarang.

5. Apache menyediakan feature untuk multihomed dan virtual server.

6. Kita dapat men-set respon error yang akan dikirim web server dengan

menggunakan file atau skrip.

7. Server Apache dapat otomatis berkomunikasi dengan client browsernya

untuk menampilkan yang tampilan terbaik pada client browsernya. Misalnya

browser ingin menampilkan dalam bahasa Spanyol, maka Apache web server

otomatis mencari dalam servicenya halaman-halaman dengan bahasa Spanyol.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


8. Webserver Apache secara otomatis menjalankan file index.html, halaman

utamanya, untuk ditampilkan secara otomatis pada clientnya.

9. Webserver Apache mempunyai level-level pengamanan.

10. Apache mempunyai komponen dasar terbanyak di antara webserver-

webserver lain, yang berarti bahwa webserver Apache termasuk salah satu

dari webserver yang lengkap.

11. Ditinjau dari segi sejarah perkembangan dan prospeknya di masa yang akan

datang, Apache web server mempunyai prospek yang cerah. Apache berasal

dari webserver NCSA yang kemudian dikembangkan karena NCSA masih

mempunyai kekurangan dibidang kompatibilitasnya dengan sistem operasi lain.

Sampai saat ini, webserver Apache terus dikembangkan oleh team dari

apache.org.

12. Performansi dan konsumsi sumberdaya (resource) dari webserver apache

tidak terlalu banyak, hanya sekitar 20 MB untuk file-file dasarnya dan setiap

daemonnya hanya memerlukan sekitar 950 KB memory per-child.

13. Mendukung transaksi yang aman (secure transaction) menggunakan SSL

(Secure Socket Layer).

14. Mempunyai dukungan teknis melalui web.

15. Mempunyai kompatibilitas platform yang tinggi.

16. Mendukung third party berupa modul-modul tambahan.

q MODUL PHP PADA APACHE WEB SERVER

Apache web server mendukung penambahan modul-modul. Diantara modul


yang sering dipakai adalah modul PHP. PHP (Personal Homep Page Tool) adalah
salah satu jenis aalat yang digunakan untk membuat halaman web anda menjadi
lebih menarik, lebih aman, dan lebih dinamik. Pada dasrnya PHP miirip dengan
bahsa script yang lainnya seperti asp, Javascript , Visual BASic atau yang lainnya,
namun keuntungannya adalah pada PHP tidak diperlukan tambahan pada sisi

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


webclient seperti halnya Javascript dan Visual Basic script, sehingga lebih luas
penggunaannya.
Beberapa keunggulan PHP dibandingkan dengan yang lain :
• Autentikasi http menggunakan PHP menggunakan fungsi header() yang ada

dalam modul apache PHP.

• Pembuatan file GIF menggunakan library GD yang dikompilasi saat

menginstall php.

• PHP dapat menerima metoda upload file

• Mendukung penggunaan cookie

• Mendukung integrasi dengan database

• Mendukung ekspresi regular seperti ereg(), ereg_replace() dan lainnya.

• Penanganan kesalahan berdasarkan tingkat kesalahan.

q INSTALASI APACHE dan PHP


Proses instalasi dari source agak sedikit memakan waktu sebab anda harus
melakukan proses tambahan, tapi dengan begitu akan membuat anda lebih
mengetahui apa saja yang anda masukkan ke dalam webserver Apache anda
nantinya, disamping itu juga dapat memberikan kesempatan untuk memasang
sendiri modul-modul ke dalam webserver Apache anda. Banyak dari modul-modul
ini menyediakan fungsi-fungsi yang akan menambah kehandalan webserver anda.
Diantaranya adalah modul PHP yang akan diinstall bersamaan dengan instalasi
Apache. Instalasi yang dilakukan di modul ini juga akan mengintegrasikan Apache
dan PHP dengan MySQL sebagai database server.

Sebelum instalasi anda harus menyediakan terlebih dahulu source yang diperlukan
yang dapat didownload di :
• http://www.apache.org
• http://www.php.net

Anda dapat memilih sendiri versi apache dan php yang ingin diinstall di mesin anda.
Tentunya memilih versi yang lebih baru akan lebih stabil hasilnya. Setelah anda
download source tersebut sebaiknya semua source ditaruh dalam satu direktori
untuk memudahkan proses installasi , misalnya di direktori /tmp, lalu diekstrak.
# cd /tmp
# tar zxvpf apache_versi.tar.gz
# tar zxvpf php-versi.tar.gz

Selanjutnya apache harus dikonfigurasi awal.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


# cd apache_versi/
# ./configure

Bila konfigurasi awal sudah selesai, anda pindah ke direktori php untuk konfigurasi
modul php dan mengintegrasikannya dengan apache dan mysql
# cd ../php-versi/
# ./configure --with-apache=../apache_versi \
--with-mysql --enable-track-vars

Setelah itu php dikompilasi dan diinstall


# make && make install
Kemudian anda copykan file php.ini–dist yang ada di source php ke direktori
/usr/local/lib dan diberi nama php.ini
# cp php.ini–dist /usr/local/lib/php.ini

Kemudian anda kembali ke direktori apache untuk konfigurasi ulang dan


mengaktifkan modul php (yaitu php4).
# cd ../apache_versi
# ./configure --activate-module=src/modules/php4/libphp4.a

Lalu kompile dan install apache


# make && make install

Sampai disini instalasi apache dan PHP sudah selesai. Selanjutnya anda harus
melakukan konfigurasi apache agar berjalan sesuai dengan kebutuhan anda
q MEMONITOR AKTIFITAS WEB SERVER
Pada bagian sebelumnya, telah dipelajari penginstallasian dan
pengoperasian WebServer. Pengoperasian WebServer termasuk juga penggunaan
pencatatan atau logger. Ada tiga macam log yang harus diperhatikan yaitu server
log, access log dan error log.
server.log
Adalah logging yang dilakukan oleh server yang dicatat dalam file
/var/log/messages. Fungsi file ini adalah mencatat kejadian-kejadian tertentu pada
server anda. Namun demikian, file ini hanya diperiksa apabila ternyata webserver
tidak jalan karena sesuatu kesalahan. Biasanya tidak hanya melihat file ini saja, tapi
juga harus melihat file log yang lainnya.
access.log
File ini mencatat semua akses yang dilakukan terhadap web server anda.
Sebenarnya program penganalisa juga mengambil data dari file ini kemudian
diproses menjadi data statistik yang enak dibaca dan dimengerti orang.
Misal konfigurasi log anda pada file httpd.conf adalah sebagai berikut :
ErrorLog /web/logs/error_log

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


LogLevel warn
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-
Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
CustomLog /web/logs/access_log common

Maka akan tampil pada file httpd-access.log format seperti ini :

192.168.0.101 - - [26/Jun/2001:07:09:46 +0700] "GET / HTTP/1.0" 200


1310
192.168.0.105 - - [26/Jun/2001:07:10:50 +0700] "GET
/usage/index.html HTTP/1.0"
403 296
192.168.0.105 - - [26/Jun/2001:07:11:27 +0700] "GET /test.php
HTTP/1.0" 200 387
46
192.168.0.205 - - [26/Jun/2001:07:17:08 +0700] "GET / HTTP/1.0" 200
1310
192.168.0.198 - - [26/Jun/2001:07:17:20 +0700] "GET / HTTP/1.0" 200
1310
192.168.0.104 - - [26/Jun/2001:09:42:31 +0700] "GET
/icons/unknown.gif HTTP/1.
1" 404 305
192.168.0.104 - - [26/Jun/2001:09:42:31 +0700] "GET
/icons/compressed.gif HTTP
/1.1" 404 308
192.168.0.104 - - [26/Jun/2001:09:42:31 +0700] "GET
/icons/binary.gif HTTP/1.1
" 404 304
192.168.0.104 - - [26/Jun/2001:09:42:36 +0700] "GET / HTTP/1.1" 200
1310
192.168.0.104 - - [26/Jun/2001:09:42:36 +0700] "GET /apache_pb.gif
HTTP/1.1" 2
00 2326
192.168.0.104 - - [26/Jun/2001:09:42:43 +0700] "GET /~admin
HTTP/1.1" 301 338
192.168.0.104 - - [26/Jun/2001:09:42:43 +0700] "GET /icons/blank.gif
HTTP/1.1"
404 303
192.168.0.104 - - [26/Jun/2001:09:42:43 +0700] "GET
/icons/unknown.gif HTTP/1.
1" 404 305
192.168.0.104 - - [26/Jun/2001:09:42:43 +0700] "GET /icons/back.gif
HTTP/1.1"
404 302
192.168.0.104 - - [26/Jun/2001:09:42:43 +0700] "GET
/icons/compressed.gif HTTP
/1.1" 404 308
192.168.0.104 - - [26/Jun/2001:09:42:43 +0700] "GET
/icons/binary.gif HTTP/1.1

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


" 404 304

Tiap-tiap baris menunjukan format seperti yang dijelaskan sebelumnya.


Semua hasil log tidak mempunyai remote Logname dan remote user, karena secara
default kedua log enviroment ini memang tidak diisi, namun ada juga yang
mengisinya untuk tujuan tertentu misalnya pada aplikasi yang menggunakan
cookies.
Penggunaan terlalu banyak aksesori pada web akan ikut mempengaruhi log
anda. Tentu akan semakin mempercepat pembengkakan access.log karena apache
akan mencatat setiap proses mengambilan data baik gambar, maupun tulisan.
Penggunaan script atau Active-X justru menghemat space untuk log anda.
error.log
File ini mencatat setiap kesalahan yang terjadi pada web server, apakah
kesalahan itu pada file konfigurasinya sehingga apache tidak mau jalan, atau hanya
berupa kesalahan pada pembuatan webnya. Pada error.log, LogLevel berpengaruh
dari segi seberapa banyak informasi kesalahan yang akan dituliskan dalam file
error.log ini. Contoh tampilan file error.log adalah :

[Tue Jun 26 04:24:32 2001] [error] [client 192.168.0.107] no


acceptable varian
t: /web/htdocs/index.html
[Tue Jun 26 04:25:00 2001] [error] [client 192.168.0.107] no
acceptable varian
t: /web/htdocs/index.html
[Tue Jun 26 04:25:17 2001] [error] [client 192.168.0.107] File does
not exist:
/web/htdocs/~index.html
[Tue Jun 26 04:25:29 2001] [error] [client 192.168.0.107] File does
not exist:
/web/htdocs/ndex.html
[Tue Jun 26 04:29:25 2001] [error] [client 192.168.0.104] client
denied by ser
ver configuration: /web/htdocs/usage
[Tue Jun 26 04:34:03 2001] [notice] SIGHUP received. Attempting to
restart
[Tue Jun 26 04:34:03 2001] [notice] Apache/1.3.17 (Unix)
mod_perl/1.24_01 PHP/4.
0.4pl1 configured -- resuming normal operations
[Tue Jun 26 06:07:55 2001] [notice] caught SIGTERM, shutting down
[Tue Jun 26 06:09:25 2001] [notice] Apache/1.3.17 (Unix)
mod_perl/1.24_01 PHP/4.
0.4pl1 configured -- resuming normal operations
[Tue Jun 26 06:25:50 2001] [notice] caught SIGTERM, shutting down
[Tue Jun 26 06:27:25 2001] [notice] Apache/1.3.17 (Unix)
mod_perl/1.24_01 PHP/4.
0.4pl1 configured -- resuming normal operations
[Tue Jun 26 07:10:50 2001] [error] [client 192.168.0.105] client
denied by serv
er configuration: /web/htdocs/usage/index.html

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


[Tue Jun 26 09:42:02 2001] [error] [client 192.168.0.104] File does
not exist:
/web/htdocs/icons/image2.gif
[Tue Jun 26 09:42:12 2001] [error] [client 192.168.0.104] File does
not exist:
/web/htdocs/icons/blank.gif
[Tue Jun 26 09:42:12 2001] [error] [client 192.168.0.104] File does
not exist:
/web/htdocs/icons/back.gif
[Tue Jun 26 09:42:12 2001] [error] [client 192.168.0.104] File does
not exist:
/web/htdocs/icons/image2.gif
[Tue Jun 26 09:42:31 2001] [error] [client 192.168.0.104] File does
not exist:
/web/htdocs/icons/back.gif
[Tue Jun 26 09:42:31 2001] [error] [client 192.168.0.104] File does
not exist:
/web/htdocs/icons/blank.gif
[Tue Jun 26 09:42:31 2001] [error] [client 192.168.0.104] File does
not exist:
/web/htdocs/icons/unknown.gif

Jadi isi file ini adalah pesan-pesan kesalahan (error) dan juga pemberitahuan
pengoperasian httpdnya (notice). Dengan melihat error.log, akan ketahuan apakah
web anda mengalami kesalahan pada waktu pembuatan, misal pada contoh file
does not exist menandakan bahwa ada file yang hilang atau tidak sempat di ambil.

q MENGAMATI LOG MENGGUNAKAN SOFTWARE WEBALIZER


Selain melihat secara langsung file-file log tersebut, ada cara yang lebih
mudah, yaitu menggunakan software logger seperti webalizer. Software ini akan
membaca file acces.log dan melakukan perhitungan. Sebelum menginstallnya anda
ambil sourcenya di ftp sitenya (ftp://ftp.mrunix.net/pub/webalizer). Untuk modul ini
digunakan webalizer versi 1.30

Kemudian installasi dapat dilakukan dengan perintah sebagai berikut :


# tar zxvpf webalizer-1.30-04-src.tar.Z
# cd webalizer-1.30-04/
# ./configure –-enable-dns
Lebih jelasnya lihat helpnya (./configure –help)
# make && make install

Setelah selesai installasinya, maka anda copy file /etc/webalizer.conf.sample


ke /usr/local/etc/webalizer.conf kemudian editlah file ini. Ubah bagian yang penting
saja, misalkan direktori web anda ada di /web, maka perubahannya adalah :

LogFile /web/logs/access_log
OutputDir /web/htdocs/stat
HistoryName webalizer.hist
IncrementalName webalizer.current

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


HostName nama.host.anda
HideSite *nama.host.anda

Setelah itu, maka jalankan saja perintah :


# /usr/local/bin/webalizer –c /usr/local/etc/webalizer.conf

secara otomatis, program akan menganalisa data-data pada access.log dan


mengubahnya menjadi data stasitik. Akan muncul pesan sebagai berikut :

Webalizer V1.30-04 (Linux 2.2.14-5.0) English


Using logfile /var/httpd/logs/access_log
Creating output in /var/httpd/htdocs/usage
Hostname for reports is 'trans.si.linux.net'
History file not found...
Warning: Truncating oversized request field
Warning: Truncating oversized request field
Warning: Truncating oversized request field
Generating report for September 2001
Generating summary report
Saving history information...
1452 records in 0.56 seconds

Setelah selesai, maka akan diperoleh pada direktori outputdir seperti berikut :
-rw-r--r-- 1 root root 16209 Sep 9 05:42 ctry_usage_200108.gif
-rw-r--r-- 1 root root 16261 Sep 9 05:42 ctry_usage_200109.gif
-rw-r--r-- 1 root root 23265 Sep 9 05:42 daily_usage_200108.gif
-rw-r--r-- 1 root root 25767 Sep 9 05:42 daily_usage_200109.gif
-rw-r--r-- 1 root root 18517 Sep 9 05:42 hourly_usage_200108.gif
-rw-r--r-- 1 root root 17620 Sep 9 05:42 hourly_usage_200109.gif
-rw-r--r-- 1 root root 4295 Sep 9 05:42 index.html
-rw-r--r-- 1 root root 19205 Sep 9 05:42 usage.gif
-rw-r--r-- 1 root root 69127 Sep 9 05:42 usage_200108.html
-rw-r--r-- 1 root root 61864 Sep 9 05:42 usage_200109.html
-rw-r--r-- 1 root root 69 Sep 9 05:42 webalizer.hist

Selesailah installasi program logger webalizer. Perlu diingat bahwa program


ini harus dijalankan periodik secara manual atau dapat ditambahkan pada script
/etc/monthly yang akan menjalankan program ini secara otomatis tiap bulannya.

q MENGATUR AKSES KE WEB SERVER APACHE


Terkadang ada beberapa bagian web yang tidak boleh diakses oleh
sembarangan user. Bagaimana membatasi hak akses ini ? Ada beberapa cara yang
dapat dilakukan, antara lain menggunakan pembatasan pada file konfigurasinya
atau menggunakan file ACL.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


ü Menggunakan pembatasan pada file konfigurasi.
Dalam file konfigurasi (httpd.conf) terdapat tag Directory yang berfungsi
mendefinisikan permission suatu direktori yang diatur oleh tag-tag didalam Tag
Directory tersebut. Sintaknya :
<Directory directory> ... </Directory>
Tag-tag yang mengatur akses dalam tag directory antara lain Order, allow dan
deny. Tag Order mempunyai tiga kemungkinan :
• order allow,deny à perintah allow dievaluasi dahulu daripada deny (Default
inisialisasi forbidden),
• order deny,allow à deny dievaluasi dahulu baru allow (Default inisialisasi OK
),
• order mutual-failure à hanya host yang muncul di tag allow dan tidak muncul
di tag deny yang boleh mengakses.

Tag allow dan deny mendefinisikan hak akses dari suatu host atau domain
tertentu. Kedua tag ini mempunyai sintak yang sama yaitu :
[Allow,deny] from [All,.domain.com,192.168.0.0/8]

Selain ketiga Tag ini, ada Tag lain yang menspesifikasi akses user dan group yaitu
tag require dengan sintak :
require [user user_id ,group gourp_id ,valid-user].

Bila tag allow/deny dan require dipakai bersama-sama, ada satu tag lagi yang
memastikan apakah kedua tag tersebut bekerja cooperative atau hanya salah satu
saja, yaitu tag satisfy dengan sintak :
satisfy [any,all]

dimana any akan memberikan hak akses bila salah satu permission (host atau
user/group) terpenuhi, sedang all memerlukan kedua tag terpenuhi.
Selain Tag Directory, masih ada tag-tag lain yang digunakan untuk membatasi hak
akses.
Tag files membatasi hak akses terhadap file-file berektensi dan Tag Location
membatasi hak akses terhadap URL tertentu. Sintaks kedua tag ini sama dengan
sintak directory

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


<Files nama_file> ... </Files>
<Location URL> ... </Location>

Contoh penggunaan tag-tag diatas sebagai berikut :


<Directory /home/*/public_html>
AllowOverride All
Options All
<Limit GET POST OPTIONS PROPFIND>
Order allow,deny
Allow from all
</Limit>
<LimitExcept GET POST OPTIONS PROPFIND>
Order deny,allow
Deny from all
</LimitExcept>
</Directory>
<Files ~ "\.(MP3)$">
Order deny,allow
Deny from all
Allow from 192.168
</Files>
<Files ~ "\.(asf)$">
Order deny,allow
Deny from all
Allow from 192.168
</Files>

Ini berarti semua direktori public_html user diperbolehkan untuk diakses. Sedangkan
file-file dengan format .mp3 dan .asf hanya bias diakses dari IP 192.168.*.

ü Penggunaan file ACL


Konfigurasi file ACL mengatur hak akses seperti halnya pada file httpd.conf.
File ACL mengatur hak akses pada masing-masing direktori, jadi menggantikan Tag
Directory. File ACL didefinisikan pada httpd.conf yaitu pada tag
AccessFileName.Sintaks defaultnya :

AccessFileName .htaccess

Untuk dapat menggunakan file ACL ini, maka Pada Tag AllowOverride dalam
tag Directory untuk DocumentRootnya harus diberi option All, artinya tiap direktori

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


mempunyai hak akses sendiri-sendiri tergantung file ACL atau mengikuti default
permission dari RootDirectorynya.
Contoh filenya adalah :
IndexIgnore .htaccess */.??* *~ *# */HEADER* */README* */_vti*

<Limit GET POST>


order deny,allow
#allow from all
require user abdul
</Limit>
<Limit PUT DELETE>
order deny,allow
deny from all
</Limit>
AuthType Basic
AuthName linux.net
AuthUserFile /home/abdul/public_html/.pwd

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Pendahuluan

Database telah menjadi bagian yang menyatu dalam hampir setiap


kehidupan manusia. Tanpa database, banyak sesuatu yang kita kerjakan akan
menjadi sangat membosankan dan tidak terstruktur dengan baik, bahkan mungkin
menjadi sesuatu yang tidak dapat dikerjakan. Perpustakaan, universitas, kantor
pemerintahan dan bank adalah beberapa contoh organisasi yang sangat bergantung
pada sistem database terutama pada urutan data ataupun pencarian data. Di dunia
internet, search engines, online shopping (toko online ) dan setiap website yang
menyediakan banyak data tidak akan berkerja tanpa menggunakan database.
Database yang sudah diimplementasikan atau dipakai di komputer biasanya
dihubungkan dengan database server.

MySQL sebagai database server


Software database mulai bermunculan seiring dengan bertambahnya
kebutuan akan database server. Salah satu dari pendatang baru dalam dunia
database ialah MySQL, sebuah server/klien database SQL yang berasal dari
Skandinavia. MySQL terdiri atas server SQL, klien program untuk mengakses
server, tools untuk administrasi, dan interface program untuk menulis program
sendiri

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Pengembangan MySQL dimulai pada tahun 1979 dengan tool database
UNIREG yang dibuat oleh Michael “Monty” Widenius untuk perusahaan TcX di
Swedia. Kemudian pada tahun 1994, TcX mulai mencari server SQL untuk
mengembangkan aplikasi Web. Mereka menguji beberapa server komersial namun
semuanya masih terlalu lambat untuk table-tabel TcX yang besar.
Tahun 1995 David Axmark dari Detro HB berusaha menekan TcX untuk me-
release MySQL di Internet. Ia juga membuat dokumentasi MySQL yang di-build
untuk GNU configure utility. MySQL 3.11.1 dipublikasikan di dunia tahun 1996 dan
didistribusikan untuk Linux dan Solaris. Sekarang ini MySQL bekerja untuk banyak
platform serta tersedia source codenya.

MySQL bukanlah proyek Open Source karena lisensi diperlukan juga dalam
kondisi tertentu. Akan tetapi MySQL dikenal sebagai software Open Source karena
aturan lisensinya tidak teralu ketat. Selain itu ia juga portable dan bisa dijalankan
untuk beberapa system operasi komersial seperti Solaris, Irix dan Windows.

q Mengapa memilih MySQL?


Jika anda mencari system manajemen database yang murah atau bahkan
gratis, ada beberapa pilihan antara lain MySQL, mSQL, PostgresSQL, atau salah
satu dari produk vendor komersial yang gratis. Ketika dibandingkan antara MySQL
dengan system databae yang lain, maka perlu dipikirkan apa yang paling penting
untuk anda. Apakah performa, support, fitur-fitur SQL, kondisi keamanan dalam
lisensi, atau masalah harga. Dengan pertimbangan tersebut, MySQL memiliki
banyak hal yang bisa ditawarkan, antara lain :
§ Kecepatan
Banyak ahli berpendapat MySQL merupakan server tercepat.
§ Kemudahan penggunaan
MySQL punya performa tinggi namun merupakan database yang simple
sehingga mudah disetup dan dikonfigurasi
§ Harga
MySQL cenderung gratis untuk penggunaan terntentu.
§ Mendukung query language

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


MySQL mengerti bahasa SQL (Structured Query Language) yang merupakan
pilihan system database modern. Anda juga dapat mengakses MySQL lewat
protocol ODBC (Open Database Connectivity) buatan Microsoft.
§ Kapabilitas
Banyak klien dapat mengakses server dalam satu waktu. Mereka dapat
menggunakan banyak database secara simultn.
§ Konetifitas dan sekuritas
Database MySQL dapat diakses dari semua tempat di Internet dengan hak
akses tertentu.
§ Pertabilitas
MySQl dapat berjalan dalam banyak varian UNIX dengan baik, sebaik seperti
saat berjalan di system non-UNIX.
§ Distribusi yang terbuka
MySQL mudah didapatkan dan memiliki source code yang boleh
disebarluaskan sehingga bisa dikembangkan lebih lanjut.

Sedangkan pengguna database MySQL ini antara lain adalah :


§ Silicon Graphics ( http://www.sqi.com )
§ Siemens ( http://www.siemens.com )
§ Terjemahan Al Quran dalam bahasa Indonesia
(http://netmon.linux.net/~quran/)
§ Game Strategi Online Multiplayer Kurusetra (http://www.kurusetra.com)

Bagaimanapun, mungkin yang paling menarik dari semua karakteristik adalah


kenyataan bahwa MySQL adalah gratis. Hal ini benar karena T.c.X menawarkan
MySQL sebagai produk gratis untuk umum.

q Terminologi dasar database


Database dalam MySQL diklasifikasikan dalam RDBMS (relational database
management system). Istilah RDBMS ini bisa diartikan sebagai berikut :
§ “DB” yang berarti database adalah tempat penyimpana kumpulan informasi
yang terdiri atas struktur sbb :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


• Koleksi data dalam database dikelompokkan dalam tabel – tabel.
• Masing-masig tabel terdiri atas kolom dan baris.
• Masing-masing baris memiliki record.
• Record dapat berisi informasi yang masing-masing bersesuaian
terhadap kolom di atasnya.
§ “MS” atau management system (sistem manajemen) adalah software yang
membantu anda untuk memasukkan, mengambil, modifikasi, ataupun
meghapus record dalam database.
§ “R” atau “relational” berarti adanya hubungan yang bagus dalam DBMS yaitu
terhubungnya informasi yang tersimpan dalam suatu tabel dengan informasi
dalam tabel lain.

Untuk berkomunikasi dengan MySQL anda dapat menggunakan bahas yang


disebut SQL (Structured Query Language). Saat ini SQL adalah bahasa database
yang standard dan mayoritas system database mengerti bahasa tersebut. SQL
memiliki banyak macam perintah dan statement yang akan mendukung system
database yang digunakan MySQL.

q Instalasi MySQL
MySQL dapat bekerja dalam beberapa system operasi baik yang gratis
maupun yang komersial. Dalam modul ini akan diterangkan proses instalasi MySQL
dalam system operasi Linux, sesuai dengan yang telah dipelajari sebelumnya. Saat
ini MySQL memiliki versi yang sudah stabil yaitu seri 3.22.xx, sedangkan yang
masih dalam tahap pengembangan adalah MySQL dengan versi 3.23.xx
Distribusi MySQl berbentuk binary, RPM dan source format. Binary dan RPM
lebih mudah untuk diinstal , namun anda harus menerima konfigurasi apa adanya
sesuai dengan keinginan pembuatnya. Sedangkan yang berbentuk source format, ia
lebih sulit untuk diinstal karena anda harus mengkompilasi software tersebut namun
anda dapat lebih mudah untuk mengatur konfigurasinya. Misalnya anda
mengkompilasi distribusi tersebut hanya sebagai klien tanpa perlu membuat server,
dan juga anda dapat mengatur letak direktori tempat anda menginstal. Distribusi
MySQL terdiri atas komponen sebagai berikut :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


• Server mysqld
• Program-program klien (mysql,mysqladmin, dll) dan program
pendukungnya (library dan file header)
• Dokumentasi
• Database
• Bahasa pendukung
Dalam Linux, MySQL dapat diinstal dengan dua cara yaitu dengan cara
manual ataupun dengan cara otomatis menggunakan RPM.

q Instalasi MySQL dengan cara manual (distribusi format source)


Distribusi dalam format source biasanya bernama mysql-versi.tar.gz dengan
versi adalah nomor versi MySQL. Langkah instalasinya adalah sbb :
• Ekstrak source MySQL
# tar xvfz mysql-versi.tar.gz
• Masuk ke direktori MySQL
# cd mysql-versi
• Lakukan konfigurasi system sebelum proses kompilasi dilakukan
# ./configure
Jika anda ingin menggunakan option untuk configure anda dapat melihat daftarnya
dengan perintah :
# ./configure –help
Beberapa option yang biasa digunakan :
§ --without-server
Konfigurasi untuk menjadikan mesin anda sebagai klien dari server
yang sudah ada di mesin lain.
§ --prefix=nama_path
Defaultnya terletak di direktori /usr/local/mysql. Data direktori, klien,
server, klien library, dan file header akan diistall ke direktori
var,bin,libexec,lib dan include di bawah direktori ini. Jika anda ingin
mengganti letaknya gunakan option ini.
§ --localstatedir=nama_path

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Defautnya terletak di direktori /usr/local/mysql/var. Dengan option
ini anda dapat mengganti letaknya.
§ --with-low-memory
File source sql/sql_yacc.cc membutuhkan memori yang besar
dalam proses kompilasi sehingga kadang-kadang akan
menyebabkan proses error karena system kehabisan virtual
memori. Dengan option ini penggunaan memori akan diperkecil.
• Kompile
# make install
Setelah proses kompile selesai, seluruh file binary , dokumentasi dan
segala macamnya tentang mysql telah diletakkan pada direktori
/usr/local/mysql (default)
• Untuk memulai mysql, lakukan installasi database (grant table) dafault
# cd /usr/local/mysql/bin
# ./mysql_install_db
• Lalu jalankan mysql dengan script :
# ./safe_mysqld &
• Lalu cek pada proses komputer, apakah mysql sudah berjalan dengan
cara : # ps ax|grep sql
Akan nampak hasil berikut :
557 ? S 0:00 sh /usr/bin/safe_mysqld --user=mysql --pid-file=/var/
587 ? SN 0:00 /usr/sbin/mysqld --basedir=/ --datadir=/var/lib/mysql

Sampai di sini , installasi mysql selesai.

q Instalasi via RPM


Source MySQL dengan format RPM ada beberapa macam yaitu :
• MySQL-versi-platform.rpm
Source untuk server MySQL.
• MySQL-client-versi-platform.rpm
Source untuk klien MySQL.
• MySQL-devel-versi-platform.rpm

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Software oendukung untuk mengembangkan klien MySQL berisi klien
library dan file header.
• MySQL-bench-versi-platform.rpm
Benchmark dan test MySQL
• MySQL-versi.src.rpm
Source lengkap untuk server, klien, benchmark dan test.

Anda tidak harus menginstall semua source yang ada, cukup yang dibutuhkan saja.
Jika anda berencana untuk menginstall server sekaligus klien anda gunakan
perintah :
# rpm –ivh MySQL-versi-platform.rpm MySQL-client-versi-platform.rpm

Jika anda ingin menginstall MySQL dari source lengkapnya, gunakan perintah :
# rpm –-recompile MySQL-versi.src.rpm

Untuk melihat letak seluruh file yang telah diinstall gunakan perintah :
# rpm –qpl nama_file_rpm

q Uninstalasi MySQL
Untuk meng-uninstalasi MySQL dari mesin anda cara yang paling mudah
adalah dengan menghapus direktori root MySQL yang biasanya terletak di direktori
/usr/local/mysql secara recursive. Kemudian hentikan proses atau daemon yang
menjalankan mysql.
Jika system MySQL anda diinstall dengan RPM, maka anda dapat meng-
uninstalasinya via RPM dengan perintah :
# rpm –e nama_file_rpm

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Pendahuluan

Proxy server sudah menjadi hal yang popular di kalangan para pengguna internet
saat ini, berkaitan dengan kemampuannya untuk menghemat bandwith,
meningkatkan keamanan, dan menambah kecepatan web-surfing. Dalam jaringan
yang menerapkan sistem proxy, hubungan komunikasi ke internet dilakukan melalui
sistem pendelegasian. Komputer-komputer yang dapat dikenali oleh internet
bertindak sebagai wakil.

q Proxy Server Squid


Proxy server yang cukup popular saat ini adalah squid, karena selain gratis juga
mendukung ICP. ICP digunakan untuk pertukaran data tentang suatu URL dengan
cache-cache lainnya. Secara sederhana, squid dapat dikatakan sebagai software
yang diaplikasikan untuk membuat http atau ftp cache. Cara kerja squid dapat
dianalogikan seperti browser (IE/Opera/Netscape) yang menyimpan data suatu site
di hardisk sehingga untuk menampilkan site yang sama tinggal mengambil data di
cachenya.

Squid dapat dikonfigurasikan sebagai :


§ Mode httpd-accelerator untuk meningkatkan performansi web server kita.
§ Proxy caching-server agar seluruh user dalam jaringan kita dapat
menggunakan squid untuk mengakses internet.
Pada konfigurasi pertama, squid server berlaku seperti reverse proxy-cache, squid
akan menerima permintaan client, memberikan data di cachenya, jika tidak ada
akan mengambil langsung dari server aslinya (reverse proxy).

Sebagai proxy cache server, kita dapat mengontrol secara keseluruhan kinerja
jaringan kita dan memberlakukan beberapa aturan dalam memberkian data yang

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


dapat dilihat, diakses atau didownload. Kita juga dapat mengontrol penggunaan
bandwith, waktu koneksi dan sebagainya. Sebuah proxy cache dapat
dikonfigurasikan sebagai Squid dapat menghemat bandwith dapat diterangkan
sebagai berikut :
Misal suatu host meminta www.detik.com, maka squid akan mengambil dan
meletakkannya di hardisk server untuk selanjutnya diambil oleh host yang
bersangkutan. Bila ada host lain yang meminta data yang sama, server tidak perlu
lagi mendownloadnya dari www.detik.com, tapi cukup memberikan data yang ada di
cachenya sehingga akan lebih cepat dan menghemat bandwith. Untuk lebih jelasnya
perhatikan gambar berikut ini:

LAN

Host A Internet

LAN
WAN WAN
Host C

Router Router

Host B

Gambar Posisi host di internet

Selain itu, squid dapat melakukan filtering, yaitu squid dapat memblok permintaan
cliet terhadap URL-URL tertentu, sehingga pengelola jaringan dapatlebih santai
tanpa khawatir adanya penyalahgunaan yang tidak dikehendaki. Dalam squid
dikenal istilah parent dan sibling. Parent akan mengambil langsung ke web site yang
diminta, sedangkan sibling akan mencarinya dulu ke parent. Bila tidak ada, maka
sibling mencarinya langsung ke web site yang bersangkutan.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Sebuah proxy cache dapat dikonfigurasikan untuk berjalan standalone server atau
sebagai hierarki cache dengan dengan proxy-proxy lainnya, yang akan kita bahas
lebih lanjut berikut ini.
§ Standalone server, tanpa parent dan sibling
Ini merupakan konfigurasi yang paling sederhana yang biasa dipakai oleh ISP
(Internet Service Provider) dan warung internet dimana squid server local akan
langsung mencari ke web server www.detik.com untuk memenuhi permintaan client
bila data tidak terdapat di cache.
§ Sibling tanpa parent
Biasanya konfigurasi ini dipakai untuk jaringan yang tidak terlalu besar. Permintaan
oleh klien pada suatu URL akan diterima lokal yang akan mencarinya ke sibling ,
bila tidak ada, lokal akan langsung mencarinya langsung ke webserver yang
bersangkutan.
§ Parent dan sibling
Biasanya konfigurasi ini diterapkan untuk jaringan yang besar. Efisiensi jaringan ini
cukup baik, karena yang bekerja untuk mendapatkan halaman web keluar jaringan
hanyalah parent sisanya sibling dan para client tidak dapat memperolehnya secara
langsung (dengan firewall). Klien yang meminta halaman web www.detik.com akan
diterima squid server lokal yang kemudian akan memeriksa cachenya, bila tidak ada
dia akan mencari ke sibling, bila ada sibling akan memberikannya ke lokal, namun
bila tidak ada lokal akan meminta ke parent. Sebagai parent ia harus melayani
permintaan ini. Walaupun ia tidak memiliki halaman yang diminta, ia harus
memenuhinya dengan mengambil langsungke www.detik.com. Setelah itu
permintaan dikembalikan ke lokal dan akhirnya ke klien.

q Hierarki Squid
Server proxy dapat dihubungkan dengan server-server proxy lain dan membentuk
hierarki seperti pada sebuah organisasi. Jika server proxy bergabung dalam sebuah
hierarki, sebuah server proxy bisa memilih untuk mengambil dokumen yang
diinginkan dari server proxy lain dalam hierarki atau mengambil dari server asal.
Hierarki ini terdiri dari cache pada tingkat nasional, regional, dan organisasi. Dalam
prototipe ini cache pada tingkat nasional melayani permintaan akses untuk domain

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


negara tersebut. Misalnya terdapat permintaan dokumen dari URL
http://www.republika.co.id yang berada di bawah domain id (Indonesia), maka
dokumen tersebut diminta dari cache tingkat nasional di Indonesia.

USER
CACHE
REGIONAL
USER CACHE
CACHE REGIONAL
REGIONAL
USER

CACHE
CACHE CACHE REGIONAL
INTERNASIONAL NASIONAL

CACHE
NASIONAL CACHE CACHE
NASIONAL REGIONAL

CACHE
NASIONAL
CACHE
REGIONAL

CACHE
REGIONAL CACHE
CACHE REGIONAL
REGIONAL

Gambar 4. Prototipe hierarki cache

q Instalasi Squid
Untuk mendapatkan source squid terbaru dapat download di ftp://squid.nalr.fr/squid/
atau homepage squid http://www.squid-cache.org/. Dalam modul ini kita akan
melakukan instalasi secara manual yaitu squid-2.3.STABLE2-src.tar.gz. Sebelum
instalasi pastikan source ini sudah ada (misal di direktori /usr/local).
1. Masuklah ke direktori /usr/local/ dan ekstark source dengan perintah:
# cd /usr/local
# tar zxvf squid-2.3.STABLE2-src.tar.gz
2. Squid proxy-server tidak dapat berjalan sebagai sebagai super user root, oleh

karena itu kita harus membuat account khusus tanpa shell untuk menjalankan
Squid Proxy Server :
# useradd –d /cache/ -r –s /dev/null 2>&1
# mkdir /cache/
# chown –R squid.squid /cache/

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Perintah pertama akan menambahkan user “squid” ke file /etc/passwd, lalu
membuat direktori “/cache” (jika belum ada) kemudian mengubah kepemilikan
direktori “/cache” ke user “squid”.
3. Setelah proses ekstarksi akan terbentuk direktori squid-2.3.STABLE2-src, masuk
ke direktori tersebut dan lakukan konfigure otomatis yang akan memberikan
output berupa file Makefile.
# ./configure --prefix=/usr/local/squid

4. Selanjutnya lakukan kompilasi dan install sbb:


# make
# make install

Hasil instalasi bisa dilihat di direktori /usr/local/squid. Di dalamnya terdapat direktori


/bin, /logs dan /etc.

q Konfigurasi Squid
Setelah proses instalasi selesai, langkah selanjutnya adalah mengkonfigurasi squid.
File konfigurasi ini biasanya terletak pada direktori /usr/local/squid/etc. Squid
biasanya sudah menyediakan file konfigurasi default yaitu squid.conf.default, yang
berisi parameter-parameter squid secara lengkap, berikut deskripsi serta contoh
penggunaannya.

q Konfigurasi file Squid.conf


Dalam direktori /usr/local/squid/bin akan terdapat file-file sbb:
squid program utama
dnsserver server untuk melayani request pemetaan
ip <-> nama tiap child proses squid
cachemgr program tambahan untuk memantau server secara otomatis
runchace script untuk memulai squid

Sedangkan dalam direktori /usr/local/squid/etc akan terdapat file-file konfigurasi


sebagai berikut :

squid.conf.default file konfigurasi squid default

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


mime.conf.default file konfigurasi mime default

Sedangkan file-file log akan terdapat pada direktori /usr/local/squid/logs, yaitu :


access.log mencatat log aktivitas-aktivitas yang dilakukan oleh klien.
cache.log mencatat log yang dicatat oleh cache server.
store.log mencatat setiap log yang berhubungan dengan database.

q Konfigurasi Mode Httpd-Accelerator


Berikut kita akan membahas bagian-bagian yang perlu diedit pada file squid.conf :

http_port 3128
Option ini menyatakan nomor port yang akan digunakan Squid untuk permintaan
HTTP client. Jika diset 80, client akan seolah-olah terkoneksi dengan Webserver
Apache.

icp_port 3130

Option ini menentukan nomor port tempat Squid mengirim dan menerima
permintaan ICP dari cache lainnya. Untuk mendisable kita set 0, karena kita
mengkonfigurasi Squid sebagai mode accelerator Web Server. ICP diperlukan
hanya pada multilevel cache dengan multilevel siblings dan parent.

acl QUERY urlpath_regex cgi-bin \? and no_cache deny QUERY

Option ini menyatakan objek yang tidak pernah dicached.

cache_mem 16 MB

Option ini menyatakan jumlah memori (RAM) yang digunakan untuk caching. Squid
menggunakan memori lebih besar dari nilai yang tertera. Sebaiknya jumlah ini
sepertiga dari memori total.

cache_dir ufs /cache 200 16 256

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Option “cache_dir” menyatakan jenis sistem storage yang digunakan (ufs). Space
disk sebesar 200 MB, jumlah subdirektori tingkat pertama dalam direktori cache
adalah 16 dan jumlah subdirektori tingkat kedua yang dibuat dalam direktori cache
tingkat pertama adalah 256. Dalam mode accelerator hal ini berkaitan dengan besar
dan jumlah file yang ingin di tampilkan pada webserver Apache.

emulate_httpd_log on

Jika option ini dibuat “ON”, Squid akan membuat format file log yang sama dengan
Webserver Apache. Hal ini berguna terutama jika kita ingin menggunakan program
seperti Webalizer.

redirect_rewrites_host_header off

Jika diset “OFF”, Squid tidak akan menulis ulang suatu host.

replacement_policy GDSF

Option “replacement_policy” menyatakan objek dalam cache yang akan dihapus


Squid saat proxy membutuhkan ruang disk yang lebih banyak.

acl all src 0.0.0.0/0.0.0.0 and http_access allow all

Options “acl” and “http_access” mengatur batasan akses terhadap Proxy server
Squid. Pada contoh di atas, kita berarti mengijinkan setiap orang terkoneksi lewat
proxy.

cache_mgr admin

Option “cache_mgr” menyatakan alamat e-mail administrator yang bertanggung-


jawab pada server.

cache_effective_user squid and cache_effective_group squid

Options ini menyatakan UID/GID dimana cache berjalan.

httpd_accel_host 192.168.0.100 and httpd_accel_port 80

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Dari option ini, Squid akan mengetahui nomor port HTTP server yang sebenarnya
dan IP address yang digunakan. Pada contoh di atas IP address webserver adalah
192.168.0.100 pada port 80.

log_icp_queries off

Jika kita tidak menggunakan ICP sebaiknya option ini diset “OFF”.

cachemgr_passwd my-secret-pass all

Option “cachemgr_passwd” menyatakan password yang diperlukan untuk


mengakses utilitas program “cachemgr.cgi”. Isilah <my-secret-pass> dengan
password yang diinginkan. Keyword <all> akan membuat password yang sama
untuk semua

buffered_logs on

Option “buffered_logs” yang diset “ON” dapat menambah kecepatan penulisan


beberapa file log.

q Konfigurasi Mode Proxy-Caching Mode


Pada proxy-caching server, semua user dalam network kita menggunakan Squid
untuk mengakses Internet. Tentu saja kita dapat menerapkan beberapa aturan dan
menghemat bandwith. Konfigurasi Squid sebagai proxy-caching mode tidak jauh
berbeda dengan mode sebelumnya, hanya mungkin ada beberapa option yang
diubah atau ditambahkan. Perbedaan utama dengan mode sebelumnya adalah
adanya access control list (ACL). ACL berguna untuk merestriksi akses berdasarkan
IP address asal (src), IP address tujuan (dst), domain asal, domain tujuan,
berdasarkan waktu akses, dsb. Konfigurasi ACL yang umum digunakan adalah
sebagai berikut :
§ Akses berdasarkan IP address asal
acl [alamat] src a.b.c.d/e.f.g.h
§ Akses berdasarkan IP address tujuan
acl [alamat] dst a.b.c.d/e.f.g.h

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


§ Akses berdasarkan domain asal
acl [alamat] srcdomain [nama.domain]
§ Akses berdasarkan domain tujuan
acl [alamat] dstdomain [nama.domain]

Untuk lebih jelasnya perhatikan contoh isi file konfigurasi proxy-cache server berikut
ini :
# pico squid.conf

icp_port 3130
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
cache_mem 16 MB
cache_dir ufs /cache 200 16 256
redirect_rewrites_host_header off
replacement_policy GDSF

Misalkan kita ingin agar proxy server Squid hanya membolehkan akses untuk client
dalam jaringan kita dan proxy server itu sendiri dengan menggunakan port-port
tertentu yaitu 80 (http), 21 (ftp), 23 (telnet) 25 (smtp), dan 443 (https). Selain itu,
proxy Squid akan meolak setiap IP address asal dan semua port yang mencoba
terkoneksi.Bila jaringan kita menggunakan IP Private kelas C 192.168.1.0 kita dapat
membuat konfigurasi sbb :

acl localnet src 192.168.0.0/255.255.255.0


acl localhost src 127.0.0.1/255.255.255.255
acl Safe_ports port 80 443 210 119 70 21 1025-65535
acl CONNECT method CONNECT
acl all src 0.0.0.0/0.0.0.0
http_access allow localnet
http_access allow localhost
http_access deny !Safe_ports
http_access deny CONNECT
http_access deny all

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


cache_mgr admin@nama.domain
cache_effective_user squid
cache_effective_group squid
log_icp_queries off
cachemgr_passwd my-secret-pass all
buffered_logs on

Sedangkan option-option yang lain sama seperti yang sudah dijelaskan untuk mode
sebelumnya.

q Menjalankan Squid
Setelah membuat konfigurasi Squid lewat file squid.conf, selanjutnya kita harus
menstart squid agar server itu dapat berjalan dengan baik. Proses squid sebaiknya
dijalankan oleh user squid dan bukan oleh root demi keamanan.
• To run Squid server in httpd-accelerator mode, the following files are required and
must
be created or copied to the appropriate directories on your server.
Copy the squid.conf file in the “/etc/squid/” directory.
Copy the squid script file in the “/etc/rc.d/init.d/” directory.
Copy the squid file in the “/etc/logrotate.d/” directory.
• To run Squid server in proxy-caching mode, the following files are required and
must be
created or copied to the appropriate directories on your server.
Copy the squid.conf file in the “/etc/squid/” directory.
Copy the squid script file in the “/etc/rc.d/init.d/” directory.
Copy the squid file in the “/etc/logrotate.d/” directory.
Create the squid script file (touch /etc/rc.d/init.d/squid) and add:
#!/bin/bash
# squid This shell script takes care of starting and stopping
# Squid Internet Object Cache
#
# chkconfig: - 90 25
# description: Squid - Internet Object Cache. Internet object

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


# caching is \
# a way to store requested Internet objects (i.e., data available \
# via the HTTP, FTP, and gopher protocols) on a system closer to the
# \
# requesting site than to the source. Web browsers can then use the
# \
# local Squid cache as a proxy HTTP server, reducing access time as
# \
# well as bandwidth consumption.
# pidfile: /var/run/squid.pid
# config: /etc/squid/squid.conf

Untuk menjalankan squid Pertama-tama kita harus membuat user squid yang akan
menjalankan proses Squid proxy server. Loginlah sebagai user squid dan lakukan
perintah berikut ini :

# squid –z

Perintah ini akan membuat direktori cache sebanyak dan sedalam yang telah
dideklarasikan pada file squid.conf. Lalu jalankan program squid :

# /usr/local/squid/bin/squid –sY &

Perhatikan pesan yang muncul pada console, dan perhatikan juga file
/usr/local/squid/log/cache.log barangkali terjadi suatu kegagalan atau error. Agar saat
sistem direboot program Squid akan langsung berjalan secara otomatis, tambahkan
baris berikut ini pada file /etc/rc.d/rc.local/ :

# pico /etc/rc.d/rc.local

Tambahlah baris-baris berikut ini :

/usr/local/squid/bin/squid –sY &

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Pendahuluan

E-mail sudah digunakan orang sejak awal terbentuknya internet pada sekitar
tahun 1969 dan merupakan salah satu fasilitas yang ada pada saat itu. Sesuai
dengan perkembangan internet, penggunaan email ini juga semakin membesar
Walaupun pada saat ini persentasinya sudah turun karena adanya sebuah fasilitas
baru di internet yang dikenal sebagai WWW. Salah satu alasan kenapa email
dipakai orang karena memberikan cara yang mudah dan cepat dalam mengirimkan
sebuah informasi. Selain itu email dapat juga informasi yang ukurannya kecil sampai
ke file yang ukurannya besar. Pada gambar berikut bagaimana cara pertukaran
email yang menggunakan TCP/IP

User di Antrian yang akan


terminal
User dikirim MTA
agent client

User di Mailbox penerima


terminal User MTA
agent server

Gambar komponen konseptual sistem email

Mail server hanya sebuah aplikasi yang berurusan dengan lalu lintas email,
dia tidak secara langsung berhubungan dengan user yang akan berkirim.
Dalam pengiriman email, terdapat dua aplikasi yang diperlukan yaitu MTA (Mail
Transfer Agent), dan MUA (Mail User Agent). Kerja sama antara MUA dan MTA
dapat dianalogikan seperti agen perjalanan dan perusahaan perjalanan, dimana
email merupakan orang yang akan melakukan perjalanan.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Secara garis besar MTA (Mail Transfer Agent) adalah sebuah aplikasi untuk
mengantarkan email. MTA melakukan fungsi-fungsi sebagai berikut :
q Pertukaran email menggunakan protokol TCP
q Menerima email masuk (incoming)
q Meneruskan email yang akan keluar (outgoing)
q Mengatur antrian bila ada email masuk, keluar dan yang tertunda pengirimannya
MTA yang umum dipakai adalah sendmail dan qmail untuk di unix serta untuk di Ms
Windows menggunakan Mdaemon.

Sedangkan MUA (Mail User Agent) adalah aplikasi yang berfungsi sebagai antar
muka (interface) antara email (dalam hal ini berhubungan dengan user yang
memiliki email tersebut) dengan MTA yang mendukungnya. Ia berfungsi :
q Menulis email dan membaca email yang masuk.
q Mengatur konfigurasi email sehingga sesuai dengan MTA yang mendukungnya.
q Memberikan kenyamanan kepada user dalam menerima dan mengirim email.
Beberapa agen email yang populer saat ini adalah Pine, Eudora, Netscape, Outlook
dan Pegasus.
Dalam berkomunikasi email menggunakan protocol sendiri yaitu SMTP
(Simple Mail Transport Protocol) yang bekerja di port 25. Protokol ini hanya bekerja
untuk berkomunikasi dengan server mail remote, tidak untuk server lokal.

q Bagaimana E-mail Terkirim ?


Disini akan dicontohkan bagaimana proses pengiriman email. Kita akan
mengirimkan sebuah alamat dan nanti akan kita lihat hubungan SMTPnya. Pada
contoh dibawah ini kita akan menganalisa apa yang dikirimkan dan diterima sebuah
MTA melalui SMTP. Baris yang dimuali dengan >>> adalah perintah yang dikirimkan
oleh client SMTP, dan baris yang dimulai dengan kode balasan 3 digit adalah dari
server SMTP. Berikut ini adalah contohnya:

Contoh :
Untuk mengirimkan sebuah email, hanya ada lima perintah yang digunakan,
yaitu: HELO, MAIL,RCPT,DATA, dan QUIT. SMTP ini sangat sederhana prinsip

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


kerjanya. Komunikasi antara server dan client terdiri dari teks-teks yang mudah
dibaca. Mula-mula client menggunakan hubungan TCP ke port 25, dan menunggu
kode jawaban 220 dari server yang merupakan ucapan selamat datang ke server
tersebut. Jawaban dari server ini harus dimulai dengan FQDN (fully quanlified
domain name ) dari server, misal .linux.net.
Selanjutnya clien memperkenalkan diri dengan perintah EHLO atau jika
server masih versi lama maka cara memperkenalkan diri dengan perintah HELO.
Perintah HELO adalah perintah primitif yang ada pada SMTP versi awal. Argumen
dibelakang perintah tersebut adalah FQDN dari client, misalkan students.linux.net.
Server merespon dengan memberikan identitas dirinya kepada client. Jika
komunikasi sudah terbentuk, client dapat mengirimkan lebih dari satu
pesan,mengakhiri hubungan, atau meminta server untuk mengirimkan aturan bagi
pengirim dan penerima, sehingga pesan dapat mengalir dengan arah yang
sebaliknya.
Transaksi email dimulai dengan perintah MAIL, yang menjelaskan siapa
pengirim pesan ini. Server selanjutnya mempersiapkan struktur datanya agar dapat
menerima pesan baru, dan membalas perintah MAIL dengan kode 250, atau
lengkapnya 250 ok. Perintah selanjutnya adalah RCPT dimana perintah ini
menjelaskan siapa pemerimanya. Jika penerimanya ada banyak, maka akan ada
beberapa perintah RCPT dapat dikeluarkan. Jika sudah server juga harus
membalas ke client bagi setiap perintah RCPT dengan mengirimkan respon 250 OK,
atau jika ada kesalahan akan dibalas dengan respon 550 No such user here.
Isi pesan dikirim oleh client dengan perintah DATA yang diakhiri dengan
mengirimkan satu baris data yang hanya berisi satu titik. Server merespon dengan
mengirimkan pesan 354 start mail input dan menentukan urutan karakter tertentu
yang dijadikan sebagai tanda akhir pesan email.
QUIT dikirim terakhir untuk mengakhiri transaksi pengiriman pesan mail. Server
merespon dengan mengirimkan pesan 221, yang berarti setuju untuk menghentikan
transaksi. Kedua pihak akhirnya menutup hubungan TCP.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q Komponen E-mail
Email terdiri dari tiga buah komponen, yaitu:
Envelope, atau amplop. Ini digunakan oleh MTA untuk pengiriman. Dalam contoh
sebelumnya, envelope ditandai dengan dua buah perintah SMTP :
MAIL from: <riza@students.linux.net>
RCPT to: <riza@.linux.net>
Header, digunakan oleh user agent. Ada kurang lebih sembilan field header, yaitu:
Received, Message-Id, From, Date, Reply-To, X-Phone, X-mailer, To dan Subject.
Setiap field header berisi sebuah nama yang diikuti oleh sebuah titik dua (:), dan
nilai dari field header tersebut.
Body merupakan isi pesan dari pengirim ke penerima.

q Mail Exchanger (MX)


MX berfungsi sebagai tempat penyimpanan sementara jika sebuah mail
server yang sebenarnya lagi down atau mati. Hal ini sangat penting bagi sebuah
organisasi yang mempunyai jaringan yang cukup luas dan mempunyai banyak mail
server. Untuk supaya anda dapat melakukan hal ini , anda harus mengeset dalam
DNS server anda.

Contoh setting dalam DNS server adalah sebagai berikut (untuk menambahkan
record MX) :
students.linux.net IN A 192.168.0.1
IN MX 100 mx1.linux.net.
IN MX 50 mx2.linux.net.
IN MX 10 students.linux.net.

Pada contoh diatas MX record memberikan prioritas tertinggi pada host yang
bersangkutan yaitu students.linux.net. Jika pengiriman email gagal karena sesuatu
hal maka akan dicoba dikirimkan ke mx2.linux.net yang merupakan mail exchanger
dari students.linux.net. Jika dalam pengirimannya gagal lagi maka mail akan
dikirimkan ke host mx1.linux.net dimana server ini berfungsi sebagai mail exchanger
ke dua dari mesin students.linux.net.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Selang pemilihan preference MX record biasanya dibuat selisih sepuluh
angka. Selisih ini dibuat sedemikian hingga agar bila ada penambahan mail server,
kita dapat menambahkan record MX dari yang telah ada sebelumnya.
Sebuah host untuk dapat melihat record MX dari suatu server bisa dengan
mengetikkan perintah seperti dibawah ini
$ host students.linux.net
students.linux.net has address 192.168.0.1
students.linux.net mail is handled (pri=10) by students.linux.net
students.linux.net mail is handled (pri=50) by mx2.linux.net
students.linux.net mail is handled (pri=100) by mx1.linux.net

q Relay Agent
Fungsi utama dari relay agent adalah untuk mengirimkan email dari user
agent. Jadi semua email yang akan dikirimkan ke jaringan luar akan dikirim dulu
oleh user agent ke relay agent, dan jika sudah sampai maka selanjutnya adalah
menjadi tanggung jawab dari mesin yang berfungsi sebagai relay agent untuk
mengirimkan email yang diberikan kepadanya.

Karena fungsinya sangat penting bagi pengiriman email, maka dalam sebuah
jaringan kita harus mempunyai mesin yang berfungsi sebagai relay agent lebih dari
satu (selain mesin mail server utama). Untuk dapat menghemat biaya mungkin
fungsinya bisa kita satukan dengan mesin yang berfungsi sebagai MX. Tapi jika
traffik mail sudah pada apalagi terdapat mailling list yang banyak sebaiknya kedua
fungsi tersebut dipisahkan ke mesin tersendiri.

Sebagai administrator anda harus bisa mengatur supaya mesin MX dan relay
agent ini tidak disalah gunakan oleh orang lain untuk melakukan hal-hal yang
merugikan. Salah satu contohnya jika kita melakukan pengesetan server mail
secara asal-asalan dan membolehkan semua orang untuk merelay ke mesin anda,
bisa jadi mesin anda nantinya akan digunakan orang untuk membuat SPAM mail.
Untuk menghindari hal ini anda harus membuat aturan atau mengeset dalam server

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


anda bahwa host-host yang boleh merelay ke mesin anda adalah host tertentu yang
anda kenal atau mungkin khusus untuk host-host yang ada dalam jaringan anda.

q Qmail
Sebuah sistem UNIX biasanya langsung dibundel oleh MTA (Mail Transfer
Agent) bernama Sendmail, karena sebenarnya Sendmail adalah mail server paling
popular dan paling tua di Internet. Sendmail mempunyai konfigurasi default yang
diletakkan pada /etc/sendmail.cf yang dengan konfigurasi tersebut email sudah
dapat keluar masuk. Namun dari beberapa pengalaman ternyata Sendmail memiliki
banyak kelemahan, antara lain file sendmail.cf yang berupa teks berukuran besar
dan terdiri atas banyak baris dengan kode-kode yang sulit dipelajari. Oleh
karenanya sendmail banyak memiliki bug.

Kemudian muncullah MTA bernama Qmail yang dibuat oleh seseorang yang
tidak puas atas kinerja dan buggy Sendmail. Qmail dikembangkan sekitar tahun 96
oleh seorang profesor matematika bernama Dan Bernstein. Qmail dikembangkan
karena terdapat banyak bugs yang terdapat di dalam Sendmail. Seperti yang
dituliskan dalam home page resmi Qmail di http://cr.yp.to/~djb/qmail.html , Qmail
merupakan pengganti dari Sendmail dan memang dalam instalasi default Qmail ada
beberapa hal yang tidak kompatibel dengan Sendmail. Sampai saat ini pemakai
Qmail terus berkembang.

Qmail tidak merepotkan sewaktu instalasi dan juga mempunyai file konfigurasi
yang sederhana yang terdiri atas beberapa file yang diletakkan pada direktori
/var/qmail/control. Keunggulan utama Qmail dibandingkan dengan Sendmail adalah
masalah keamanan. Berikut alasan bahwa Qmail memiliki keamanan yang lebih
baik:
• Tidak memperlakukan program dan files sebagai alamat
Sendmail melihat program dan files sebagai sebuah alamat. Kelemahan dari
hal ini yaitu bila beberapa user tidak diizinkan untuk memakai program atau
menulis file (tidak mempunyai hak ) mengakibatkan Sendmail terus menerus
mencobanya. Berbeda dengan Qmail yang memperlakukan program sebagai

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


program dan file sebagai file. Qmail bisa disuruh untuk menjalankan program
tapi atas nama user tersebut.
• Sesedikit mungkin menggunakan setuid dan login root
Sendmail ditulis sebagai setuid sehingga menyebabkan banyak eksploit dan
bug, sedangkan Qmail mempunyai satu program yang memakai setuid, yaitu
qmail-queue. Sendmail dijalankan di bawah user root, hal ini mengakibatkan
proteksi sistem terhadap sesuatu kesalahan menjadi tidak berlaku karena
root dapat melakukan semuanya. Hal ini bisa berakibat buruk. Qmail berjalan
atas namanya sendiri yang terdiri atas enam user. Sedangkan program Qmail
yan berjalan atas nama root adalah qmail-start dan qmail-lspawn.
• Memisahkan beberapa fungsi menjadi beberapa program independent
Seperti yang telah disebutkan, Qmail terdiri atas enam user yang masig-
masing user tersebut menjalankan program yang berbeda. Berbeda dengan
Sendmail yang hanya mempunyai sebuah file eksekusi, Qmail memisahkan
masing-masing fungsi seperti untuk menangani antrian, menangani deliveri
ke host remote, deliveri ke hostloakl dan sebagainya menjadi beberapa
program independent. Dan masing-masing program ini berjalan dengan nama
yang berbeda, misalnya qmail-send oleh qmaill dan qmail-queue oleh qmailq.
• Sederhana dan kecil
Qmail dikatakan sederhana dan kecil karena Qmail memisahkan mekanisasi
untuk forwarding, aliasing dan mailing-list. Selain itu Qmail hanya mempunyai
satu mode pengiriman, yaitu fast+queued. Qmail-send yaitu program untuk
mengirimkan mail dipicu oleh adanya antrian baru. Sedangkan Sendmail
mempunyai beberapa mode, yaitu slow+queued dan fast+unsafe.

q Cara kerja Qmail :


Secara grafis inilah cara kerja Qmail :
qmail-smtpd --- qmail-queue --- qmail-send --- qmail-rspawn --- qmail-remote

qmail-inject qmail-clean qmail-lspawn --- qmail-local

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Setiap email akan masuk ke qmail-queue direktori yang dikerjakan oleh
qmail-queue. Qmail-queue mempunyai direktori untuk mengerjakan antrain, yaitu
/var/qmail/queue. Qmail-queue akan ada bila ada permintaan yang biasanya
digenerate oleh qmail-inject untuk email-lokal, qmail-smtpd untuk message yang
diterima lewat SMTP, qmail-local untuk email yang diforward dan qmail-send untuk
message yang bouncing.

Setiap email diantarkan ke tempat tujuan oleh qmail-send dan bekerja sama
dengan qmail-rspawn untuk message remote dan qmail-lspawn untuk email lokal.
Qmail-clean juga ikut bekerja dalam proses pengantaran di atas. Keempat program
tadi adalah daemon yang terus-menerus idle dalam sistem yang memakai qmail.
Antrian didesain untuk bisa tahan crash dengan syarat file sistem yang dipakainya
juga harus tahan crash.

Setiap email dalam antrian diberikan nomor identifikasi, misalnya 23. Antrian
yang diatur qmail-queue dipecah lagi menjadi beberapa direktori yang setiap
direktori ada file yang berhubungan dengan email 23.
mess/23 : email itu sendiri
todo/23 : amplop yang menyatakan dari mana email datang dan ke mana akan
diantarkan
intd/23 : amplop juga namun dalam proses pembuatan oleh qmail-queue
info/23 : amplop yang menerangkan alamat pengirim, setelah preprocessing
local/23 : amplop lokal yang menerangkan alamat penerima, setelah
preprocessing
remote/23 : amplop remote yang menerangkan alamat penerima, setelah
preprocessing
bounce/23 : hasil antrian yang gagal

Berikut ini adalah level-level yang terjadi dalam sebuah email. Positif (+) berarti ada,
negatif (-) tidak ada dan (?) berarti mungkin ada mungkin tidak.
S1. –mess –intd –todo –info –local –remote –bounce
S2. +mess –intd –todo –info –local –remote -bounce

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


S3. +mess +intd –todo –info –local –remote -bounce
S4. +mess ?intd +todo ?info ?local ?remote –bounce (queued)
S5. +mess –intd –todo +info ?local ?remote ?bounce (preprocessed)

Untuk memasukkan email ke dalam antrian, qmail-queue menciptakan file


dalam direktori terpisah, yaitu pid/ dengan nama yang unik. Lalu file sistem
memberikan nomor inode. Qmail-queue mencari nomor tersebut, misalnya 23. Pada
level ini message 23 mencapai keadaan S1.

Lalu qmail-queue mengubah nama pid/apa_saja menjadi mess/23 dan naik


ke keadaan S2 dan menulis pesan ke mess/23. Lalu qmail-queue membuat intd/23
dan keadaan berubah ke S3 dan menulis informasi amplop ke intd/23.

Pada tahap akhir qmail-queue membuat link baru, yaitu dari intd/23 ke todo/23 dan
keadaan naik ke S4. Pada saat ini email sudah sukses memasuki antrian dan untuk
selanjutnya qmail menyerahkan pekerjaan ke qmail-send.

Setelah email sukses memasuki antrian, maka qmail-send harus


memutuskan apakah penerima email ini berada di lokal atau remote. Ketika qmail-
send memberitahu adanya file todo/23, maka qmail-send telah mengetahui email 23
telah mencapai level S4. Lalu info/23, local/23 dan remote/23 akan dihapus bila ada.
Lalu qmail –send akan membuat ulang info/23 dan mungkin local/23 dan remote/23.
Setelah selesai qmail-send akan membuang todo/23 dan leadaan naik ke S5. Pada
saat ini email telah selesai pada tahap preprocessed (sebelum diproses).

Email pada keadaan S5 diperlakukan dengan menandai setiap alamat di


local/23 dan remote/23 sebagai DONE dan NOT DONE.
DONE : email sukses diantarkan, atau antaran sebelumya menemui kegagalan
permanen. Atau dengan kata lain qmail-send tidak akan mecoba lagi mengantarkan
ke alamat tersebut.
NOT DONE : email yang diantarkan belum sampai ke tujuan dengan kegagaln
sementara. Hal ini menyebabkan qmail-send terus mencoba untuk beberapa saat.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Qmail-send akan mencoba mengantarkan email yang NOT DONE pada saat
proses tidak terlalu banyak. Bila email telah diantarkan dengan sukses, qmail-send
akan memberi tanda DONE. Sedangkan bila antaran menemui kegagalan permanen
maka qmail-send akan mengirimkan catatan ke biunce/23 dan email akan diberi
tanda DONE.
Qmail-send menangani email bnounce setiap saat dengan membuat pesan bounce
ke bounce/23 dan mess/23 dan meneruskan ke qmail-inject. Setelah selesai maka
bounce/23 akan dihapus.
Ketika semua alamat di local/23 ditandai DONE, maka qmail-send akan
menghapusnya, begitu pula untuk remote/23. Ketika local/23 dan remote dihapus,
maka qmail-send akan menghapus email dari antrian dengan menghapus
bounce/23 , info/23 dan secara berangsur-angsur keadaan untuk message 23 akan
berubah ke S2 dan S1.

Bila komputer crash sewaktu qmail-queue mencoba membuat antrian untuk


sebuah email, maka email akan ditingallkan dalam keadaan S atau S3. Lalu ketika
sistem memulai lagi, qmail-send akan melihat sebuah email dalam keadaan S2dan
S3 yang lebih dari 36 jam, maka mess/23 akan dihapus. Sama halnya seperti qmail-
send melihat file dalam pid/ yang lebih dari 36 jam, maka akan dihapus.
Pembersihan tidak perlu dilakukan apabila qmail-send sedang dalam tahap
pengantaran. Kemungkinan terburuk email akan terkirimkan dua kali.

Sama halnya dengan bila komputer crash hanya beberapa saat sebelum
qmail-send memberikan tanda DONE kepada sebuah email, maka pada tahap
berikutnya setelah selesai dari crash, qmail-send akan mengatasi email yang NOT
DONE. Padahal email sudah terkirim, hanya tandanya saja yang NOT DONE.

q Instalasi Qmail
Untuk mendapatkan informasi yang lebih lengkap tentang qmail dapat
diperoleh dari http://www.qmail.org

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Berikut langkah-langkah instalasi Qmail secara manual:
• Ambil source dari situs yang menyediakan. Source ini masih berupa file
compress yang berekstension tar.gz. Versi terbaru sampai saat ini adalah
versi 1.03 .
Kemudian taruh source di direktori tertentu misalnya /tmp.
• Extrack file qmail-1.03.tar.gz dengan command :
# tar zxvf qmail-1.03.tar.gz
Setelah itu file akan di ekstrak dan disimpan dalam direktori
/tmp/qmail-1.03
• Buatlah direktori /var/qmail dengan command :
# mkdir /var/qmail
• buat user dan group :
group : nofiles dan qmail
user : qmaill, qmails, qmaild, qmailr
Untuk membuatnya sudah ada perintahnya seperti yang ada pada
dokumentasi yaitu dengan command :
# groupadd nofiles
# useradd alias -g nofiles -d /var/qmail/qmaild
# useradd qmaild -g nofiles -d /var/qmail qmaill
# useradd qmaill -g nofiles -d /var/qmail qmailp
# groupadd qmail
# useradd –g qmail -d /var/qmail qmailq
# useradd -g qmail -d /var/qmail qmailr
# useradd -g qmail –d /var/qmail qmails
• Kembali ke direktori dimana source qmail diletakkan. Lalu compile source
dengan command :
# make setup check
• Lakukan perintah untuk mensetup file konfigurasi qmail dengan command :
# ./config
Atau dengan command minimal yang menyatakan nama internet host:
# ./ config-fast nama-host.domain.anda

§ Setelah perintah di atas, file configurasi yang tercipta diletakkan pada


direktori /var/qmail/control. Dapat dilihat terdapat beberapa file konfigurasi :
me, rcpthosts, locals dan yang lainnya, sedangkan yang minimal harus ada
adalah file me yang menyatakan nama internet host tersebut.
• Dengan perintah config-fast nama domain ini, script config akan menuliskan
nama.domain.anda ke dalam file control/me, control/local dan control

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


/rcpthosts sehingga qmail secara default akan menerima e-mail dari
nama.domain.anda.
§ Sebelum menjalankan qmail, ada beberapa hal yang perlu disetup:
Pertama membuat alias yang akan menangani e-mail dengan user tidak
dikenal, untuk mengaktifkan alias, jalankan perintah berikut ini :
# touch alias/qmail-postmaster
# chmod 644 ~alias/qmail-postmaster
# touch ~alias /qmail-mailer-daemon
# chmod 644 ~alias/qmail-mailer-daemon
# touch ~alias/qmail-root
# chmod 644 ~alias/qmail-root

§ Kemudian seting Mailbox, umumnya MTA menggunakan dua format dalam


menangani e-mail, yakni format mbox, dan format maildir. Format mbox akan
menyimpan email dalam sebuah file yang akan menambahkan mail secara
otomatis ke dalam file yang bersangkutan. Sedangkan format maildir
merupakan format yang anti crash dan lebih reiable dibanding format mbox.

q Setting mbox
Sendmail dalam mendistribusikan e-mail secara lokal menggunakan binmail
yang secara default akan mengirimkan mail ke folder /var/spool/mail/nama_user
menggunakan qmail-local dan menyimpannya ke folder ~nama_user/Mailbox.
• Pindahkan /var/spool/mail/nama_user ke ~nama-user/Mailbox ;
# cd /var/spool/mail
# cp nama_user /home/nama_user/Mailbox
# rm nama_user

• Buat link simbolik dari ~nama_user/Mailbox ke /var/spool/mail/nama_user :


# cd /home/nama_user
# ln –s Mailbox /var/spool/mail/nama_user

q Konfigurasi dan Test Qmail

• Untuk menjalankan script qmail dapat dijalankan program qmail sbb:


# csh –cf ‘/var/qmail/rc &’
• Jika qmail sudah berjalan, maka dalam file log (umumnya /var/log/maillog)
akan memberikan pesan :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Qmail : status: local 0/10 remote 0/20
• Untuk mengetahui program-program qmail yang sedang berjalan, lakukan
perintah :
# ps ax |grep qmail
Maka akan tampak daemon qmail yang sedang idle yaitu :
Qmail-send, dijalankan oleh qmails;
Qmail-lspawn, dijalankan oleh root;
Qmail-rspawn, dijalankan oleh qmailr;
Qmail-clean, ijalankan oleh qmailq;
Splogger, dijalankan oleh qmaill, untuk mencatat aktivitas qmail ke file log.
§ Untuk testing qmail maka dijalankan perintah pengiriman qmail untuk diri
sendiri :
# echo to: aku | /var/qmail/bin/qmail-inject

• File log akan mencatat kurang lebih sbb:


qmail: new msg 53
qmail: info msg 53: bytes 246 from admin@linux.net .qp20345 uid 666
qmail: starting delivery 2: msg 53 to local nama_user@linux.net
qmail: status: local 1/10 remote 0/20
qmail: delivery 1: success: did_1+0+0/
qmail: status : local 0/10 remote 0/20
qmail: end msg 53

• Kemudian tes pengiriman mail ke user sembarang :


# echo to: nama_user | /var/qmail/bin/qmail-inject

• Pada file log akan tampak sebagai berikut :


qmail: new msg 53
qmail: info msg 53: bytes 246 from admin@ linux.net qp 20351 uid 666
qmail: starting delivery 2: msg 53 to local nama_user@ linux.net
qmail: status: local 1/10 remote 0/20
qmail: delivery 2: failure: no_such_address._#5.1.1_/
qmail: status: local 0/10 remote 0/20
qmail: bounce msg 53
qmail: new msg 54
qmail: info msg 54: bytes 743 from <> qp 20357 uid 666
qmail: starting delivery 3: msg 54 to local admin@linux.net
qmail: status: local 1/10 remote 0/20
qmail: delivery 3: success: did_1+0+0/
qmail: status: local 0/10 remote 0/20
qmail: end msg 54
Maka setelah anda membuka mailbox akan terdapat mail yang balik lagi.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


• Selain lewat test qmail-inject, anda dapat langsung lewat smtp qmail.
# telnet 192.168.0.101
Trying 192.168.0.101…
Connected to 192.168.0.101.
Escape character is ‘^]’.
Mail admin@ linux.net
250 ok
data
354 go ahead
subject : tes
tes

• Untuk memulai qmail bekerja di bawah inetd maka edit /etc/inetd.conf dengan
menambahkan line :
smtp stream tcp nowait qmaild /var/qmail/bin/tcp-env tcp-env
/var/qmail/bin/qmail-smtpd
Semua line diletakkan dalam satu baris, maksudnya walaupun baris sudah
tidak cukup, teruskan saja tanpa menekan tombol enter.

• Qmail perlu dijalankan setiap kali sistem hidup, oleh karena itu perlu dibuat
script yang akan menjalankan qmail secara otomatis. Pada waktu booting,
sistem akan membaca direktori /usr/local/etc/rc.d/ . Maka perlu dibuat link dari
direktori ini ke file script yang menjalankan qmail yang terletak pada
/var/qmail/boot.
# cd /usr/local/etc/rc.d
# ln -s /var/qmail/boot/binm1 qmail.sh
# chmod +x qmail.sh

• Instalasi telah selesai, tinggal mereboot ulang sistem atau dengan merestart
inetd dan menjalankan script yang memulai qmail.
# kill -HUP [pid inetd]
# /usr/local/etc/rc.d/qmail.sh

• Lalu perlu di check apakah proses qmail sudah berjalan. Hal ini dilakukan
dengan command :
# ps ax |grep qmail
Bila proses qmail sudah berjalan, maka akan keluar out put bila dilakukan ps
ax berupa 4 proses qmail yang sedang idle, yaitu :
qmail-send, qmail-lspawn, qmail-rspawn and qmail-clean.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Untuk melakukan testing, ada dua jenis tes yang perlu dilakukan yaitu delivery dan
receive. Dalam test ini, proses sendmail masih bisa berjalan dan test tidak akan
mengganggunya.
• Untuk test yang pertama dapat dilakukan dengan mengrimkan mail kepada
user yang bernama udin :
# echo to: udin | /var/qmail/bin/qmail-inject

• Lalu lihat apa yang telah dicatat syslogd (syslogd adalah sebuah daemon
yang melakukan logging terhadap sistem) dengan cara :
# tail -f /var/log/maillog

Maka akan terlihat output berupa proses kerja qmail untuk menyampaikan
message.
• Untuk test selanjutnya dilakukan pengiriman ke remote host
# echo to : logic@l inux.net | /var/qmail/bin/qmail-inject
• Lalu kembali lakukan checking pada syslogd seperti di atas. Untuk
melakukan testing receive dapat dilakukan dari host lain dengan mengirimkan
mail ke host yang sedang di test. Pada level ini, apabila semua test berhasil
maka sendmail boleh dimatikan prosesnya dengan :
# kill -9 [pid sendmail]

• Untuk melihat apakah qmail sudah bekerja pada port 25, maka dilakukan :
# telnet 192.168.0.97
Trying 192.168.0.97
Connected to 127.0.0.1.
Escape character is '^]'.
220 domain ESMTP
helo udin
250 domain
mail <udin@nama-host.domain.anda>
250 ok
rcpt <udin@nama-host.domain.anda>
250 ok
data
354 go ahead
Subject: test
Ini cuma test.
.
250 ok 812345679 qp 12345
quit
221 domain
Connection closed by foreign host.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


• Setelah semua test dilakukan dan berhasil, maka perlu dilakukan
pembuangan sendmail. Hal ini harus dilakukan agar user tidak dapat
menggunakan sendmail untuk mengirimkan mail. Untuk itu dilakukan :
# mv /usr/sbin/sendmail /usr/sbin/sendmail.bak
# chmod 0 /usr/sbin/sendmail.bak

• Dan buat link untuk menghubungkan sendmail dengan "sendmail" kepunyaan


qmail. Hal ini dibutuhkan agar sistem tetap mengenali sendmail.
# ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail

• Dan edit file /etc/rc.conf untuk tidak memulai sendmail pada waktu booting,
yaitu pada line :
sendmail=YES diubah menjadi sendmail=NO

• Untuk mengubah konfigurasi MUA mail, file konfigurasi yang perlu diedit
adalah /etc/mail.conf.
• Tambahkan line set sendmail=/var/qmail/bin/date-mail .
• Setelah semua selesai, ada baiknya system dibooting ulang.
• Lakukan test dan selama itu amati terus logging di /var/log/maillog dengan
perintah:
#tail -f /var/log/maillog

q Instalasi qmailadmin, ezmlm, ezmlm-idx, dan autoresponder.

Qmailadmin digunakan untuk administrasi account-account pada sebuah


virtualdomain, qmailadmin membutuhkan ezmlm(+ezmlm-idx) serta autoresponder.
Karena qmailadmin yang standar tidak mengijinkan pengesetan quota pada sebuah
account maka kita putuskan untuk menggunakan qmailadmin versi lama beserta
patch untuk mengatasinya.

Download ezmlm, ezmlm-idx, autoresponder, qmailadmin dan patch :

#wget http://cr.yp.to/software/ezmlm-0.53.tar.gz

#wget http://inter7.com/qmail/ezmlm-patches/ezmlm-idx-0.40.tar.gz
#wget http://inter7.com/devel/autorespond-2.0.2.tar.gz
#wget http://inter7.com/qmailadmin/qmailadmin-1.0.4.tar.gz
#wget http://www.inter7.com/quotafix-patch.1.0.4-03-LINUX.tar.gz

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Perhatian : Jika anda menggunakan glibc versi 2.3 keatas (misalnya SuSE 9.1),
silakan download patch untuk ezmlm(-idx) :

#wget http://qmail.cbn.net.id/moni.csi.hu/pub/glibc-2.3.1/ezmlm-idx-
0.53.400.unified_41.patch

Ekstrak source-source tersebut diatas :

#tar -xzvf ezmlm-0.53.tar.gz


#tar -xzvf ezmlm-idx-0.40.tar.gz
#tar -xzvf autorespond-2.0.2.tar.gz
#tar -xzvf qmailadmin-1.0.4.tar.gz
#tar -xzvf quotafix-patch.1.0.4-03-LINUX.tar.gz

Install ezmlm+ezmlm-idx :

#mv ezmlm-idx-0.40/* ezmlm-0.53/


#cd ezmlm-0.53
# patch < idx.patch
# patch -p1 < ../ezmlm-idx-0.53.400.unified_41.patch

Kompile dan install ezmlm-(idx) :

# make
# make man
# make setup

Install autoresponder :

# cd ../autorespond-2.0.2
# make
# make install

Install qmailadmin :

# cd ../qmailadmin-1.0.4
# patch -p1 < ../quotafix-patch/quotafix-patch.diff
# ./configure \
--enable-htmldir=/usr/local/httpd/htdocs \
--enable-cgibindir=/usr/local/httpd/cgi-bin
# make
# make install

Jika sukses, maka akan terdapat file qmailadmin pada direktori /usr/local/httpd/cgi-
bin :

# ls -la /usr/local/httpd/cgi-bin/qmailadmin
-rwsr-sr-x 1 vpopmail vchkpw 277728 Feb 28 18:12
/usr/local/httpd/cgi-bin/qmailadmin

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Kemudian anda bisa menggunakan web broswer untuk mulai melakukan
administrasi, URL nya tergantung dari konfigurasi apache anda, misalnya
berdasarkan contoh diatas adalah http://admin.linux.net/cgi-bin/qmailadmin
kemudian masukkan domain yang akan dikelola beserta password dari user
postmaster.

q Instalasi Courier Imap

Courier Imap, sesuai dengan namanya adalah sebuah IMAP server yang
mendukung format penyimpanan email dengan menggunakan format Maildir. Dalam
hal ini kita menggunakan Courier Imap untuk backend dari webmail squirrelmail.

Donwload courier-imap, ekstrak sourcenya, dan kita kompilasi :

#wget http://inter7.com/imap/courier-imap-1.7.0.20030215.tar.bz2
#tar -jxvf courier-imap-1.7.0.20030215.tar.bz2
#cd courier-imap-1.7.0.20030215
# ./configure \
--enable-workarounds-for-imap-client-bugs \
--disable-root-check
# make
# make install

Kita tidak membutuhkan module authentikasi yang lain (jika ada), jadi module dari
courier-imap kita dihapus saja :) :

# rm -rf /usr/lib/courier-imap/libexec/authlib/*

Salin modul authvchkpw dari source courier-imap yang telah kita kompilasi diatas ke
direktori modul authentikasi untuk imap servernya :

# cp authlib/authvchkpw \ /usr/lib/courier-imap/libexec/authlib/

Salin file konfigurasi standar dari courier-imap :

# cp /usr/lib/courier-imap/etc/imapd.dist \ /usr/lib/courier-
imap/etc/imapd
# cp /usr/lib/courier-imap/etc/imapd-ssl.dist \ /usr/lib/courier-
imap/etc/imapd-ssl

Edit file /usr/lib/courier-imap/etc/imapd , karena courier imap ini hanya


digunakan untuk webmail ganti pada baris ADDRESS=0 menjadi
ADDRESS=127.0.0.1 . Jika webmail anda adalah webmail yang sibuk, anda bisa
menaikkan variabel MAXDAEMONS dan MAXPERIP, yang terpenting adalah ganti
pada AUTHMODULES="authdaemon" menjadi AUTHMODULES="authvchkpw":

Start daemon courier-imap :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


# /usr/lib/courier-imap/libexec/imapd.rc start

Anda bisa memeriksa apakah servise courier-imap anda sudah berjalan semestinya,
kita gunakan perintah ps :

# ps ax | grep imap
2049 ? S 0:00 /usr/lib/courier-imap/libexec/couriertcpd -address=12
2052 ? S 0:00 /usr/lib/courier-imap/libexec/courierlogger imapd

Agar setiap reboot daemon courier-imap dijalankan secara otomatis :

# echo \ "/usr/lib/courier-imap/libexec/imapd.rc start" >>


/etc/rc.local

q Instalasi Squirrelmail

Menurut file INSTALL dari distribusi Squirrelmail, software ini membutuhkan


php4 yang minimal dikompilasi dengan opsi --enable-track-vars --enable-force-cgi-
redirect --with-gettext serta membutuhkan register_global=On dan file_uploads =
On di php.

Download dan ekstrak paket squirrelmail yang paling baru :

#wget \ http://inter7.com/squirrelmail/squirrelmail-1.2.11.tar.gz
Perhatian : Perintah diatas diketik dalam satu baris
Lalu jalankan perintah tar untuk melakukan proses instalasi squirrelmail.
#tar -xzvf squirrelmail-1.2.11.tar.gz

Tentukan letak direktori squirrelmail, misalnya disini saya letakkan didirektori


/usr/local/httpd/htdocs/mail sehingga berdasarkan contoh dan konbfigurasi
nantinya akan bisa diakses melalui http://admin.linux.net/mail

#mv squirrelmail-1.2.11 /srv/www/htdocs/mail

Tentukan user dan group yang menjalankan proses apache :

#egrep '^(User|Group)' /usr/local/httpd/conf/httpd.conf


User www
Group www

Dari perintah diatas kita peroleh user www dan group www, kemudian ganti
kepemilikan direktori /usr/local/httpd/htdocs/mail/data menjadi user www dan group
www :

#chown -R www.www /usr/local/httpd/htdocs/mail/data/

Salin file konfigurasi standar ke file konfigurasi squirrelmail :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


#cp /usr/local/httpd/htdocs/mail/config/config_default.php \
/usr/local/httpd/htdocs/mail/config/config.php

Edit file tersebut dari $imap_server_type = 'cyrus'; menjadi$imap_server_type =


'courier'; :

#vi /usr/local/httpd/htdocs/mail/config/config.php

Atau jika anda mengalami kesulitan anda bisa menggunakan script perl yang
disertakan oleh squirrelmail, pada direktori config :

#cd /usr/local/httpd/htdocs/mail/config
# ./conf.pl

Kemudian silakan dicoba dengan browser anda, misalnya


http://admin.linux.net/mail, kemudian masukkan user yang telah anda buat misalnya
admin@linux.net kemudian anda bisa mengganti Personal Information atau Folder
Preferences dari menu Options.

q Memilih Script Qmail


Untuk memulai qmail diperlukan sebuah script. Ada beberapa pilihan yang dapat
dilihat pada /var/qmail/boot. Secara garis besar pilihan tersebut dibedakan menjadi:
• Format mail Mailbox ke masing-masing home direktori
• Format mail Binmail seperti layaknya pada sendmail yang meletakkan di
/var/mail/nama_user .
• Format mail Maildir. Ini merupakan format mail yang terbaru dan baru ada
pada saat pembuatan Qmail. Selain Qmial , Postfix juga sudah support.
Format ini mempunyai keunggulan tahan terhadap crash, karena masing-
masing mail dituliskan pada file yang berbeda.

Ketiga pilihan diatas harus dipertimbangkan secara matang. Berikut ini dijelaskan
pertimbangan untuk memilih salah satunya.
• Apabila instalasi qmail dilakukan berbarengan dengan instalasi Linux lebih
baik dipilih mode Maildir. Sampai saat ini Mail User Agent (MUA) yang bisa
membaca format Maildir baru Mutt dan Mew. Walau pun begitu user masih
bisa membaca melalui mode pop.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


• Apabila system telah lama ada serta telah mempunyai user yang banyak,
lebih baik dipilih mode Binmail. Hal ini agar memudahkan penyesuaian dari
sendmail ke qmail. Ini adalah rekomendasi utama.
• Setelah dicoba, Mutt ternyata masih terlalu sulit untuk digunakan maka dipilih
mode Mailbox. Dengan mode Mailbox, Pine bisa digunakan.

q Mailing List Server

Untuk mengatur sebuah mailing-list diperlukan suatu aplikasi sederhana yang


mudah diimplementasikan. Selain itu diperlukan juga sebuah aplikasi untuk
mengotomasikan hal-hal yang berhubungan dengan mailling-list, yaitu :

• Menambahkan anggota baru


• Mengurangi anggota
• Memberikan informasi tentang subjek pembicaraan mailling-list.
• Mengarsipkan mail-mail yang datang ke sebuah mailling-list
• Memberitahu kepada owner bahwa ada alamat yang sudah tidak hidup lagi
• Untuk mailling-list tertutup, aplikasi ini dapat memberitahukan bahwa ada orang
yang meminta untuk menjadi anggota dan meminta persetujuan kepada owner
mailling-list yang bersangkutan.
• Menambahkan header atau pun footer pada mail yang masuk.

Salah satu mailing list server yang memiliki kemampuan tersebut adalah
EZMLM (www.ezmlm.org). Selain itu ia juga masih memiliki hubungan saudara
dengan qmail (pembuatnya sama), sehingga ezmlm hanya akan berjalan di qmail
dan tidak di MTA yang lain.

q Instalasi vpopmail

Donwload vpopmail yang paling baru, ekstrak, kemudian buat grup dan user yang
akan menghandle vpopmail :

# wget http://inter7.com/vpopmail/vpopmail-5.2.1.tar.gz
# tar -xzvf vpopmail-5.2.1.tar.gz
# cd vpopmail-5.2.1
# groupadd vchkpw
# useradd -g vchkpw vpopmail

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Opsi --enable-default-domain dibawah ini (pada saat kompilasi vpopmail)
digunakan untuk mengeset pada saat pengambilan email melalui protokol pop3, jika
memasukkan format user saja tanpa user@domain maka vpopmail akan
menganggap sebagai user@domain-default-tersebut , disini kita misalkan linux
sebagai default domain :

[root@wedus vpopmail-5.2.1]# ./configure --enable-default-domain=linux

Kompile dan install :

# make
# make install

Ganti direktori ke /home/vpopmail/bin untuk menambah virtual domain, ingat


password postmaster ini akan digunakan nantinya jika anda menggunakan
qmailadmin untuk administrasi sebuah virtualdomain menggunakan web browser :

# cd /home/vpopmail/bin
# ./vadddomain linux
Please enter password for postmaster:
enter password again:

Test membuat sebuah alamat email :

# ./vadduser admin@linux
Please enter password for admin@linux:
enter password again:

Buat direktori dan file script supervise untuk menjalankan qmail-pop3d (pop server) :

# mkdir -p /var/qmail/supervise/qmail-pop3d
# vi /var/qmail/supervise/qmail-pop3d/run

Isinya :

#!/bin/sh
PATH=$PATH:/usr/local/bin:/var/qmail/bin
export PATH
MAXPOP3D=30
exec /usr/local/bin/softlimit -m 5000000 \
tcpserver -H -v -c "$MAXPOP3D" 0 110 qmail-popup admin.linux
/home/vpopmail/bin/vchkpw \
qmail-pop3d Maildir/ 2>&1

Silakan anda sesuaikan variabel MAXPOP3D dan hostname admin.linux dengan


konfigurasi yang sesuai dengan kondisi mail server anda.

Buat file script supervise untuk menjalankan log qmail-pop3d :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


# mkdir -p /var/qmail/supervise/qmail-pop3d/log
# vi /var/qmail/supervise/qmail-pop3d/log/run

Isinya :

#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t
s1048576 /var/log/qmail/pop3d

Buat direktori log qmail-pop3d serta mengeset file script tersebut menjadi executable
:

#mkdir /var/log/qmail/pop3d
#chown qmaill /var/log/qmail/pop3d
#chmod 755 /var/qmail/supervise/qmail-pop3d/run
#chmod 755 /var/qmail/supervise/qmail-pop3d/log/run

Perhatian : Sebelum melakukan simlink, pastikan tidak ada daemon pop3 yang
sedang berjalan diserver anda. Anda bisa memeriksa dengan menggunakan
perintah netstat atau lsof , juga periksa kembali konfigurasi (x)inetd anda.

Akhirnya kita masukkan script supervise qmail-pop3d kedalam /service :

#ln -s /var/qmail/supervise/qmail-pop3d /service

Untuk memeriksa apakah servise pop3 server sudah bekerja :

#ps ax | grep tcpserver


1057 ? S 0:00 tcpserver -H -R -v -x /etc/tcp.smtp.cdb -c 30 -u 503
1061 ? S 0:00 tcpserver -H -v -c 30 0 110 qmail-popup admin.linux

Untuk sekedar memastikan, anda bisa mencoba telnet ke localhost port 110 :

#telnet localhost 110


Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK <5724.1035514277@admin.linux>

Download script untuk menjalankan qmail, anda bisa download di


http://www.lifewithqmail.org/qmailctl-script-dt70 namun anda harus menambahkan
untuk start/stop daemon pop3d nya, atau alternatif lain script yang sudah ditambah
start/stop daemon pop3d di http://people.cakraweb.com/~admin/qmailctl :

# wget http://people.cakraweb.com/~admin/qmailctl
# mv qmailctl /var/qmail/bin/qmailctl
# chmod 755 /var/qmail/bin/qmailctl
# ln -s /var/qmail/bin/qmailctl /usr/bin

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Jika anda tidak memakai SuSE based style, anda bisa langsung ke Start-Stop qmail
:

# ln -s /var/qmail/bin/qmailctl /etc/rc.d/init.d/qmail
# ln -s /etc/rc.d/init.d/qmail/qmail /etc/rc.d/rc0.d/K30qmail
# ln -s /etc/rc.d/init.d/qmail/qmail /etc/rc.d/rc1.d/K30qmail
# ln -s /etc/rc.d/init.d/qmail/qmail /etc/rc.d/rc2.d/S80qmail
# ln -s /etc/rc.d/init.d/qmail/qmail /etc/rc.d/rc3.d/S80qmail
# ln -s /etc/rc.d/init.d/qmail/qmail /etc/rc.d/rc4.d/S80qmail
# ln -s /etc/rc.d/init.d/qmail/qmail /etc/rc.d/rc5.d/S80qmail
# ln -s /etc/rc.d/init.d/qmail/qmail /etc/rc.d/rc6.d/K30qmail

Untuk Start-Stop qmail anda bisa lakukan perintah berikut :

# qmailctl stop
Stopping qmail...
qmail-smtpd
qmail-send
qmail-pop3d
# qmailctl start
Starting qmail

Kemudian kita mencoba mengetest mengirim email misalnya dari admin@linux.net ,


dari perintah tail -f /var/log/qmail/current kita dapatkan log seperti berikut :

#tail -f /var/log/qmail/current
@403db6657501bc540c new msg 224662
@403db6657501bc6b7c info msg 224662: bytes 906 from
<admin@linux.net> qp 995 uid 503
@403db6657501e995fc starting delivery 1: msg 224662 to local linux-
admin@linux
@403db6657501eb3fc4 status: local 1/10 remote 0/20
@403db6657504fac1e4 delivery 1: success: did_0+0+1/
@403db6657504fad954 status: local 0/10 remote 0/20
@403db6657504fd8cbc end msg 224662

Jika anda mengubah hasil format log dari unix timestamps ke format yang lebih
mudah dibaca oleh manusia, anda bisa piping dengan menggunakan tai64nlocal :

#tail -f /var/log/qmail/current | tai64nlocal


2002-10-23 16:01:31.029119500 new msg 224662
2002-10-23 16:01:31.029125500 info msg 224662: bytes 906 from
<admin@linux.net> qp 995 uid 503
2002-10-23 16:01:31.032085500 starting delivery 1: msg 224662 to
local linux-admin@linux
2002-10-23 16:01:31.032194500 status: local 1/10 remote 0/20
2002-10-23 16:01:31.083542500 delivery 1: success: did_0+0+1/
2002-10-23 16:01:31.083548500 status: local 0/10 remote 0/20
2002-10-23 16:01:31.083725500 end msg 224662

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Lalu kita periksa apakah email tersebut sudah masuk ke dalam mailbox
admin@linux, anda bisa menggunakan POP3 client, misalnya Eudora. Karena
domain linux merupakan default domain, anda bisa menggunakan user saja
misalnya admin atau format user@domain misalnya admin@linux sebagai
accoutname atau username untuk authentikasi ke server POP tersebut, atau anda
juga bisa melalui old-fashioned-way, telnet port 110 di localhost :

#telnet localhost 110


Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK <5897.1035517402@admin.linux>
user admin@linux
+OK
pass 123
+OK
list
+OK
1 988
.
quit
+OK
Connection closed by foreign host.

Disitu kita lihat email sudah masuk dengan sukses ke alamat yang dituju.
Untuk menambahkan virtual domain yang lain (misalnya mail.net), anda tinggal
menuju ke /home/vpopmail/bin kemudian ./vadddomain mail.net misalnya :

# cd /home/vpopmail/bin
# ./vadddomain mail.net

q Instalasi ezmlm
Berikut adalah tahapan-tahapan instalasi ezmlm secara manual :
• Ambil paket aplikasi ezmlm yang dibutuhkan pada ftpserver yang tersedia,
misal ftp://ftp.linux.net dalam bentuk file ezmlm-0.53.tar.gz dan ezmlm-idx-
0.40.tar.gz
• Ekstrak file sbb:
# tar zxvpf ezmlm-0.53.tar.gz
# tar xxvpf ezmlm-idx-0.40.tar.gz

• Masuk ke file ezmlm-0.53 :


#cd ezmlm-0.53

• Kompilasi :
# make
# make man

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


# make setup

• Setelah proses kompilasi selesai, file-file binary ezmlm diletakkan pada


direktori /usr/ocal/bin/ezmlm.
File-file tersebut :
Ezmlm-make > membuat mailling-list
Ezmlm-sub > memasukkan anggota baru
Ezmlm-unsub > menghapus anggota
Ezmlm-manage > mengatur kerja ezmlm
Ezmlm-reject > menolak mail masuk
• Setelah itu anda pindahkan arsip dalam direktori ezmlm-idx ke direktori
ezmlm-0.53 untuk di patch.
# mv ../ezmlm-idx-0.40/* ../ezmlm-0.53/

• Kemudian patch ezmlm-0.53


# patch < idx.patch

• Kompile program dan man pages-nya


# make clean
# make; make man

• Tambahkan PATH untuk mengakses binary command dengan mengedit file


/root/.bashrc :
# vi /root/.bashrc

Tambahkan :

PATH = “$PATH:/usr/local/bin/ezmlm”
export PATH

q Testing ezmlm
Pada tahap ini tidak perlu memakai login root, namun untuk memudahkan
perlu memakai user yang bernama alias. Alias ini adalah nama user yang tercipta
sewaktu menginstall qmail. Untuk membuat shell dan password alias, dilakukan
dengan :

# passwd alias

§ Pengujian menggunakan login alias :


$ login alias
Password : *****

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


§ Masuk direktori tempat file-file binary ezmlm :
$ cd /usr/local/bin/ezmlm

§ Buat mailling test, dengan cara :


$ ./ezmlm-make ~alias/test ~alias/.qmail-test test linux.net

§ Masukkan alamat email sebagai anggota mailling-list test


$ ./ezmlm-sub ~alias/test admin@linux.net

§ Tes pengiriman email ke mailling-list :


$ echo subject : test |qmail-inject test@linux.net
atau
$ mail test@linux.net
subject : tes
Ini lagi ngetes lho…..

Lihat pada mailbox apakah ada mail yang masuk atau lihat pada file logging
/var/log/maillog sbb :
$ tail -f /var/log/maillog

Selain perintah – perintah di atas terdapat options-options khusus dalam


membuat dan mengelola mailing list server ezmlm ini. Untuk lebih jelasnya bisa
dipelajari di manual ezmlm-nya.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


q 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.

q Mekanisme SMB

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

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


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.

q 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.

q 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 ,

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


kalau user “user” melakukan autentikasi dengan smbd, duplikat baru akan berjalan
dengan permisi “user”, 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.

q 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).

q 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

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


--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

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

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


menjalankan Samba server, dibutuhkan file-file berikut ini dan harus dibuat atau
dikopi pada direktori-direktori yang cocok pada server kita.

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= TUX
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”.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


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.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


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.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


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.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


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
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

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.0.1 lab1
192.168.0.2 lab2
192.168.0.3 lab3

Teruskan pengisian file di atas untuk semua hosts yang ada dalam network kita.

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 :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


# 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

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
}

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

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


# 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

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Agar sript Samba secara otomatis menjalankan daemon nmbd dan smbd saat
sistem dihidupkan (atau direboot) lakukan perintah berikut ini :
# chkconfig -–level 345 smb on

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 :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


#!/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]

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Ø Pendahuluan
Struktur FTPDengan begitu tersedianya beragam informasi di Internet,
seringkali pengguna ingin mengcopy file tersebut. Sebagai contoh, bila ditemukan
file atau program yang menarik dan berhubungan dengan masalah yang dihadapi,
untuk itu biasanya dilakukan modifikasi pada program tersebut sesuai dengan
kebutuhan. Hal ini tidak mungkin dilakukan modifikasi file tersebut pada remote
login, yang dilakukan adalah file tersebut dicopy ke mesin local dan kemudian baru
dimodifikasi. Fasilitas untuk melakukan ini adalah dengan menggunakn ftp.

Gambar Interaksi FTP (Parker, 1994:126)

Proses ftp menggunakan ftp sebagai client, dan ftpd sebagai server. Tetapi berbeda
dengan koneksi telnet, ada 2 jenis koneksi yang terjadi.
Sesuai dengan namanya, tugas protocol ftp ini adalah mentransfer file dari
komputer satu ke komputer lainnya. Ini tidak tergantung dari lokasi komputer itu
berada, bagaimana cara koneksinya, atau bahkan sistem operasinya. Selama
komputer tersebut mempunyai akses ke Internet , berarti fasilitas ftp bisa
digunakan. Dengan kata lain selama sistem komputer terse-but memiliki protocol
TCP/IP, maka fasilitas ftp dapat digunakan.
Seperti juga telnet, ftp juga mempunyai akses berbagai macam database dan
service. Dapat ditemukan berbagai macam dari file artikel hinggai software dengan
cuma-cuma. Bagi seorang peneliti maka fasilitas ftp sangat membantu dalam
membantu kerja dan ada yang menganggap bahwa ftp merupakan suatu sarana
umum untuk saling membagi data.
Ftp adalah program yang complex karena ada beberapa cara untuk
memanipulasi file dan struktur file. Beberapa format untuk menyimpan (binary atau
ASCII, compress atau uncompress, dll) dan ada beberapa cara tambahan untuk
mendapatkannya secara benar. Akan dibahas juga sekilas tentang FTP anonymous.
Hampir semua public archives mempunyai fasilitas ini.

Protocol FTPProtocol FTP menggunakan 4 karakter ASCII yang diakhiri dengan

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


karakter NEWLINE. Beberapa kode membutuhkan parameter setelah kode tersebut.
Keuntungan menggunakan karakter ASCII, adalah untuk memudahkan user melihat
aliran perintah dalam upaya pemeriksaan pentrasnferan file.. Juga memudahkan
untuk mengakses ftpserver tanpa menggunakan ftp client. FTP internal command
yang digunakan oleh protocol dapat dilihat pada Tabel.

PERINTAH KETERANGAN
ABOR Abort previous command
ACCT User account ID
Allocate storage for forthcoming
ALLO
operation
APPE Append incoming data to an existing file
CDUP Change to parent directory
CWD Change working directory
DELE Delete file
HELP Retrieve information
LIST Transfer list of directories
MKD Make a directory
MODE Set transfer mode
NLST Transfer a directory listing
NOOP No operation
PASS User Password
PASV Request a passive open
PORT Port address
PWD Display current directory
QUIT Terminate the connection
REIN Terminate and restart the connection
REST Restart marker (restart transfer)
RETR Transfer a copy file
RMD Remove a directory
RNFR Old pathname for rename command
RNTO New pathname for rename command
SITE Provide service specifies
SMNT Mount a file system
STAT Return status
STOR Accept and store data
Accept data and store under different
STOU
name
STRU File structure
SYST Query to determine operating system
TYPE Type of Data

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


USER User ID

Setelah diberikannya suatu perintah internal ftp, maka akan diberikan reply
berbentuk bilangan 3 digit. Tanda pengembalian tersebut memiliki arti :

/
Digit pertama menunjukkan kesuksesan eksekusi suatu perintah.

Digit kedua dan ketika menunjukkan informasi yang lebih detail


> Digit ketiga jua menunjukkan informasi lebih tetapi bergantung dari
yang detail

implementasi

Digit Keterangan
Pertama
Aksi dimulai. Mengharapkan balasan lain
1.00
sebelum
mengirim perintah baru
Aksi selesai. Boleh mengirim suatu
2.00
perintah baru
3.00 Perintah diterima tetapi menunggu, kerna
kurang informasi
Perintah tidak diterima, atau diselesaikan.
4.00
Terjadi
error temporer. Perintah dapat dikirimkan
kembali
Perintah tidak dapat diterima atau
5.00
diselesaikan

Tabel Arti reply code digit pertama

Digit Keterangan
Kedua
0.00 Kesalahan sintaks atau perintah ilegal
1.00 Membalas atau menunggu informasi
Membalas yang mengacu pada
2.00
pengelolaan
koneksi
3.00 Membalas untuk perintah otentikasi
4.00 Tak digunakan
6.00 Membalas untuk status server

Tabel Arti reply code digit kedua

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Setelah melakukan koneksi dan login ke remore host dengan menggunakan
ftp, sebenarnya tidak benar-benar login ke mesin remote tersebut. Secara logikal
tetap login di mesin lokal, tetapi instruksi untuk transfer file dan perpindahan direktori
harus mengacu kepada mesin lokal.
Langkah-langkah ini dilakukan setiap kali melakukan koneksi. User dengan
menggunakan program FTP-CLient dapat mengontrol internal command ini.
Beberapa perintah pada tingkatan user ditunjukkan pada Tabel 5.4. Perintah ini
bergantung pada implementasi sistem.

FTP Command Keterangan


Mode transfer dengan menggunakan
ascii
ASCII
Mode transfer dengan menggunakan
binary
Binary
cd Pindah direktori
close Memutuskan hubungan
del Menghapus file di Server
dir Menampilkan direktori yang di Server

Table 5.4. Perintah-perintah user untuk FTP

FTP ini tersedia pada sebagian besar mesin UNIX. yang mengimplementasikan
TCP/IP. Dengan menggunakan FTP client di mesin yang berbasiskan
DOS/Windows, maka dapat dilakukan transfer data antara kedua mesin tersebut.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Ø Instalasi server FTP
FTP Server di aktifkan dengan mengeksekusi program ftp daemon yang
kemudian akan sipa di background dan mendengarkan (listen) di port 21 (default)
untuk siap menerima request. Yang biasa digunakan adalah wu-ftpd yang di
kembangkan oleh Washington University. Seperti biasa jalankan perintah rpm
#rpm -ivh wu-ftpd-x.rpm

Ø Konfigurasi server FTP


File-file konfigurasi untuk Wu-Ftpd terdapat di /etc sebagai berikut :
• services
• inetd.conf
• ftpaccess
• ftphosts
• ftpusers
FTP Server ini dijalankan oleh internet super server yang disebut inetd, suatu file
yang akan menentukan cara penanganan port tertentu oleh program daemon.

q /etc/services
Isi dari file services di /etc digunakan untuk mendefinisian port-port yang tersedia
dan dapat di gunakan.
ftp-data 20/tcp
ftp 21/tcp
Dua baris diatas yang mendefinisikan kepada inetd bahwa data dan command di
ftp server menggunakan port tersebut.

q /etc/inetd.conf
Baris yang menjalankan perintah inisialisasi ftp daemon adalah :
ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l -a
Keterangan dari baris diatas adalah :
• ftp menerangkan nama service
• stream menerangkan jenis soket yang digunakan
• tcp menerangkan jenis protokol yang digunakan
• nowait atau wait
• root pengguna yang menjalankan daemon tersebut, hal ini akan berkaitan
dengan hak pengguna tersebut. Biasanya dituliskan dalam format
user[.group]
• /usr/sbin/tcpd program daemon server yang dijalankan
• in.ftpd -l -a argumen yang diberikan pada program server
q /etc/ftpaccess
Hal-hal yang penting dalam konfigurasi akses ftp server adalah class, deny, limit,
noretrieve, loginfails, private, autogroup, dan guestgroup. Masing-masing fungsi
akan dijelaskan kemudian.
q class
Syntax :
class <classname> typelist addrglobal
Keterangan :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


• classname : adalah nama sebutan untuk sebuah class
• typelist : daftar jenis user yang terdiri dari real, guest, anonymous
• addrglobal : dapat berupa ip address ataupun host.domain.name dapat
menggunakan wildcard "*".
Misal :
class all real,guest,anonymous *
yang berarti ftp server menerima setiap request dari real user, guest, dan
anonymous dan dari mesin mana saja.
q deny
Sintaksnya adalah :
deny addrglobal message_file
Misal :
deny *.planet.tzo.com /etc/nggak-boleh-masuk.txt
Yang berarti ftp server menolak koneksi yang berasal dari semua host di bawah
domain planet.tzo.com.
q limit
Sintaks :
limit <classname> n times message_file
Keterangan :
• n : adalah jumlah user yang diperbolehkan akses ke ftp server secara
simultan
• times : Jarak waktu yang di tetapkan biasanya dalam hitungan hari Misalnya :
class lokal real *
limit lokal 100 0700-1300 /etc/kebanyakan.txt
Yang berarti real user yang di perbolehkan mengakses ftp server adalah
sejumlah 100 orang dari jam 7 AM-1 PM.
Dan bila pengakses tersebut gagal melakukan login maka ditampilkan pesan
pada file /etc/kebanyakan.txt
q loginfails
syntax :
loginfails number
Fungsinya adalah untuk menentukan berapa kali seorang user boleh salah
memasukkan login dan password sebelum
disconnect. Misal :
loginfails 3
Artinya user diberikan mencoba 3 kali memasukkan password sebelum akhirnya
koneksi diputuskan bila password
tidak tepat.
q /etc/ftphosts
File ftphosts digunakan untuk akses kontrol dari ftp server. syntax :
allow <username> <addrglobal>
deny <username> <addrglobal>
q /etc/ftpusers
File ini berisi daftar user yang tidak boleh akses ke ftp server

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Ø Pendahuluan

LTSP (http://www.ltsp.org/) adalah suatu project yang mengeksplorasi


kemampuan Linux untuk aplikasi diskless XTerminal.
XTerminal merupakan salah satu model thin client yang dapat dibangun dengan
platform Linux. Teknologi yang mirip sistem mainframe ini semakin populer karena
dapat menghemat sumber daya hardware tanpa perlu mengurangi performance.
Platform Linux yang kian berkembang dan memasyarakat telah terbukti
memberikan banyak solusi alternative yang mendorong efisiensi, penghematan
biaya dan kemudahan kerja. Sifatnya yang open telah melahirkan berbagai
kombinasi baru dibidang teknologi informasi dan dapat dimanfaatkan oleh siapa saja
yang mau memanfaatkannya. Jadi anda dapat bayangkan dengan banyak terminal
komputer kita cukup menyediakan satu harddisk.Dengan demikian teknologi Thin
Client, kita dapat mengoptimalkan komputer yang lama tidak kita pakai untuk dapat
digunakan kembali dengan mode GUI.

Ini adalah mekanisme client-server. Client di-boot menggunakan disket /


bootrom yang sudah terpasang kernel Linux. Setelah kernel di-load dalam memory,
ia mulai bekerja untuk mencari server yang memiliki DHCP atau Boot Protocol
(BOOTP). Server yang menangkap permintaan client memeriksa terlebih dahulu
apakah client tersebut sudah terdaftar sebagai komputer yang boleh masuk. Kalau
ya, server me mberikan IP Address kepada client, dan selanjutnya menjalankan
XWindow dimana prosesnya terjadi di server namun hasilnya tampak di client.Dilihat
dari cara ker janya, sistem ini sangat cocok untuk mereka yang memiliki dua
komputer atau lebih. Dengan kata lain sangat banyak institusi yang bisa
memanfaatkan telnologi XTerminal seperti WarNet, perkantoran, penyewaan
komputer, atau bagi mereka yang hanya sekedar mencoba untuk menggunakan
Linux sebagai sistem operasi sehari-hari.

Seperti kita ketahui dalam suatu jaringan jumlah server lebih sedikit
ketimbang client. Sistem XTerminal sendiri bisa dipasang dengan satu server dan
beberapa client, sehingga penggunaannya memberikan berbagai keuntungan
seperti:
- Spesifikasi komputer untuk client sangat minimal.
- Upgrading hardware dan program menjadi lebih mudah karena hanya
terjadi di sebuah komputer server.
Akhirnya dari keseluruhan point diatas diperoleh penghematan biaya serta
waktu yang digunakan untuk instalasi dan perawatan sistem.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Instalasi

Setting Komputer Server

Sebelum memulai mensetting komputer server, terlebih dahulu persiapkan file


RPMS dari ltsp yang dibutuhkan untuk setup pada Linux SuSE 9.1 system server.
File ltsp terdiri dari 3 bagian, yaitu :

q Lts_core-1.03-1.i386.rpm
Paket core dari lts, termasuk file sistem root, didalamnya terdapat konfigurasi utility
dan dokumentasi untuk komoputer terminal. Dokumentasi akan terinstall dalam di-
rektori /usr/doc/lts-1.03. Versi dari dokumentasi ini berupa file html, sgml, postscri
ript dan text.
q Linux kernels
Pre-compiled kernel untuk booting tanpa harddisk/diskless dengan melalui lan card
di dalamnya.
q X servers
File yang akan dibutuhkan untuk mengkonfigurasi X server video card yang sesuai
dengan komputer yang dipakai.

File DHCP
DHCP atau dynamic host configuration program adalah program yang
mendistribusikan alamat ip pada setiap mesin yang terhubung ke dalam jaringan.
Pemberian alamat ip secara dinamis ini memudahkan jaringan dengan user yang
banyak.

Perencanaan Untuk Alamat IP


Beberapa komputer dalam jaringan anda membutuhkan alamat ip yang ber beda
antara komputer satu dengan lainnya. Kami memberikan salah satu alternatif untuk
alamat ip dalam jaringan dimana alamat tersebut adalah bebas digunakan yai tu
192.168.0.0 (Class-C networks). Tentu saja anda bebas untuk memilih alamat ip

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


yang di inginkan. Untuk komputer server, kami memberikan pilihan alamat ip
192.168.0.254, dan unutk komputer terminal dimulai dengan alamat ip 192.168.0.1
dan seterusnya keatas, ini dengan asumsi komputer terminal yang ter- hubung
adalah 253 dengan satu server. Jika anda membutuhkan komputer terminal lebih
dari tersebut diatas, anda dapat mensetup classs-c networks yang lain dalam
server. Misalnya 192.168.0.1 untuk server dan untuk komputer terminal
menggunakan alamat ip antara 192.168.0.11 sampai 192.168.0.253. atau, anda
dapat menggunakan alamat dari class-b networks, dan dapat digunakan untuk
65533 komputer terminal yang semuanya berjalan dalam satu komputer server.
Kami memberikan nama dari komputer terminal yang sangat sederhana,
dimulai de ngan ‘ws001’ dan seterusnya.
q Upgrade xfs packet
Jika anda tidak menggunakan xfs, maka anda dapat mengabaikan dalam bagian ini.
Pada lts versi 1.01,default mode yang dijalankan tidak berjalan pada xfs. Instruksi
yang harus di ikuti hanyalah permintaan jika anda memilih mensetting konfigurasi
parameter dari ‘use_xfs’ dengan pilihan ‘Y’ dalam file /tftpboot/lts/ltsroot/ etc/lts.conf
Pada bagian xfs dengan suse linux versi 9.1 telah dapat menangani remote
workstation. Linux suse 9.1 tidak harus mengupdate xfs dalam menjalankan remote
system. Anda akan membutuhkan Xfree86-xfs-3.3.3.1-52.i386.rpm atau versi
diatasnya. Jika berjalan pada 8.0 keatas, anda tidak perlu kuatir tentang packet xfs,
ini akan ditangani oleh remote workstation, yang dibutuhkan atau perlu dirubah
hanyalah pada startup script dan pada XF86Config file dalam server.

Dalam file /etc/rc.d/init.d/xfs ada dua baris yang perlu di edit yaitu dalam direktori
/etc/rc.d/init.d/xfs pada baris 53 dan baris 73 Baris yang harus diubah pada bagian :
daemon xfs -droppriv -daemon -port -1
Menjadi
demon xfs -droppriv -daemon -port 7100
jadi hanya merubah ‘-1’ ke ‘7100’ (hilangkan juga tanda ‘-‘).
Direktori /etc/X11/XF86Config dalam baris 25, Baris yang perlu diubah :
FontPath “unix/:-1”
Menjadi

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


FontPath “tcp/localhost :7100”
Hanya merubah ‘unix’ ke ‘tcp’ dan ‘:-1’ ke ‘localhost:7100’.
q Edit Beberapa File Konfigurasi
Pada waktu menginstall file lts_core akan menghasilkan beberapa file konfigurasi,
tetapi file konfigurasi ini harus dimodifikasi untuk kebutuhan yang lebih spesifik.

/etc/inetd.conf
Default pada baris dalam inetd.conf untuk bootp dan tftp server adalah tidak aktif
(commented out). Hilangkan tanda ‘#’ pada baris ke 52 dan baris 63 pada inetd.conf.
# tftp dgram udp wait root /usr/sbin/tcpd in.tftpd
# bootps dgram wait root /usr/sbin/tcpd bootpd

/etc/X11/xdm/Xservers
Harus dipastikan Jika anda menginginkan X berjalan secara otomatis pada server.
Jika anda menginginkan pada saat sistem berjalan akan muncul mode grafik saat
login pada terminal, anda tidak perlu kuatir tentang modifikasi file Xservers. Jika
tidak menginginkan X berjalan secara otomatis saat booting pada terminal, ma ka
anda perlu memberikan tanda ‘#’ pada awal baris 40 dalam Xservers.
: 0 local /usr/X11R6/bin/X

/etc/X11/xdm/Xaccess
File kontrol ini digunakan remote terminal agar dapat berkomunikasi dengan
program xdm pada server. Untuk mengaktifkan remote access, edit file dan lihat
pada baris 40 maka akan dijumpai script seperti berikut :
# * #any host can get a login window

untuk mengaktifkannya hapus tanda ‘#’pada awal baris dan pastikan tanda asterik *
berada pada awal baris. Anda harus menghapus tanda # dan spasi.

/etc/X11/xdm/xdm-config
File kontrol ini diaktifkan agar remote terminal dapat mengakses xdm daemon pada
server. Pada baris 24 anda harus memberikan tanda # (comment out) untuk

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


mengaktifkannya.
DisplayManager.requestPort: 0
Menjadi
# DisplayManager.requestPort: 0

/etc/inittab
Server membutuhkan xdm yang harus bisa dijalankan. Hal ini dapat dijalankan dari
file /etc/inittab. Ada 3 jenis xdm yang terdapat dalam SuSE Linux sistem yaitu : gdm,
kdm dan xdm.
Untuk mengaktifkan xdm server perlu mengedit pada baris 18 dan baris 57 pada
/etc/inittab file.
X:5:respawn: /etc/X11/prefdm -nodaemon
Menjadi
X:5:respawn: /usr/bin/X11/xdm -nodaemon
Pada kondisi normal, xdm akan berjalan jika sistem berjalan pada level 5. Sistem
anda sekarang mungkin berjalan pada level 3. Untuk merubahnya pada baris 18.
Id:3:initdefault:
Menjadi
Id:5:initdefault:

/tftpboot/lts/ltsroot/etc/inittab
File konfigurasi ini digunakan untuk mengaktifkan shell pada komputer terminal ctrl-
alt-F1 dan ctrl-alt-F2.
Anda perlu menambahkan script :
1:35:respawn:/bin/sh

/tftpboot/lts/ltsroot/etc/lts.conf
Model dari hardware seperti mouse mungkin berbeda dengan type daripada server
dan lainnya. Untuk mematikan fungsi tersebut berikan tanda # pada awal baris.
Sebagai contoh :
[Default]
XSERVER = XF86_SVGA
SERVER = 192.168.0.254

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


X_MOUSE_PROTOCOL = “PS/2”
X_MOUSE_DEVICE = “/dev/psaux”
X_MOUSE_RESOLUTION = 400
X_MOUSE_BUTTONS = 3
USE_XFS = Y
UI_MODE = GUI
[ws001]
XSERVER = XF86_SVGA
X_MOUSE_PROTOCOL = “Microsoft”
X_MOUSE_DEVICE = “/dev/ttyS1”
X_MOUSE_RESOLUTION = 50
X_MOUSE_BUTTONS = 3
X_MOUSE_BAUD = 1200
[ws002]
XSERVER = XF86_Mach64
[ws003]
XSERVER = XF86_SVGA
X_COLOR_DEPTH = 24
USE_XFS = N
[ws004]
UI_MODE = CHAR

/etc/dhcpd.conf
Sebelum mengaktifkan dhcpd server anda perlu membuat file dhcpd.conf pada
direktori /etc dengan perintah mcedit /etc/dhcpd.conf, setelah membuat file tersebut
masukkan beberapa script kedalamnya dan sesuaikan antara alamat ip dengan
alamat dari masing-masing lan card komputer terminal.

Default-lease-time 21600;
Max-lease-time 21600;
Option subnet-mask 255.255.255.0;
Option broadcast-address 192.168.0.255;
Option routers 192.168.0.254;
Option domain-name-servers 192.168.0.254;

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Option domain-name “localhost”;
Option netbios-name-servers 192.168.0.254;
Shared-network workstation {
Subnet 192.168.0.0 netmask 255.255.255.0 {
}
}
group {
use-host-decl-names on;
option log-servers 192.168.0.254;

host ws001 {
hardware ethernet 00:00:2D:C7:B6:D6;
fixed-address 192.168.0.1;
filename “/tftpboot/lts/vmlinuz.all”;
}

host ws002 {
hardware ethernet 00:2D:21:F4:B6:D6;
fixed-address 192.168.0.2;
filename “/tftpboot/lts/vmlinuz.all”;
}
}

kemudian jalankan dhcp, maka anda akan menemui perintah untuk membuat
file pada direktori /var/state/dhcp/dhcpd.leases dan create file tsb serta isikan tulisan
sembarang, karena direktori ini merupakan file temporary untuk dhcpd dan aktif kan
service dhcpd untuk mengaktifkan dhcpd secara otomatis saat boot. Sebelum anda
mencoba mereboot komputer terminal, anda harus memasukkan juga nama
komputer terminal, nama server dan juga alamat ip dari masing-masing komputer
terminal dan server dalam file direktori /etc/hosts.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Ø Dasar Routing

Routing Lansung dan Tidak Langsung


Seperti telah disebutkansebelumnya, proses pengiriman datagram IP selalu
menggunakan tabel routing. Tabel routing berisi informasi yang diperlukan untuk
menentukan ke mana datagram harus di kirim. Datagram dapat dikirim langsung ke
host tujuan atau harus melalui host lain terlebih dahulu tergantung pada tabel
routing.

osiris seth
132.96.11.1 132.96.11.2
0:80:48:e3:d2:69 0:80:ad:17:96:34
0:80:48:ea:35:9a

132.96.11.0
132.96.12.9

isis
132.96.12.0

132.96.11.3
132.96.12.8
0:20:4c:30:29:29
0:80:ad:a7:96:f5

khensu
132.96.36.6
0:80:48:ea:35:10
132.96.36.0
khnemu
132.96.12.7
0:40:95:11:2:b5

toth anubis
132.96.36.4 132.96.36.5
0:80:ad:a6:b6:65 0:80:ad:a7:a3:81

Gambar Jaringan TCP/IP

Gambar diatas memperlihatkan jaringan TCP/IP yang menggunakan


teknologi Ethernet. Pada jaringan tersebut host osiris mengirimkan data ke host
seth, alamat tujuan datagram adalah seth dan alamat sumber datagram adalah
osiris. Frame yang dikirimkan oleh host osiris juga memiliki alamat tujuan frame seth

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


dan alamat sumbernya adalah osiris. Pada saat osiris mengirimkan frame, seth
membaca bahwa frame tersebut ditujukan kepada alamat ethernetnya. Setelah
melepas header frame, seth kemudian mengetahui bahwa IP address tujuan
datagram tersebut juga adalah IP addressnya. Dengan demikian set meneruskan
datagram ke lapisan transport untuk diproses lebih lanjut. Komunikasi model seperti
ini disebut sebagai routing langsung.

132.96.11.2 132.96.11.1 132.96.11.3

IP Pengirim: 132.96.11.1
Ethernet Address:0:80:48:e3:d2:69
IP Target: 132.96.11.2
Ethernet Address:0:80:ad:17:96:34

Gambar Routing langsung

Pada gambar diatas terlihat bahwa osiris dan anubis terletak pada jaringan
Ethernet yang berbeda. Kedua jaringan tersebut dihubungkan oleh khensu. Khensu
memiliki lebih dari satu interface dan dapat melewatkan datagram daari satu
interface ke intreface lain (atau bertindak sebagai router). Ketika mengirimkan data
ke anubis, osiris memeriksa tabel routing dan mengetahui bahwa data tersebut
harus melewati khensu terlebih dahulu. Dengan kondisi seperti ini datagram yang
dikirim osiris ke anubis memiliki alamat tujuan anubis dan alamat sumber osiris
tetapi frame ethernet yang dikirimnya diberi alamat tujuan khensu dan alamat
sumber osiris.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


IP pengirim: 132.96.11.1
Ethernet Address:0:80:48:ea:35:10
IP target: 132.96.36.5
Ethernet Address:0:80:ad:a7:a3:81

132.96.36.4 132.96.36.5 132.96.36.6

132.96.11.1 132.96.11.2 132.96.11.3

IP pengirim: 132.96.11.1
Ethernet Address:0:80:48:e3:d2:69
IP target: 132.96.36.5
Ethernet Address:0:20:4c:30:29:29

Gambar Routing tak langsung

Ketika osiris mengirimkan frame ke jaringan, khensu membaca bahwa alamat


ethernet yang dituju frame tersebut adalah alamat ethernetnya. Ketika khensu
melepas header frame, diketahui bahwa host yang dituju oleh datagram adalah host
anubis. Khensu kemudian memeriksa tabel routing yang dimilikinya untuk
meneruskan datagram tersebut. Dari hasil pemeriksaan tabel routing, khensu
mengetahui bahwa anubis terletak dalam satu jaringan ethernet dengannya. Dengan
demikian datagram tersebut dapat langsung disampaikan oleh khensu ke anubis.
Pada pengiriman data tersebut, alamat tujuan dan sumber datagram tetap anubis
dan osiris tetapi alamat tujuan dan sumber frame Ethernet menjadi anubis dan
khensu. Komunikasi seperti ini disebut sebagai routing tak langsung karena untuk

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


mencapai host tujuan, datagram harus melewati host lain yang bertidak sebagai
router.
Pada dua kasus diatas terlihat proses yang terjadi pada lapisan internet
ketika mengirimkan dan menerima datagram. Pada saat mengirimkan datagram,
host harus memeriksa apakah alamat tujuan datagram terletak pada jaringan yang
sama atau tidak. Jika lamat tujuan datagram terletak pada jaringan yang sama ,
datagram dapat langsung disampaikan. Jika ternyata alamat tujuan datagram tidak
terletak pada jaringan yang sama, datagram tersebut harus disampaikan melalui
host lain yang bertindak sebagai router. Pada saat menerima datagram host harus
memeriksa apakah ia merukapakan tujuan dari datagram tersebut. Jika memang
demikian maka data diteruskan ke lapisan transport. Jika ia bukan tujuan dari
datagram tersebut, maka datagram tersebut dibuang. Jika host yang menerima
datagram tersebut sebuah router, maka ia meneruskan datagram ke interface yang
menuju alamat tujuan datagram.

Jenis Konfigurasi Routing


Konfigurasi routing secara umum terdiri dari 3 macam yaitu :
• Minimal Routing
Dari namanya dapat diketahui bahwa ini adalah konfigurasi yang paling
sederhana tapi mutlak diperlukan. Biasanya minimal routing dipasang pada
network yang terisolasi dari network lain atau dengan kata lain hanya pemakaian
lokal saja.
• Static Routing
Konfigurasi routing jenis ini biasanya dibangun dalam network yang hanya
mempunyai beberapa gateway, umumnya tidak lebih dari 2 atau 3. Static routing
dibuat secara manual pada masing-masing gateway. Jenis ini masih
memungkinkan untuk jaringan kecil dan stabil. Stabil dalam arti kata jarang
down. Jaringan yang tidak stabil yang dipasang static routing dapat membuat
kacau seluruh routing, karena tabel routing yang diberikan oleh gateway tidak
benar sehingga paket data yang seharusnya tidak bisa diteruskan masih saja
dicoba sehingga menghabiskan bandwith. Terlebih menyusahkan lagi apabila

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


network semakin berkembang. Setiap penambahan sebuah router, maka router
yang telah ada sebelumnya harus diberikan tabel routing tambahan secara
manual. Jadi jelas, static routing tidak mungkin dipakai untuk jaringan besar,
karena membutuh effort yang besar untuk mengupdatenya.

• Dynamic Routing
Dalam sebuah network dimana terdapat jalur routing lebih dari satu rute untuk

mencapat tujuan yang sama biasanya menggunakan dynamic routing. Dan juga

selain itu network besar yang terdapat lebih dari 3 gateway. Dengan dynamic

routing, tinggal menjalankan routing protokol yang dipilih dan biarkan bekerja.

Secara otomatis tabel routing yang terbaru akan didapatkan.

Seperti dua sisi uang, dynamic routing selain menguntungkan juga sedikit
merugikan. Dynamic routing memerlukan routing protokol untuk membuat tabel
routing dan routing protokol ini bisa memakan resource komputer.

Routing Protocol
Protokol routing merupakan aturan yang mempertukarkan informasi routing
yang nantinya akan membentuk tabel routing sedangkan routing adalah aksi
pengiriman-pengiriman paket data berdasarkan tabel routing tadi.
Semua routing protokol bertujuan mencari rute tersingkat untuk mencapai
tujuan. Dan masing-masing protokol mempunyai cara dan metodenya sendiri-
sendiri. Secara garis besar, routing protokol dibagi menjadi Interior Routing Protocol
dan Exterior Routing Protocol. Keduanya akan diterangkan sebagai berikut :

Interior Routing Protocol


Sesuai namanya, interior berarti bagian dalam. Dan interior routing protocol
digunakan dalam sebuah network yang dinamakan autonomus systems (AS) . AS
dapat diartikan sebagai sebuah network (bisa besar atau pun kecil) yang berada
dalam satu kendali teknik. AS bisa terdiri dari beberapa sub network yang masing-
masingnya mempunyai gateway untuk saling berhubungan. Interior routing protocol
mempunyai beberapa macam implemantasi protokol, yaitu :
RIP (Routing Information Protocol)

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Merupakan protokol routing yang paling umum dijumpai karena biasanya
sudah included dalam sebuah sistem operasi, biasanya unix atau novell. RIP
memakai metode distance-vector algoritma. Algoritma ini bekerja dengan
menambahkan satu angka metrik kepada ruting apabila melewati satu gateway.
Satu kali data melewati satu gateway maka angka metriknya bertambah satu ( atau
dengan kata lain naik satu hop ). RIP hanya bisa menangani 15 hop, jika lebih maka
host tujuan dianggap tidak dapat dijangkau.
Oleh karena alasan tadi maka RIP tidak mungkin untuk diterapkan di sebuah AS
yang besar. Selain itu RIP juga mempunyai kekurangan dalam hal network masking.
Namun kabar baiknya, implementasi RIP tidak terlalu sulit ika dibandingkan dengan
OSPF yang akan diterangkan berikut ini.

OSPF (Open Shortest Path First)


Merupakan protokol routing yang kompleks dan memakan resource komputer.
Dengan protokol ini, route dapat dapat dibagi menjadi beberapa jalan. Maksudnya
untuk mencapai host tujuan dimungkinkan untuk mecapainya melalui dua atau lebih
rute secara paralel.
Lebih jauh tentang RIP dan OSPF akan diterangkan lebih lanjut.

Exterior Protocol
AS merupakan sebuah network dengan sistem policy yang pegang dalam
satu pusat kendali. Internet terdiri dari ribuan AS yang saling terhubung. Untuk bisa
saling berhubungan antara AS, maka tiap-tiap AS menggunakan exterior protocol
untuk pertukaran informasi routingnya. Informasi routing yang dipertukarkan
bernama reachability information (informasi keterjangkauan). Tidak banyak router
yang menjalankan routing protokol ini. Hanya router utama dari sebuah AS yang
menjalankannya. Dan untuk terhubung ke internet setaip AS harus mempunyai
nomor sendiri. Protokol yang mengimplementasikan exterior :

EGP (Exterior Gateway Protocol)

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Protokol ini mengumumkan ke AS lainnya tentang network yang berada di
bawahnya. Pengumumannya kira-kira berbunyi : " Kalau hendak pergi ke AS nomor
sekian dengan nomor network sekian, maka silahkan melewati saya" .
Router utama menerima routing dari router-router AS yang lain tanpa
mengevaluasinya. Maksudnya, rute untuk ke sebuah AS bisa jadi lebih dari satu rute
dan EGP menerima semuanya tanpa mempertimbangkan rute terbaik.

BGP (Border Gateway Protocol)


BGP sudah mempertimbangkan rute terbaik untuk dipilih. Seperti EGP, BGP juga
mepertukarkan reachability information.

Ø IP ROUTING & ROUTING PROTOKOL

Penjelasan
Dalam network sederhana sekali pun, sebuah paket data perlu tahu jalan
yang akan dia tempuh untuk sampai ke tujuan. Untuk mengetahuinya paket data
tadi sudah disertai alamat tujuan pada headernya. Alamat tersebut apabila
memungkinkan untuk dicapai, maka paket tadi akan diteruskan sampai tujuan, jika
tidak paket maka akan dikembalikan.
Informasi routing diperlukan untuk mengetahui apakah tujuan bisa dicapai
atau tidak. Informasi routing tadi bisa didapatkan dengan bermacam-macam
konfigurasi routing. Pemilihan metode konfigurasi tergantung dari banyaknya
gateway yang terdapat dalam network tersebut dan kompleksitasnya.
Konsep routing adalah hal yang utama pada lapisan internet di jaringan
TCP/IP. Hal ini karena pada lapisan internet terjadi pengalamatan (addressing). Kita
coba perhatikan kembali aliran data pada arsitektur TCP/IP. Data dari lapisan
aplikasi disampaikan ke lapisan transport dengan diberi header TCP atau UDP
tergantung jenis aplikasinya. Setelah itu segmen TCP atau UDP disampaikan ke
lapisan IP dan diberi header, termasuk alamat asal dan tujuan datagram. Pada saat
ini host harus melakukan routing dengan melihat tabel routing. Setelah melihat tabel
routing, datagram diteruskan ke lapisan network interface dan diberi header dengan
alamat tujuan yang sesuai.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Untuk lebih jelasnya, kita perhatikan jaringan TCP/IP yang menggunakan
teknologi Ethernet. Setiap frame ethernet (Ethernet II) mengandung alamat tujuan
dan asal, tipe protokol, dan data. Alamat tujuan dan asal adalah sebuah bilangan 48
bit. Setiap card ethernet memiliki alamat ethernet yang unix (MAC address). Agar
datagram dapat diterima oleh sebuah host tujuan, datagram harus dimasukan dalam
frame dengan alamat ethernet tujuan yang sama dengan alamat card ethernet host
tujuan. Proses ini juga bagian dari routing, yaitu pada saat mengirimkan datagram IP
bagaimana menentukan alamat Ethernet host tujuan datagram tersebut?
ARP
Untuk keperluan mapping IP address ke Alamat Ethernet maka di buat
protokol ARP (Address Resolution Protocol). Proses mapping ini dilakukan hanya
untuk datagram yaang dikirim host karena pada saat inilah host menambahkan
header Ethernet pada datagram. Penerjemahan dari IP address ke alamat Ethernet
dilakukan dengan melihat sebuah tabel yang disebut sebagai cache ARP, lihat tabel
Entri cache ARP berisi IP address host beserta alamat Ethernet untuk host
tersebut. Tabel ini diperlukan karena tidak ada hubungan sama sekali antara IP
address dengan alamat Ethernet. IP address suatu host bergantung pada IP
address jaringan tempat host tersebut berada, sementara alamat Ethernet sebuah
card bergantung pada alamat yang diberikan oleh pembuatnya.
Tabel Cache ARP
IP address Alamat Ethernet
132.96.11.1 0:80:48:e3:d2:69
132.96.11.2 0:80:ad:17:96:34
132.96.11.3 0:20:4c:30:29:29

Mekanisme penterjemahan oleh ARP dapat dijelaskan sebagai berikut. Misal


suatu host A dengan IP address 132.96.11.1 baru dinyalakan, lihat Gambar 1. Pada
saat awal, host ini hanya mengetahui informasi mengenai interface-nya sendiri, yaitu
IP address, alamat network, alamat broadcast dan alamat ethernet. Dari informasi
awal ini, host A tidak mengetahui alamat ethernet host lain yang terletak satu
network dengannya (cache ARP hanya berisi satu entri, yaitu host A). Jika host

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


memiliki route default, maka entri yang pertama kali dicari oleh ARP adalah router
default tersebut.
Misalkan terdapat datagram IP dari host A yang ditujukan kepada host B
yanng memiliki IP 132.96.11.2 (host B ini terletak satu subnet dengan host A). Saat
ini yang diketahui oleh host A adalah IP address host B tetapi alamat ethernet B
belum diketahui.

Alamat IP Alamat Ethernet

132.96.11.1 0:80:48:e3:d2:69

132.96.11.1
Gambar cache ARP awal
Agar dapat mengirimkan datagram ke host B, host A perlu mengisi cache
ARP dengan entri host B. Karena cache ARP tidak dapat digunakan untuk
menerjemahkan IP address host BB menjadi alamat Ethernet, maka host A harus
melakukan dua hal yaitu :
Ø Mengirimkan paket ARP request pada seluruh host di network menggunakan
alamat broadcast Ethernet (FF:FF:FF:FF:FF:FF) untuk meminta jawaban ARP
dari host B, lihat gambar 2.
Ø Menempatkan datagram IP yang hendak dikirim dalam antrian.

Paket ARP request yang dikirim host A kira-kira berbunyi “Jika IP address-mu
adalah 132.96.11.2, mohon beritahu alamat Ethernet-mu”. Karena paket ARP
request dikirim ke alamat broadcast Ethernet, setiap interface Ethernet komputer
yang ada dalam satu subnet (jaringan) dapat mendengarnya. Setiap host dalam
jaringan tersebut kemudian memeriksa apakah IP addressnya sama dengan IP
address yang diminta oleh host A.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


132.96.11.1 132.96.11.2 132.96.11.3

IP pengirim: 132.96.11.1
Ethernet Address:0:80:48:e3:d2:69
IP target: 132.96.11.2
Ethernet Address:0:80:ad:17:96:34

Gambar Paket ARP request

Host B yang mengetahui bahwa yang diminta oleh host A adalah IP address
yang dimilikinya langsung memberikan jawaban dengan mengirimkan paket ARP
response langsung ke alamat ethernet pengirim (host A), seperti terlihat pada
gambar 3. Paket ARP request tersebut kira-kira berbunyi “IP address 132.96.11.2
adalah milik saya, sekarang saya berikan alamat ethernet saya”.

132.96.11.1 132.96.11.2 132.96.11.3

IP Pengirim: 132.96.11.2
Ethernet Address:0:80:ad:17:96:34
IP Target: 132.96.11.1
Ethernet Address:0:80:48:e3:d2:69

Gambar Paket ARP response

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Paket ARP request dari host B tersebut diterima oleh host A dan host A
kemudian menambahkan entri IP addresss host B beserta alamat Ethernet-nya ke
dalam cache ARP, lihat gambar 4.

Alamat IP Alamat Ethernet


132.96.11.1 0:80:48:e3:d2:69
132.96.11.2 0:80:ad:17:96:34
132.96.11.1
Gambar Cache ARP setelah penambahan entri host B
Saat ini host A telah memiliki entri untuk host B di tabel cache ARP, dengan
demikian datagram IP yang semula dimasukkan ke dalam antrian dapat diberi
header Ethernet dan dikirim ke host B.
Secara ringkas proses ARP adalah:
1. Host mengirimkan paker ARP request dengan alamat broadcast Etehrnet.
2. Datagram IP yang dikirim dimasukkan ke dalam antrian.
3. Paket ARP respon diterima host dan host mengisi tabel ARP dengan entri
baru.
4. Datagram IP yang terletak dalam antrian diberi header Ethernet.
5. Host mengirimkan frame Ethernet ke jaringan.

Setiap data ARP yang diperoleh disimpan dalam tabel cache ARP dan cache
ini diburi umur. Setiap umur entri tersebut terlampaui, entri ARP dihapus dari tabel
dan untuk mengisi tabel. Jika host akan mengirimkan datagram ke host yang sudah
dihapus dari cache ARP, host kembali perlu melakukan langkah-langkah diatas.
Dengan cara ini dimungkinkan terjadinya perubahan isi cache ARP yang dapat
menunjukkan dinamika jaringan. Jika sebuat host di jaringan dimatikan, maka
selang beberapa saat kemudian entri ARP untuk host tersebut dihapus karena
kadaluarsa. Jika card ethernetnya diganti, maka beberapa saat kemudian entri ARP
host berubah dengan informasi alamat ethernet yang baru.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Ø Routing Information Protokol

Penjelasan
RIP kepanjangan dari Routing Information protocol. Pada setiap sistem unix
secara default sudah mendukung penggunaan RIP. Aplikasi RIP pada unix bernama
routed ( routing daemon ).

Cara Kerja
RIP bekerja dengan nilai metrik. Setiap router yang menjalankan RIP
membuat permintaan untuk update routing dari router atau host lainnya yang berada
satu network dengannya. Router yang mendengar adanya permintaan tadi akan
memberikan tabel routingnya kepada yang meminta. Update tabel routing tadi
memuat informasi alamat tujuan beserta metriknya. Sebagai contoh, untuk melihat
tabel routing pada unix , tinggal ketik perintah :
[radar] # netstat -nr
Routing tables
Internet:

Destination Gateway Flags Refs Use Netif Expire


default 192.168.48.33 UGSc 1 734 ed0
127.0.0.1 127.0.0.1 UH 1 734 lo0
192.168.48.32/27 link#1 UC 0 0 ed0
192.168.48.33 0:80:ad:b7:9c:87 UHLW 2 2 ed0
192.168.48.57 0:80:48:af:d5:e3 UHLW 1 10052 lo0

Routed secara periodik meminta request update routing. Hasil respon tadi,
sebelum dimasukkan ke dalam kernel table routing ( KRT ) diperiksa terlebih dahulu.
Apabila ada routing untuk ke alamat yang baru , yang belum ada sebelumnya, maka
routing tadi dimasukkan ke dalam KRT. Apabila ternyata tidak ada yang baru, maka
update tadi tidak dimasukkan. Lain halnya jika alamat yang sudah ada berubah
metriknya menjadi lebih kecil. Mengecilnya metrik membuat jalur rute yang lebih
pendek dan oleh karena itu diputuskan untuk dimasukkan ke dalam KRT.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Metrik dalam RIP dapat dibayangkan sebagai jumlah hop untuk mencapat
sebuah alamat. Untuk lebih mudah membayangkannya, lihat skema network di
bawah ini.
Skema Jaringan

Subnet 10 Subnet 13 Subnet 14

Router 1 Router 4 Router 5


Subnet 11

Subnet 15

Router 2 Router 3

Subnet 12

Router 1 memerlukan 1 hop untuk mencapat router 2 dalam artian router 1


dapat menjangkau router 2 secara lansung karena berada pada satu network yang
sama. Hal ini juga berlaku untuk router 2 dan 3.
Sedangkan untuk menuju router 3, router 1 memerlukan 2 hop. Pertama melewati
router 2 lalu sampai di tujuan, router 3. Demikian seterusnya. Jumlah hop ini dapat
dianalogikan dengan metrik.
Selain mengupdate KRT dengan routing yang baru, routed juga menghapus
tabel routing. Tabel yang dihapus karena dua sebab, yaitu :
• mempunyai metrik lebih dari 15. metrik yang berharga 16 dianggap infinity, tidak
dapat dijangkau.
• Tidak mendapatkan update yang semestinya dikirimkan secara periodik. Secara
deafult routed meminta update routing setaip 30 detik. Apabila waktu tersebut
terlampaui, maka alamat yang tadinya ada, namun tidak terupdate, akan dihapus
dari KRT. Seperti pada contoh di atas, apabila router 1 tidak memberikan respon

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


kepada router 2, maka router 2 akan menghapus subnet 10 dari alamt tujuan di
KRT. Subnet 10 dianggap tidak dapat dijangkau.

Implementasi routed
Untuk menjalankan routed sederhana saja, tinggal ketik :
# routed
Option yang ada pada routed, seperti :
-s
memaksa routed untuk memberikan informasi routing. Routed secara otomatis
menjalankan option ini sewaktu ditemukan adanya 2 network interface atau lebih.
Dengan demikian, host ini menjadi router dengan di enable nya fungsi forwarding
pada kernel.
-q
Dengan option ini, host tidak memberikan informasi routing, melainkan hanya
menerima update saja. Host yang demikian bukanlah sebuah router.

Kelemahan RIP
Dalam implementasi RIP memang mudah untuk digunakan, namun RIP mempunyai
masalah serius pada Autonomous System yang besar, yaitu :
4.1 Terbatasnya diameter network
Telah disebutkan sedikit di atas bahwa RIP hanya bisa menerima metrik sampai
15. Lebih dari itu tujuan dianggap tidak terjangkau. Hal ini bisa menjadi masalah
pada network yang besar.
4.2 Konvergensi yang lambat
Untuk menghapus entry tabel routing yang bermasalah, RIP mempunyai metode
yang tidak efesien. Seperti pada contoh skema network di atas, misalkan subnet
10 bernilai 1 hop dari router 2 dan bernilai 2 hop dari router 3. Ini pada kondisi
bagus, namun apabila router 1 crash, maka subnet 3 akan dihapus dari tabel
routing kepunyaan router 2 sampai batas waktu 180 detik. Sementara itu, router 3
belum mengetahui bahwa subnet 3 tidak terjangkau, ia masih mempunyai tabel
routing yang lama yang menyatakan subnet 3 sejauh 2 hop ( yang melalui router
2 ). Waktu subnet 3 dihapus dari router 2, router 3 memberikan informasi ini

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


kepada router 2 dan router 2 melihat bahwa subnet 3 bisa dijangkau lewat router
3 dengan 3 hop ( 2 + 1 ).Karena ini adalah routing baru maka ia akan
memasukkannya ke dalam KRT. Berikutnya, router 2 akan mengupdate routing
table dan memberikannya kepada router 3 bahwa subnet 3 bernilai 3 hop. Router
3 menerima dan menambahkan 1 hop lagi menjadi 4. Lalu tabel routing diupdate
lagi dan router 2 meneriman informasi jalan menuju subnet 3 menjadi 5 hop.
Demikian seterusnya sampai nilainya lebih dari 30. Routing atas terus menerus
looping sampai nilainya lebih dari 30 hop.

4.3 Tidak bisa membedakan network masking lebih dari /24


RIP membaca ip address berdasarkan kepada kelas A, B dan C. Seperti kita
ketahui bahwa kelas C mempunyai masking 24 bit. Dan masking ini masih bisa
diperpanjang menjadi 25 bit, 26 bit dan seterusnya. RIP tidak dapat
membacanya bila lebih dari 24 bit. Ini adalah masalah besar, mengingat masking
yang lebih dari 24 bit banyak dipakai. Hal ini sudah dapat di atasi pada RIPv2.

Ø OPEN SHORTEST PATH FIRST

Pendahuluan
OSPF merupakan interior routing protocol yang kepanjangan dari Open Shortest
Path First. OSPF di desain olrh IETF ( Internet Engineering Task Force ) yang pada
mulanya dikembangkan dari algoritma SPF ( shortest path first ). Hampir tidak
berbeda dengan IGRP ( Interior Gateway Routing Protocol ) pada tahun 80-an.
Pada awalnya RIP adalah routing protokol yang umum dipakai, namun ternyata
untuk AS yang besar, RIP sudah tidak memadai lagi.

OSPF diturunkan dari beberapa periset seperti Bolt, Beranek, Newmans. Protokol ini
bersifat open yang berarti dapat diadopsi oleh siapa pun. OSPF dipublikasikan pada
RFC nomor 1247.

Karakteristik Open Shortest Path First (OSPF):


♦ Menggunakan Algoritma link-state

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


♦ Membutuhkan waktu CPU dan memori yang besar
♦ Tidak menyebabkan routing loop
♦ Dapat membentuk heirarki routing menggunakan konsep area
♦ Cepat mengetahui perubahan pada jaringan
♦ Dapat menggunakan beberapa metrik

Cara Kerja OSPF


OSPF bekerja dengan link-state protocol yang memungkinkan untuk membentuk
tabel routing secara hirarki. Sebelum berlanjut ke dalamnya, perlu dijelaskan sedikit
istilah-istilah umum dalam OSPF, yaitu :
• Area
Area yaitu letak dimana berada sebuah kumpulan network, router dan host
biasa. Area di sini bukan berarti area fisik.
• Backbone
Backbone adalah area yang khusus dimana area-area saling terhubungkan.
Seluruh area yang ada, harus terhubung ke backbone.
• Stub Area
Adalah area dimana hanya terdapat satu buah gateway / router, tidak ada
alternatif lainnya.

OSPF bekerja dengan membentuk sebuah peta network yang dipelajari


berdasarkan informasi dari router-router yang berada dalam neighbour. Peta
tersebut akan berpusat pada local host. Dari localhost host tersebut akan ada cost
untuk menuju network lain yang ditentukan dari hasil perhitungan.
Untuk memudahkan penggambarannya, mari kita bangun sebuah network imaginer
demikian :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Subnet 10 Subnet 13 Subnet 14

Subnet 11 Router 1 Router 4 Router 5

Subnet 15

Router 2 Router 3

Subnet 12

Gambar Skema Jaringan

Keterangan
Router 1 terhubung ke subnet 10 dan 11
Router 2 terhubung ke subnet 11 dan 12
Router 3 terhubung ke subnet 12 dan 15
Router 4 terhubung ke subnet 13 dan 15
Router 5 terhubung ke subnet 14 dan 15
Pertama-tama network diatas akan dibagi menjadi beberapa area, yaitu :
Area 1 : 10 ( stub area karena hanya mempunyai 1 router )
Area 2 : 11 dan 12
Area 3 : 13 , 14 dan 15
Dan masing-masing router mempunyai neighbour :
Router 1 mempunyai neighbour router 2
Router 2 mempunyai neighbour router 1 dan 3
Router 3 mempunyai neighbour router 2, 4 dan 5
Router 4 mempunyai neighbour router 3 dan 5
Router 5 mempunyai neighbour router 3 dan 4
Router 1 menggambarkan peta network seperti demikian :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Router 1
( 0 )

cost 10

Router 2
( 10 )

cost 10

Router 3
( 20 )

cost 10

cost 10 cost 10

Router 4 Router 5
( 30 ) ( 30 )

cost 10 cost 10

Router 5 Router 4
( 40 ) ( 40 )

Gambar Peta Jaringan

Sebagai localhost, router 1 bernilai 0. Lalu router 2 yang behubungan secara


direct dengan router 1 diberikan cost 10 ( 0 + 10 ). Lalu dari router 2 berhubungan
dengan router 3 yang bernilai 20 ( 0 + 10 + 10 ) dan pada akhirnya router 4 dan 5
bernilai 30.
Masing-masing link bernilai 10, yang berarti apabila link tersebut dilewati,
maka harganya harus ditambahkan 10. Seperti pada contoh router 2 yang bernilai
20 merupakan hasil pertambahan 0 + 10 + 10.
Lalu pada bagian paling bawah dari gambar, ada router 4 dan 5 yang bernilai
40. Hal ini disebabkan router 4 bisa berhubungan lansung dengan 5 tanpa melalui
router 3 dan itu akan menambah cost sebanyak 10 lagi. Demikian juga yang terjadi
pada router 5 yang bisa dicapai melalui router 4, tanpa router 3. Namun pada
akhirnya, cost terrendahlah yang dipilih dalam tabel routing. Yaitu yang bernilai 30
sedangkan 40 dibuang.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Ø Membentuk Routing Table

Setiap host pada TCP/IP Network harus memiliki tabel routing agar dapat
menentukan jalan untuk mencapai tujuan dari paket-paket yang akan dikirimkannya.
Tabel routing secara otomatis akan terbentuk pada saat interface dikonfigurasi.
Tabel routing pada tahap ini adalah tabel routing minimal. Perhatikan gambar 3-4.
Untuk melihat tabel routing pada host dengan IP Address 192.168.20.3 ( Token
Ring ) dalam bentuk numerik, dipakai perintah berikut :

$ netstat -nr
Routing tables
Destination Gateway Flags Refcnt Use Interface
127.0.0.1 127.0.0.1 UH 1 105 lo0
192.168.20.0 192.168.20.3 U 35 3075 ed0

Bagian pertama dari tabel routing merupakan rute loopback ke localhost.


Setiap host TCP/IP akan memiliki rute ini. Bagian kedua merupakan rute ke network
192.168.20.0 melalui interface ed0. Network ini adalah network lokal. Address
192.168.20.3 bukanlah remote gateway, melainkan address yang telah di-assign
untuuk interface ed0. Perhatikan bahwa nomor network 192.168.20.0 muncul akibat
parameter mask pada waktu konfigurasi interface dengan subnetmask
255.255.255.0. Tanpa adanya subnetmask, network address yang muncul adalah
192.168.0.0 ( Standar kelas B ).
Option pada kolom Flag:
• Flag U ( up ) menandakan interface telah siap dipakai.
• Flag H ( host ) menandakan hanya satu host yang dapat dicapai melalui rute
ini. Berarti, rute ini hanya menuju ke host tertentu ( bedakan dengan rute ke
suatu network yang mungkin memiliki puluhan / ratusan host ). Kebanyakan
rute yang ada pada routing table menuju ke network, bukan ke host tertentu.
Hal ini untuk memperkecil ukuran routing table. Suatu instansi mungkin hanya

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


memiliki satu network, tetapi network tersebut mungkin terdiri dari ratusan
host. Mudah dimengerti bahwa jika seluruh IP Address dari host yang ada
pada network tujuan dimasukkan dalam routing table, ukurannya akan
membengkak dengan cepat. Cukup nomor networknya saja yang
dicantumkan karena telah mewakili nomor seluruh host pada network
tersebut.
• Flag b à alamat broadcast
• Flag C à rute sedang digunakan
• Flag c à sama seperti flag sebelumnya, tapi flag ini menunjuk ke protokol
yang spesifik
• Flag G à rute memerlukan gatway lagi
• Flag S à ditambah secara manual

Untuk akses ke network yang lain, network token ring di atas hanya memiliki satu
gateway, yakni yang ber-IP Address 192.168.20.11. Untuk itu, seluruh host yang
ada pada network token ring ( kecuali gateway ) dapat menambahkan default
routing sbb :
# route -n add default 192.168.20.11 1
add net default: gateway 192.168.20.11

Dengan perintah ini, rute ke seluruh network ( selain network lokal ) akan
ditempuh melalui gateway 1 (192.168.20.11). Option -n tidak harus digunakan.
Option tersebut hanya untuk menampilkan address secara numerik untuk
menghindari permintaan ke Name Server yang belum tentu bekerja. Metric 1 dipakai
sebagai metric terkecil untuk rute melalui gateway ekstenal, untuk memberikan
prioritas tertinggi pada rute ini. Jika kita periksa kembali routing table setelah
memasukkan default routing ini, akan muncul sbb :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


$ netstat -nr
Routing tables
Destination Gateway Flags Refcnt Use Interface
127.0.0.1 127.0.0.1 UH 1 105 lo0
default 192.168.20.11 UG 0 0 ed0
192.168.20.0 192.168.20.3 U 35 3075 ed0

Pada routing table di atas terlihat adanya entri default routing. Flag G
menandakan rute default ini melalui eksternal gateway ( host 192.168.20.11 ).
Pada network Ethernet ( 192.168.0.0 ) ada 3 buah gateway. Untuk host-host pada
network ini, routing table dapat dibentuk secara statis. Misalkan kita berada pada
host 192.168.0.3. Network 192.168.20.0 dapat dicapai melalui gateway 1
(192.168.0.5), network 44.132.1.0 melalui gateway 2 (192.168.0.18) dan akses ke
network yang lebih besar, misalkan ke Internet Provider, dicapai melalui gateway 3
(192.168.0.20). Untuk itu, setelah routing minimal dapat ditambahkan perintah
routing sbb :
# route -n add 192.168.20.0 192.168.0.5 1
add net 192.168.20.0: gateway 192.168.0.5

# route -n add 44.132.1.0 192.168.0.18 1


add net 44.132.1.0: gateway 192.168.0.18

# route -n add default 192.168.0.20 1


add net default: gateway 192.168.0.20

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Routing table akan bertambah menjadi :

$ netstat -nr
Routing tables
Destination Gateway Flags Refcnt Use Interface
127.0.0.1 127.0.0.1 UH 1 105 lo0
192.168.0.0 192.168.0.3 U 28 9808 ed0
default 192.168.0.20 UG 0 0 ed0
192.168.20.0 192.168.0.5 UG 0 0 ed0
44.132.1.0 192.168.0.18 UG 0 0 ed0

Agar routing table terbentuk pada saat start up komputer, perlu di set routing
statis dengan beberapa modifikasi sbb :
• Tambahkan static routing yang diinginkan sesuai konfigurasi network
• Non-aktifkan semua perintah dari file startup yang menjalankan protokol routing.
Untuk host di atas, edit file rc.local untuk menambahkan statement route sbb:
route -n add default 192.168.0.20 1 > /dev/console
route -n add 192.168.20.0 192.168.0.5 1 > /dev/console
route -n add 44.132.1.0 192.168.0.18 1 > /dev/console

Startup file untuk setiap sistem mungkin saja berbeda, tetapi pada dasarnya
memiliki prosedur yang sama. Bacalah selalu dokumentasi dari sistem anda.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Ø Pendahuluan
Semakin berkembangnya jaringan sangat memungkinkan pergerakan data dan
kebutuhan informasi. Secara fisik jaringan kabel untuk jaringan local sangat efisien
dalam pertukaran data. Tetapi apabila jaringan antar gedung atau antar kantor maka
sangat tidak efisien bila masih menggunakan kabel. Alasannya adalah instalasi
media kabel antar gedung sangat memakan banyak waktu dan biaya. Kemungkinan
kabel putus ditengah sangat besar. Dan lain-lain.
Oleh sebab itu alternatif jaringan yang sangat baik untuk menghubungkan
antara gedung yang berbeda atau kantor yang berbeda adalah wireless. Atau biasa
disebut dengan jaringan tanpa kabel.
Kenapa harus wireless ? alasannya yaitu : jarak antara satu titik dengan titik
yang lain sangat tidak memungkinkan penggunaan kabel, instalasi jaringan untuk
menghubungkan kedua titik sangat sulit apabila menggunakan kabel, kabel yang
melintang antara gedung dapat saja terputus, kemungkinan data loss dalam
perjalanan sangat besar apabila menggunakan kabel, dll maka dari itulah wireless
sangat dibutuhkan dalam kondisi seperti ini.

Ø Peralatan Wireless
Dalam menggunakan jaringan wireless, ada beberapa peralatan yang
dibutuhkan yaitu :
1. Satu unit computer sebagai Pc Router dengan spesifikasi medium
2. PCI Card
3. PCMCIA Card
4. Kabel Coaxial + BNC Konektor
5. Pigtail
6. Antena Grid Parabolic

Gambar PC Router Gambar PCI Card

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Gambar PCMCIA Gambar Antena Parabolic

Ø Instalasi Wireless
Pada linux jaringan wireless sangat sering digunakan. Linux dipakai pada
jaringan wireless sebagai router atau client, dikarenakan linux merupakan system
operasi yang handal untuk beroperasi pada beban jaringan yang sangat berat.
Dalam melakukan instalasi jaringan wireless.

Gambar Contoh Jaringan Wireless

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Ø Konfigurasi Wireless

Pada system operasi linux ada beberapa bagian yang perlu dikonfigurasi.
Dalam melakukan konfigurasi wireless ini, anda bisa melakukan konfigurasi melalui
command atau dengan melakukan editing pada beberapa file konfigurasi wireless.

Beberapa bagian yang perlu di konfigurasikan untuk wireless adalah sebagai


berikut :

q Iwconfig
q Iwlist
q Iwspy
q Iwevent
q Iwpriv
q Wireless

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Dasar-Dasar Security

Ø Pendahuluan

Keamanan komputer maupun jaringan komputer, terutama yang terhubung


ke internet harus direncanakan dan dikoordinasikan dengan baik agar dapat
melindungi sumber daya (resource) dan investasi di dalamnya. Informasi (data) dan
service (pelayanan) sudah menjadi sebuah komoditi yang sangat penting.
Kemampuan untuk mengakses dan menyediakan informasi secara cepat dan akurat
menjadi sangat esensial bagi suatu organisasi, baik yang berupa organisasi
komersial (perusahaan), perguruan tinggi, lembaga pemerintahan, maupun
individual (pribadi).

Ø Aspek-aspek Security
Dalam mengamankan jaringan ada beberapa aspek yang harus kita perhatikan dan
dijaga, antara lain:
§ Kestabilan Sistem
Sistem yang kita buat harus stabil sejalan dengan waktu, dalam arti bila
sewaktu-waktu terjadi perubahan pada perilaku hardware maupun software
yang lain dari biasanya. Administrator harus mampu segera mengatasi masalah-
masalah tersebut, seperti memperbaiki bug yang ada, melakukan upgrade, dan
mengganti device rusak.
§ Ketersediaan data dan kerahasiaan
Harus ada perlindungan terhadap informasi baik berupa data, program, dan
segala hal yang dianggap penting agar tidak dihapus atau dirubah oleh orang
lain yang tidak berhak. Selain itu harus ada jaminan terhadap informasi agar
tidak bisa diakses/diketahui atau diubah oleh orang lain yang tidak berhak
§ Ketersediaan service

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Servis-servis yang kita sediakan di dalam jaringan harus dijaga agar selalu
tersedia tanpa adanya gangguan
§ Kendali
Harus ada sistem pengendalian tertentu, seperti mengatur hak akses di dalam
sistem jaringan. Karena perilaku pemakai sulit ditebak maka pengguna harus
dibatasi dalam melakukan akses pada daerah dimana ia berwenang, sedangkan
bagi pengguna luar harus ditolak.
§ Monitoring
Administrator harus melakukan pemantauan terhadap sistem jaringan yang
dibangunnya, siapa yang telah mengakses dan menggunakan servis, aktivitas
apa yang telah dilakukan, mencari sela-sela sistem yang belum terlindungi,
memantau catatan logging sistem, mendeteksi penyusup yang masuk dll.

Sangat penting di sini untuk mengembangkan budaya memperhatikan aspek


keamanan dalam menggunakan setiap fasilitas jaringan kepada seluruh
user/pengguna. Perlu diperhatikan bagi administrator jaringan agar para pengguna
jaringan ikut menjaga keamanan jaringan, misalnya dengan menerapkan disiplin
menggunakan login miliknya dan tidak memberikannya kepada siapa pun,
mengganti password secara berkala, dan hal-hal lain yang berguna untuk
membangun semangat untuk melindungi jaringan secara bersama.

Ø Pengaturan Akses dalam Sistem Unix

Salah satu cara yang umum digunakan untuk mengamankan informasi adalah
dengan mengatur akses ke informasi melalui mekanisme “access control”.
Implementasi dari mekanisme ini antara lain dengan menggunakan “password”.

Di sistem Unix, untuk menggunakan sebuah sistem atau komputer, pemakai


diharuskan melalui proses authentication dengan menuliskan “userid” dan
“password”. Informasi yang diberikan ini dibandingkan dengan userid dan password
yang berada di sistem. Apabila keduanya valid, pemakai yang bersangkutan
diperbolehkan menggunakan sistem. Apabila ada yang salah, pemakai tidak dapat

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


menggunakan sistem. Informasi tentang kesalahan ini biasanya dicatat dalam
berkas log. Besarnya informasi yang dicatat bergantung kepada konfigurasi dari
sistem setempat. Misalnya, ada yang menuliskan informasi apabila pemakai
memasukkan userid dan password yang salah sebanyak tiga kali. Ada juga yang
langsung menuliskan informasi ke dalam berkas log meskipun baru satu kali salah.
Informasi tentang waktu kejadian juga dicatat. Selain itu asal hubungan (connection)
juga dicatat sehingga administrator dapat memeriksa keabsahan hubungan.

Ø Password di Sistem Unix


Akses ke sistem UNIX menggunakan password yang biasanya disimpan di dalam
berkas /etc/passwd. Di dalam berkas ini disimpan nama, userid, password, dan
informasi-informasi lain yang digunakan oleh bermacam-macam program. Contoh isi
berkas password dapat dilihat di bawah ini (dapat dibuka juga dengan perintah
‘vipw’):
root:fi3sED95ibqR7:0:1:System Operator:/:/sbin/sh
daemon:*:1:1::/tmp:
hakim:d98skjhj9l:72:98:Rahmat Hakim:/home/hakim:/bin/bash

Field Isi
sandhy Nama atau userid pemakai
d98skjhj9l password yang sudah terenkripsi (encrypted pass-word)
72 UID, user identification number
98 GID, group identification number
Sandhy Hasan nama lengkap dari pemakai (sering juga disebut GECOS
a atau GCOS field)
/home/sandhy home directory dari pemakai
/bin/bash shell dari pemakai.

Pada sistem UNIX lama, biasanya berkas /etc/passwd ini “readable”, yaitu
dapat dibaca oleh siapa saja. Meskipun kolom password di dalam berkas itu berisi
“encrypted password” (password yang sudah terenkripsi), tetapi ini merupakan
potensi sumber lubang keamanan. Ada program tertentu yang dapat digunakan
untuk memecah password tersebut. Contoh program ini antara lain: crack (UNIX),
viper (perl script), dan cracker jack (DOS). Program “password cracker” ini tidak
dapat mencari tahu kata kunci dari kata yang sudah terenkripsi. Akan tetapi, yang
dilakukan oleh program ini adalah melakukan coba-coba (brute force attack). Salah

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


satu caranya adalah mengambil kata dari kamus (dictionary) kemudian
mengenkripsinya. Apabila hasil enkripsi tersebut sama dengan password yang
sudah terenkripsi (encrypted password), maka kunci atau passwordnya ketemu.
Selain melakukan “lookup” dengan menggunakan kamus, biasanya program
“password cracker” tersebut memiliki beberapa algoritma heuristic seperti
menambahkan angka di belakangnya, atau membaca dari belakang (terbalik), dan
seterusnya. Semakin sederhana password yang digunakan maka kemungkinan
terpecahnya password tersebut akan semakin tinggi dan semakin cepat selesainya.

Ø Shadow Password
Salah satu cara untuk mempersulit mendapatkan berkas yang berisi password
(meskipun terenkripsi) adalah dengan menggunakan “shadow password”.
Mekanisme ini menggunakan berkas /etc/shadow untuk menyimpan encrypted
password, sementara kolom password di berkas /etc/passwd berisi karakter “x”.
Berkas /etc/shadow tidak dapat dibaca secara langsung oleh pemakai biasa
(bersifat hidden), tetapi bisa diakses oleh user root.
Beberapa perintah dan fungsi yang berhubungan dengan account dan password :
chage (mengeset password expiration)
chfn (untuk mengubah finger information)
chsh (mengubah default shell)
gpasswd (menambah user dalam group tertentu)
groupadd (menambah group)
groupdel (menghapus group)
groupmod (mengubah setting/informasi group)
id (menampilkan informasi ID beberapa informasi)
login (untuk login)
newgrp (mengganti group efektif)
passwd (membuat password atau mengubah password)
su (substitue user)
userdel (menghapus user)
usermod (mengubah setting dan informasi user)

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Ø Pemilihan Password
Dengan adanya kemungkinan password ditebak, misalnya dengan menggunakan
program password cracker, maka memilih password memegang peranan yang
sangat penting dan memerlukan perhatian khusus. Berikut ini adalah daftar hal-hal
yang sebaiknya tidak digunakan sebagai password :
• Nama orang, dan hewan.
• Nama komputer, nomor telepon atau plat nomor kendaran.
• Tanggal lahir, alamat rumah, nama tempat yang terkenal.
• Kata-kata yang terdapat dalam kamus (misal : bahasa Indonesia, bahasa
Inggris).
• Password dengan karakter yang sama diulang-ulang
• Password yang mengurutkan penekanan tombol pada keyboard
Sebaiknya jangan menggunakan password yang terdapat dalam kamus, atau kata-
kata yang umum digunakan. Gunakan kombinasi huruf besar dan kecil, dan
gunakan angka atau karakter lainnya. Password yang kita gunakan semakin
panjang tentu semakin baik. Panjang password minimal secara default biasanya
adalah 7 karakter. Kita bisa mengeset sesuai dengan kebutuhan kita (misal = 8
karakter). Untuk itu editlah file /etc/login.defs dengan text editor favorit anda :
[root]# vi /etc/login.defs
kemudian pada bagian PASS_MIN_LEN 7 (ganti 7 dengan 8).

Ø Dasar-dasar Enkripsi
Enkripsi adalah proses pengubahan/konversi/penyandian suatu informasi ke bentuk
tertentu sehingga tidak dimengerti/tidak dapat dimanfaatkan oleh pihak yang tidak
berhak. Enkripsi digunakan untuk melindungi data. Dekripsi adalah kebalikan dari
proses enkripsi.

Data-data penting yang ada dan yang anda kirimkan bisa diubah sedemikian rupa
sehingga tidak mudah disadap. Jenis-jenis metode enkripsi ini banyak sekali, misal :
DES (Data Encryption System), PEM (Privacy Enhanced Mail), PGP (Pretty Good
Privacy), SSL (Secure Socket Layer), MD5 dll.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Banyak servis di Internet yang masih menggunakan “plain text” untuk authentication,
seperti telnet. Informasi ini dapat dilihat dengan mudah oleh program penyadap
(sniffer).

Aplikasi-aplikasi yang sering digunakan untuk enkripsi antara lain :


• SSH (Secure Shell), merupakan aplikasi enkripsi digunakan terutama untuk
remote akses sebagai pengganti telnet/rlogin.
• Gpg (Encryption and signing Tool), merupakan aplikasi enkripsi/dekripsi data.
• Crypt, biasa terdapat pada sistem berbasis Unix.
• SSL, aplikasi enkripsi data yang berbasis web.
• PGP, aplikasi enkripsi data yang berbasis email.

Ø Serangan Terhadap Sistem Keamanan


Serangan pada keamanan jaringan sangat banyak jenisnya. Bahkan mungkin
ditemukan cara-cara baru yang lebih mudah dan efektif serta tidak terlalu
membutuhkan kemampuan yang tinggi. Serangan-serangan ini ada yang bersifat
mengganggu, merusak, bahkan mengambil alih posisi superuser (root). Serangan
yang sering terjadi di internet di antaranya :
• Scanning
Scan adalah probe dalam jumlah besar menggunakan tool secara otomatis
dengan tujuan tertentu (misal : mendeteksi kelemahan-kelemahan pada host
tujuan). Scanner biasanya bekerja dengan men-scan port TCP /IP dan servis-
servisnya dan mencatat respon dari komputer target. Dari scanner ini dapat
diperoleh informasi mengenai port-port mana saja yang terbuka. Kemudian
yang dilakukan adalah mencari tahu kelemahan-kelemahan yang mungkin
bisa dimanfaatkan berdasar port yang terbuka dan aplikasi serta versi aplikasi
yang digunakan.
• Sniffing
Sniffer adalah device (software maupun hardware) yang digunakan untuk
mendengar informasi yang melewati jaringan dengan protokol apa saja. Host
dengan mode promiscuous mampu mendengar semua trafik di dalam
jaringan. Sniffer dapat menyadap password maupun informasi rahasia, dan

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


keberadaannya biasanya cukup sulit untuk dideteksi karena bersifat pasif.
Sniffer ini mendengarkan port Ethernet untuk hal-hal seperti "Password",
"Login" dan "su" dalam aliran paket dan kemudian mencatat lalu lintas
setelahnya. Dengan cara ini, penyerang memperoleh password untuk sistem
yang bahkan tidak mereka usahakan untuk dibongkar. Password teks biasa
adalah sangat rentan terhadap serangan ini. Untuk mengatasinya, dapat
digunakan enkripsi, merancang arsitektur jaringan yang lebih aman dan
menggunakan One Time Password (OTP).
• Eksploit
Eksploit berarti memanfaatkan kelemahan sistem untuk aktifitas-aktifitas di
luar penggunaan normal yang sewajarnya.
• Spoofing
Biasanya IP spoofing dilakukan dengan menyamarkan identitas alamat IP
menjadi IP yang tepercaya (misal dengan script tertentu) dan kemudian
melakukan koneksi ke dalam jaringan. Bila berhasil akan dilanjutkan dengan
serangan berikutnya.
• DoS (Denial of Service) attack
Salah satu sumberdaya jaringan yang berharga adalah servis-servis yang
disediakannya. DoS atau malah Distributed DoS (DDoS) attack dapat
menyebabkan servis yang seharusnya ada menjadi tidak bisa digunakan. Hal
ini tentu akan mendatangkan masalah dan merugikan. Penyebab penolakan
servis ini sangat banyak sekali, dapat disebabkan antara lain :
1. Jaringan kebanjiran trafik (misal karena serangan syn flooding, ping
flooding, smurfing).
2. Jaringan terpisah karena ada penghubung (router/gateway) yang tidak
berfungsi.
3. Ada worm/virus yang menyerang dan menyebar sehingga jaringan
menjadi lumpuh bahkan tidak berfungsi, dll
• Malicious Code
Malicious Code adalah program yang dapat menimbulkan efek yang tidak
diinginkan jika dieksekusi. Jenisnya antara lain : trojan horse, virus, dan

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


worm. Trojan Horse adalah program yang menyamar dan melakukan aktifitas
tertentu secara tersembunyi (biasanya merugikan, misal : game yang mencuri
password). Virus adalah program yang bersifat mengganggu bahkan
merusak dan biasanya memerlukan intervensi manusia dalam
penyebarannya. Worm adalah program yang dapat menduplikasikan diri dan
menyebar dengan cepat tanpa intervensi manusia. Malicious kode dapat
menimbulkan beragam tingkat permasalahan.
• Serangan secara fisik

Serangan secara fisik misalnya mengakses server/jaringan/piranti secara


ilegal :
• Buffer Ofer Flow
Dapat terjadi jika ada fungsi yang dibebani dengan data yang lebih besar dari
yang mampu ditangani fungsi tersebut. Buffer adalah penampungan
sementara di memori komputer dan biasanya mempunyai ukuran tertentu.
Jika hal itu terjadi maka kemungkinan yang dapat terjadi adalah :
Program menolak dan memberi peringatan
Program akan menerima data, meletakkannya pada memori dan
mengoverwrite isi memori jika ada data sebelumnya. Cracker dapat membuat
data di mana bagian overflownya adalah set instruksi tertentu untuk
mendapatkan akses. Jika set instruksi baru menempati tempat suatu instruksi
sebelumnya, maka instruksi cracker akan dapat dijalankan.
• Social Engineering
Social engineering berarti usaha untuk mendapatkan password dengan jalan
'memintanya' , misalkan dengan menggunakan fakemail.
• OS Finger Printing
Mengetahui operating system (OS) dari target yang akan diserang
merupakan salah satu pekerjaan pertama yang dilakukan oleh seorang
cracker. Setelah mengetahui OS yang dituju, dia dapat melihat database
kelemahan sistem yang dituju. Fingerprinting merupakan istilah yang umum

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


digunakan untuk menganalisa OS sistem yang dituju. Beberapa cara
konvensional antara lain : telnet, ftp, netcat, dll.
Jika server tersebut kebetulan menyediakan suatu servis, seringkali ada
banner yang menunjukkan nama OS beserta versinya. Misalkan dilakukan
dengan telnet dengan port tertentu, atau dapat juga menggunakan program
tertentu.
Cara fingerprinting yang lebih canggih adalah dengan menganalisa respon
sistem terhadap permintaan (request) tertentu. Misalnya dengan menganalisa
nomor urut packet TCP/IP yang dikeluarkan oleh server tersebut dapat
dipersempit ruang jenis dari OS yang digunakan.
Ada beberapa tools untuk melakukan deteksi OS ini antara lain: nmap, dan
queso
• Crack password
Crack password adalah program untuk MENDUGA dan memecahkan
password dengan menggunakan sebuah atau beberapa kamus (dictionary)
Dewasa ini tool-tool yang digunakan dalam penyerangan semakin mudah digunakan
dan efektif, bahkan banyak yang disertai source kodenya..

Ø Situs-situs Security di internet


Sudah menjadi kewajiban administrator tentunya, untuk senantiasa mengikuti
perkembangan keamanan jaringan sehingga tetap up to date. Kadang ditemukan
bug-bug terbaru yang dapat dieksploit, dan patch lebih sering datang terlambat dan
baru dikeluarkan setelah ditemukannya bug yang telah memakan korban.

Cukup banyak situs-situs di internet yang berisi informasi, script, maupun program
dunia underground ini, dari situs Indonesia sampai situs internasional. Yang cukup
terkenal antara lain :
http://www.cert.org
http://www.cert.or.id
http://www.rootshell.com
http://www.securityfocus.com
http://www.astalavista.box.sk

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


http://www.hackerlink.or.id
http://www.antionlione.com

Adapula situs yang menawarkan scan secara online otomatis , di antaranya :


http://hackerwhacker.com
http://grc.com

GENERAL SECURITY
(SECURITY SECARA UMUM)

Ø Pendahuluan

Pengamanan pertama kali yang biasa dilakukan terhadap komputer adalah


konfigurasi keamanan lokal. Kita pastikan bahwa komputer kita aman dari gangguan
walaupun tidak terkoneksi ke jaringan/internet. Kemudian pada bagian general
security ini kita juga akan melakukan pemeriksaan file-file log dan backup.

Ø Keamanan Lokal

Langkah pertama yang biasa dilakukan untuk mengamanan sistem adalah


konfigurasi dan persiapan kemanan secara lokal. Konfigurasi ini difokuskan
terutama untuk mengamankan sistem walaupun tidak sedang terhubung ke dalam
jaringan/internet. Keamanan secara lokal meliputi antara lain : akses ke server
secara lokal, akses fisik server/piranti jaringan, dan perlindungan terhadap
kerusakan.

Ø Perlindungan dengan password lilo

Program LILO (linux loader) berguna untuk mengatur proses booting (sebagai
boot manager untuk multi sistem operasi) dan mempunyai fungsi khusus untuk
memuat (meload) kernel, biasa digunakan untuk mesin Intel-compatible. Password
lilo diperlukan terutama untuk mencegah penggantian password melalui linux single

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


mode. Seperti telah kita ketahui bahwa Linux dalam menjalankan operasinya
mempunyai 7 buah mode runlevel (0-6). Perhaikan tabel berikut :

Run Keterangan
Level
0 Halt (komputer mati)
1 Mode User Tunggal (digunakan untuk adminstrasi sistem)
2 Multi user tanpa NFS (Network File System)
3 Mode multi user penuh
4 Tidak digunakan
5 X11, tampilan grafis
6 Reboot

Ketika booting Linux akan menjalankan program init yang terletak pada
/sbin/init dan secara default akan menjalankan run level 3 (Full Multi User Mode).
Tanpa password lilo siapa saja yang mereboot sistem kita dapat masuk ke mode
single user (run level 1) yang berarti masuk menjadi root tanpa harus mengetahui
passwordnya sama sekali. Hal ini dapat dilakukan dengan mengaktifkan mode
single pada saat muncul prompt lilo waktu booting.
Lilo :
Lalu diisi dengan linux –s, atau linux single
Dengan begitu kita akan masuk ke single mode dengan satu console saja
dan menjadi user root. Untuk mencegahnya, kita akan mengkonfigurasikan agar
sistem kita hanya dapat masuk ke mode single user, tetapi setelah melewati
password lilo yang telah kita konfigurasikan. Prakteknya akan kita bahas pada
bagian Job Sheet di halaman selanjutnya.
Dengan mengeset password lilo saja sebenarnya sistem juga masih kurang
aman karena orang lain dapat saja melakukan booting dengan melalui media lain
misalkan floppy dengan disket booting linux. Asalkan dia tahu letak file / (root) atau
mencoba-coba dan akhirnya berhasil melakukan booting, dia bisa saja masuk single
user tanpa password. Untuk menghindari hal itu dapat dilakukan pencegahan
diantaranya dengan pembatasan akses fisik ke media floopy dan cdrom atau
pembatasan akses BIOS (Basic Input Output System) dengan memberi password
pada BIOS. Pastikan dulu bahwa boot sequence sudah benar yaitu dari harddisk
atau C saja dan pilih option password untuk setup. Tetapi hal ini juga masih bisa

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


menjadi masalah jika BIOS kita mempunyai password default, atau malah dilakukan
peresetan BIOS dengan cara setting jumper/pembongkaran batere BIOS.

Ø Keamanan secara Fisik

Yang juga patut menjadi perhatian juga adalah keamanan secara fisik. Hal ini
meliputi akses terhadap server dan piranti-piranti vital lainnya. Yang perlu
direncanakan adalah letak strategis server agar bisa terjaga dan tidak sembarangan
bisa dijangkau/diakses oleh orang yang tidak bertanggung-jawab.
Selain itu juga perlu diperhatikan agar komputer terjaga dengan melengkapi
pengaman yang baik (misalkan : kunci, gembok, dll).

Ø Keamanan terhadap Kerusakan

Sistem kita tentu harus tahan terhadap kemungkinan- kemungkinan


kerusakan yang bisa terjadi, di antaranya adalah :
1. Petir
Untuk menghindari kerusakan adanya kerusakan yang diakibatkan oleh petir
dapat dicegah dengan pemasangan anti petir dan semacamnya.
2. Hewan
Dapat juga sistem kita mengalami gangguan/kerusakan karena hewan,
misalkan : tikus, serangga, dll. Untuk itu dapat dilakukan pencegahan
seperlunya.
3. Bencana
Bencana ini meliputi : air/hujan, kebakaran, gempa dll
4. Listrik Padam
Untuk menghindari mati/terhentinya service atau kerusakan yang ditimbulkan
karena matinya listrik dapat dicegah dengan pemasangan UPS
(Uninterruptable Power Supply).

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Ø Audit Log

Hampir semua kegiatan penggunaan sistem dicatat dalam berkas yang biasanya
disebut logfile atau log saja. Berkas log ini sangat berguna untuk mengamati
penyimpangan yang terjadi. Kegagalan untuk masuk ke sistem (login), misalnya,
tersimpan di dalam berkas log. Untuk itu para administrator seharusnya rajin
memelihara dan menganalisa berkas log yang dimilikinya. Letak dan isi dari berkas
log bergantung kepada operating system yang digunakan. Di sistem berbasis UNIX,
biasanya berkas ini berada di direktori /var/adm atau /var/log. Jangan sampai file log
menjadi kurang berguna karena tak pernah dibaca. Lihatlah log file anda sewaktu-
waktu. Hal ini dapat membantu mengenali hal-hal yang tidak biasa.
Contoh entry log :
Apr 5 17:20:10 kaizer wu-ftpd[12037]: failed login from
hackeredan.com [64.55.12.34], m1
Apr 9 18:41:47 kaizer login[12861]: invalid password for
`moel' on `ttyp0' from `hackeredan.com'
Baris di atas menunjukkan kegagalan untuk masuk ke sistem melalui fasilitas FTP
(baris pertama) dan telnet (baris kedua). Pada baris kedua terlihat bahwa user
“moel” (atau yang mengaku sebagai user “moel”) mencoba masuk melalui login dan
gagal memberikan password yang valid. Hal ini bisa terjadi karena ketidak
sengajaan, salah memasukkan password, atau bisa juga karena sengaja ingin
mencoba-coba masuk dengan userid “moel” dengan password coba-coba. Cara
coba-coba ini sering dilakukan dengan mengamati nama user yang berada di sistem
tersebut (misalnya dengan menggunakan program finger untuk mengetahui
keberadaan sebuah user).
Beberapa perintah-perintah file log, diantaranya :
[root]# lastlog
digunakan untuk menampilkan rekaman kapan user terakhir login (login, port, host,
dan waktu)
[root]# last
menampilkan rekaman user yang pernah login pada file /usr/log/wtmp
Beberapa file log yang penting, diantaranya :
1. /var/log/xferlog , mencatat rekaman login pada ftp daemon

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


2. /var/log/messages, mencatat rekaman kejadian sistem dan kernel. Daemon yang
digunakan yaitu oleh file ini antara lain :
• syslogd (the system logging daemon), berfungsi merekam hampir semua
program yang dijalankan. Selain aktifitas dari internet daemon, syslog juga
mencatat kejadian-kejadian unusual atau kejadian yang seharusnya tidak
terjadi, misalnya kegagalan sebuah daemon dalam melakukan tugasnya,
dll. Dapat dikonfigurasi melalui file /etc/syslogd.conf
• klogd, berfungsi merekam pesan kernel
3. /var/log/maillog, mencatat kejadian/aktifitas transaksi mail
Untuk melihat satu-persatu file-file log tentu akan sangat melelahkan, menghabiskan
waktu yang banyak dan sangat kurang terjamin ketelitiannya. Ada program
(misalkan : logcheck) yang dapat mengatasi masalah tersebut. Logcheck bekerja
dengan mencari pattern pencarian tertentu setiap jangka waktu tertentu.

Ø Backup Menyeluruh Secara Rutin

Seringkali penyusup masuk ke dalam sistem dan merusak dengan menghapus


berkas/data yang dapat ditemui. Jika intruder ini berhasil menjebol sistem dan
masuk sebagai super user (administrator), maka ada kemungkinan dia dapat
menghapus seluruh berkas. Untuk itu, adanya backup yang dilakukan secara rutin
merupakan sebuah hal yang esensial.
Untuk sistem yang sangat esensial, secara berkala perlu dibuat backup yang
letaknya berjauhan secara fisik. Hal ini dilakukan untuk menghindari hilangnya data
akibat bencana seperti kebakaran, banjir, gempa dan lain lain. Apabila data-data
dibackup akan tetapi diletakkan pada lokasi yang sama, kemungkinan data akan
hilang jika tempat yang bersangkutan mengalami bencana.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


KEAMANAN JARINGAN
(NETWORK SECURITY)

Ø Pendahuluan
Terhubungnya LAN atau komputer ke Internet membuka potensi adanya lubang
keamanan lain (security hole) yang tadinya telah teratasi dengan mekanisme
keamanan secara fisik dan lokal. Jaringan, terutama internet, merupakan sebuah
jaringan komputer yang sangat terbuka di dunia. Konsekuensi yang harus di
tanggung adalah tidak ada jaminan keamanan bagi jaringan yang terkait ke internet.
Artinya jika operator jaringan tidak hati-hati dalam men-set up sistem dan
menerapkan policy-nya, maka kemungkinan besar jaringan yang terkait ke Internet
akan dengan mudah dimasuki orang yang tidak di undang dari luar.
Merupakan tugas dari administrator jaringan yang bersangkutan, untuk menekan
resiko tersebut seminimal mungkin. Pemilihan strategi dan kecakapan administrator
jaringan ini, akan sangat membedakan dan menentukan apakah suatu jaringan
mudah ditembus atau tidak.
Yang perlu untuk diketahui adalah bahwa kemudahan (kenyamanan) mengakses
informasi berbanding terbalik dengan tingkat keamanan sistem informasi itu sendiri.
Semakin tinggi tingkat keamanan, semakin sulit (tidak nyaman) untuk mengakses
informasi. Sebelum memulai segalanya, ada baiknya menentukan terlebih dahulu
tingkat ancaman yang harus diatasi dan resiko yang harus diambil maupun resiko
yang harus dihindari, sehingga dapat dicapai keseimbangan yamg optimal antara
keamanan dan kenyamanan.

Ø Pengenalan Keamanan Jaringan


Keamananan komputer yang tidak terhubung (stand alone), hanya terhubung ke
jaringan/LAN dan terhubung ke internet tentu mempunyai perbedaan. Dengan
menghubungkan suatu jaringan ke internet, resiko keamanan yang akan dihadapi
akan semakin banyak. Serangan bisa terjadi kapan saja, dari mana saja dan oleh
siapa saja. Ingat, internet adalah jaringan yang bersifat global. Untuk itu,
pengamanan harus dilakukan dengan hati-hati. Walaupun demikian, kemungkinan
terjadinya masalah sekuriti di kemudian hari masih akan tetap ada. Tidak ada

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


jaminan bahwa sistem yang kita konfigurasi akan benar-benar aman. Yang bisa kita
lakukan hanyalah menekan seminimal mungkin kemungkinan terjadinya masalah
sekuriti.
Untuk itu, ada beberapa cara yang dapat dilakukan, antara lain menutup port-
port yang tidak dipakai, meletakkan firewall, menggunakan aplikasi yang reliable
(misalkan webserver dengan apache), melakukan konfigurasi program-program
aplikasi internet (misalkan melakukan konfigurasi keamanan pada apache dan
mengintegrasikannya dengan SSL), menggunakan program-program sekuriti
(misalkan scan listener dengan menggunakan portsentry), dan lain-lain. Pada bab
ini kita akan membahas mengenai internet daemon (inetd) yang digunakan untuk
mengelola beberapa aplikasi internet (misal : telnet, ftp, ssh, dll). Untuk versi Linux
SuSE yang terbaru, inetd ini sudah digantikan posisinya oleh xinetd. Perbedaannya
antara lain adalah sintaks-sintaks yang digunakan dan juga xinetd menggunakan
satu buah file untuk satu servis sedangkan inetd menggunakan satu buah file untuk
semua servis (file /etc/inetd.conf). Selain inetd, pada bab ini kita juga akan
membahas TCP Wrappers yang akan kita pakai untuk `membungkus` inetd
(internet daemon) agar lebih aman. Penasaran ? Mari kita pelajari bagian
berikutnya.

Ø Service inetd (internet daemon)

Secara default sistem kita akan menjalankan beberapa servis internet yang
mungkin sebagian di antaranya tidak kita gunakan/perlukan. Untuk meningkatkan
keamanan, lebih baik servis-servis (misalkan finger, telnet, dll) yang tidak terlalu kita
butuhkan dimatikan/ditutup saja. Sudah banyak kasus yang menunjukkan kesalahan
penggunaan (abuse) dari servis tersebut, atau ada kemungkinan lubang keamanan
dalam servis tersebut akan tetapi sang administrator tidak menyadari bahwa servis
tersebut dijalankan di komputernya. Kebanyakan servis yang berhubungan dengan
internet (misalkan : ftp, telnet , ssh, dll) akan dijalankan melalui inetd (internet
daemon).
Dengan melakukan pengeditan pada /etc/inetd.conf (konfigurasi utama internet
daemon : superserver) maka kita dapat melakukan modifikasi-modifikasi yang

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


diperlukan misalkan saja mematikan servis- servis yang tidak digunakan (dengan
menambahkan tanda komentar (#) pada awal baris). Agar lebih jelas mari kita
pelajari sintaks pada file /etc/inetd.conf :
Sintaks
service tipe_socket protocol flag user server_path argumen
KETERANGAN
service
Menjelaskan nama servis yang ditranslasikan ke nomor port dengan melihat file
/etc/services
tipe_socket
Berisi jenis/tipe socket yaitu (ada dua) : stream (bersifat connection oriented
digunakan untuk TCP) dan dgram (digunakan untuk UDP)
protocol
Berisi jenis protokol yang digunakan
flag
Di isi dengan wait atau nowait. Jika berisi wait maka inetd hanya menjalankan
satu server pada port yang telah ditentukan. Sebaliknya dengan option nowait maka
server dapat dijalankan lebih dari satu tanpa perlu menunggu selesainya eksekusi
sebelumnya. Jika kita menggunakan option stream maka flag nowait harus
digunakan.
user
Berisi login ID dari user yang akan memiliki proses dari perintah yang
dijalankan. Kebanyakan menggunakan user root. Tetapi ada beberapa proses yang
tidak menggunakan root tetapi memakai user lain (misal : nobody, news, dll) dengan
alasan security.
server_path
Berisi full path dari program server yang akan dijalankan.
argumen
Berisi perintah yang akan dijalankan serta beberapa argumen yang diperlukan. Akan
bernilai kosong/tidak diisi jika kita menggunan option internal (menggunakan servis
internal) pada bagian server. Contoh file /etc/inetd.conf :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


# inetd.conf This file describes the services that will be available
# through the INETD TCP/IP super server. To re-configure
# the running INETD process, edit this file, then send the
# INETD process a SIGHUP signal.
# Version: @(#)/etc/inetd.conf 3.10 05/27/93
# Authors: Original taken from BSD UNIX 4.3/TAHOE.
# Fred N. van Kempen, <waltje@uwalt.nl.mugnet.org>
# Modified for Debian Linux by Ian A. Murdock <imurdock@shell.portal.com>
# Modified for RHS Linux by Marc Ewing <marc@suse.com>

# <service_name> <sock_type> <proto> <flags> <user> <server_path> <args>


#
# Echo, discard, daytime, and chargen are used primarily for testing.
# To re-read this file after changes, just do a 'killall -HUP inetd'

#echo stream tcp nowait root internal


#echo dgram udp wait root internal
#discard stream tcp nowait root internal
#discard dgram udp wait root internal
#daytime stream tcp nowait root internal
#daytime dgram udp wait root internal
#chargen stream tcp nowait root internal
#chargen dgram udp wait root internal
#time stream tcp nowait root internal
#time dgram udp wait root internal
#
# These are standard services.
#
ftp stream tcp nowait root /usr/sbin/tcpdin.ftpd -l -a
telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd
#
# Shell, login, exec, comsat and talk are BSD protocols.
#
#shell stream tcp nowait root /usr/sbin/tcpdin.rshd
#login stream tcp nowait root /usr/sbin/tcpdin.rlogind
#exec stream tcp nowait root /usr/sbin/tcpdin.rexecd
#comsat dgram udp wait root /usr/sbin/tcpdin.comsat
talk dgram udp wait nobody.tty /usr/sbin/tcpdin.talkd
ntalk dgram udp wait nobody.tty /usr/sbin/tcpdin.ntalkd
#dtalk stream tcp wait nobody.tty /usr/sbin/tcpdin.dtalkd
#
# Pop and imap mail services et al
#
#pop-2 stream tcp nowait root /usr/sbin/tcpd ipop2d
#pop-3 stream tcp nowait root /usr/sbin/tcpd ipop3d
#imap stream tcp nowait root /usr/sbin/tcpd imapd
#

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


# The Internet UUCP service.
#
#uucp stream tcp nowait uucp /usr/sbin/tcpd/usr/lib/uucp/uucico -l
#
# Tftp service is provided primarily for booting. Most sites
# run this only on machines acting as "boot servers." Do not uncomment
# this unless you *need* it.
#
#tftp dgram udp wait root /usr/sbin/tcpdin.tftpd
#bootps dgram udp wait root /usr/sbin/tcpdbootpd
#
# Finger, systat and netstat give out user information which may be
# valuable to potential "system crackers." Many sites choose to disable
# some or all of these services to improve security.
#
#finger stream tcp nowait nobody /usr/sbin/tcpdin.fingerd
#cfinger stream tcp nowait root /usr/sbin/tcpdin.cfingerd
#systat stream tcp nowait guest /usr/sbin/tcpd/bin/ps-auwwx
#netstat stream tcp nowait guest /usr/sbin/tcpd/bin/netstat -f inet
#
# Authentication
#
# identd is run standalone now
#
#auth stream tcp wait root /usr/sbin/in.identd in.identd -e -o
#
# End of inetd.conf
smtp stream tcp nowait qmaild /var/qmail/bin/tcp-env tcp-env /var/qmail/bin/qmail-
smtpd

#linuxconf stream tcp wait root /bin/linuxconf linuxconf --http

Terlihat pada file /etc/inetd.conf di atas ada beberapa servis yang didisable untuk
menghindari hal-hal yang tidak diinginkan. Di antaranya adalah linuxconf, finger,
rlogin, dll.

Ø Pengenalan Firewall

Firewall merupakan sebuah perangkat yang diletakkan antara Internet dengan


jaringan internal. Informasi yang keluar atau masuk harus melalui firewall ini. Tujuan
utama dari firewall adalah untuk menjaga agar akses (ke dalam maupun ke luar)
dari orang yang tidak berwenang (unauthorized access) tidak dapat dilakukan.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Konfigurasi dari firewall bergantung kepada kebijaksanaan (policy) dari organisasi
yang bersangkutan.
Firewall merupakan alat untuk mengimplementasikan kebijakan security (security
policy). Sedangkan kebijakan security, dibuat berdasarkan perimbangan antara
fasilitas yang disediakan dengan implikasi security-nya. Semakin ketat kebijakan
security, semakin kompleks konfigurasi layanan informasi atau semakin sedikit
fasilitas yang tersedia di jaringan. Sebaliknya, dengan semakin banyak fasilitas yang
tersedia atau sedemikian sederhananya konfigurasi yang diterapkan, maka semakin
mudah orang orang ‘usil‘ dari luar masuk kedalam sistem (akibat langsung dari
lemahnya kebijakan security).
Firewall bekerja dengan mengamati paket IP (Internet Protocol) yang melewatinya.
Berdasarkan konfigurasi dari firewall maka akses dapat diatur berdasarkan IP
address, port, dan arah informasi. Detail dari konfigurasi bergantung kepada
masing-masing firewall. Firewall dapat berupa sebuah perangkat keras yang sudah
dilengkapi dengan perangkat lunak tertentu, sehingga pemakai (administrator)
tinggal melakukan konfigurasi dari firewall tersebut. Firewall juga dapat berupa
perangkat lunak yang ditambahkan kepada sebuah server (baik UNIX maupun
Windows NT), yang dikonfigurasi menjadi firewall.
Firewall pada dasarnya dapat dikategorikan menjadi 2 berdasarkan cara fungsi
kerjanya (keduanya dapat dilakukan pada sebuah perangkat komputer (device) atau
dilakukan secara terpisah), yaitu :
1. Fungsi filtering
Firewall bekerja pada level jaringan (network-level firewall) biasa disebut
packet filter.
Firewall tipe ini biasanya berupa router yang melakukan fungsi packet filtering
berdasarkan parameter-parameter tertentu : alamat sumber, protokol, nomor
port dan isi. Dari membandingkan informasi yang diperoleh pada paket-paket
trafik dengan kebijaksanaan yang ada pada tabel akses, maka tindakan yang
diberlakukan adalah :
• Melewatkan paket data ke tujuannya (client atau server)
• Memblok paket data
2. Fungsi proxy

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Firewall pada level aplikasi (application level gateway) ini berfungsi sebagai
penghubung antara komputer client dengan jaringan luar. Pada koneksinya,
paket-paket IP tidak pernah diteruskan secara langsung, namun ditranslasi
dan diwakilkan oleh gateway aplikasi tersebut yang berfungsi sebagai saluran
dan penterjemah dan menggantikan fungsi client. Proxy akan merelai semua
request dari client kepada server yang sesungguhnya, kemudian merelai balik
semua hasil response real server kepada client kembali. Ditengah proses di
atas, maka proxy server berkesempatan untuk melakukan pembatasan “relai”
berdasarkan tabel akses yang sudah dibuat.
Fungsi proxy dapat dilakukan oleh berbagai software tergantung kepada jenis
proxy yang dibutuhkan, misalnya web proxy, rlogin proxy, ftp proxy dan
seterusnya. Di sisi client sering kali dibutuhkan software tertentu agar dapat
menggunakan proxy server ini, seperti misalnya dengan menggunakan
SOCKS. Beberapa perangkat lunak berbasis UNIX untuk proxy antara lain:
Socks (proxy server oleh NEC Network Systems Labs), Squid (web proxy
server).
Ø Packet Filterring

TCP Wrappers

Secara default linux suse akan mengizinkan servis-servis tertentu (misal :


telnet) dengan tanpa pembatasan. Untuk itu diperlukan pembatasan-pembatasan
(proteksi) tertentu sehingga dapat mengurangi kerawanan keamanan jaringan.
Salah satu aplikasi pada sistem UNIX yang digunakan untuk melakukan
packet filtering adalah TCP Wrappers. TCP Wrappers biasanya sudah terinstal
secara default waktu penginstalan Linux.
Program ini bekerja dengan cara membungkus inetd (internet daemon :
aplikasi yang menjalankan servis-servis internat) agar lebih aman. Sebagai contoh
ada permintaan koneksi telnet dari internet, jika sistem kita tidak mempunyai tcp
wrappers maka inetd akan memanggil telnetd dan session telnet akan terbentuk
tanpa melakukan pembatasan apapun. Hal ini berbeda dengan TCP Wrappers yang
telah terinstal, sebelum memanggil telnetd, TCP Wrapper akan memeriksa dulu

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


berdasarkan pembatasan-pembatasan yang telah disetting kemudian memutuskan
apakah koneksi tersebut akan diizinkan atau tidak.

Ø Konfigurasi TCP Wrappers

File-file yang perlu diperhatikan dalam penyetingan TCP Wrappers antara


lain :
1. /etc/inetd.conf (konfigurasi internet daemon)
2. /etc/hosts.allow (konfigurasi host-host yang diizinkan)
3. /etc/hosts.deny (konfigurasi host-host yang ditolak)
Pastikan dahulu bahwa TCP Wrappers sudah terinstal pada sistem kita.
Untuk mengeceknya dapat dilihat pada file /etc/inetd.conf. Dalam inetd.conf,
layanan tanpa TCP Wrapper akan dituliskan dalam bentuk sebagai berikut, misal :
telnet stream tcp nowait nobody /usr/etc/telnetd in.telnetd –b /etc/issue

Jika internet daemon sudah dikonfigurasi dengan TCP Wrapper maka akan
terbaca seperti ini :
telnet stream tcp nowait nobody /usr/local/bin/tcpd
Biasanya tcpwrappers dirakit menjadi “tcpd”. Apabila servis di server anda
(misalnya telnet atau ftp) dijalankan melalui tcpd, maka server anda menggunakan
tcpwrappers.
TCP Wrappers mengkonfigurasikan Network Access Control pada file
/etc/hosts.allow dan /etc/hosts.deny. File /etc/hosts.deny ini berisi mengenai servis
dari user/host/network mana saja yang akan ditolak sedangkan file /etc/hosts.allow
berisi mengenai servis dari user/host/network mana saja yang akan diterima. Secara
garis besar kedua file tersebut mempunya sintaks sbb :

Ø Daemon_list : client_host_list

Daemon List merupakan daftar daemon seperti telnetd, fingerd, ftpd, ssh, dll.
Client Host List merupakan daftar user/host/network dan mempuyai bentuk sbb :
ALL : semua host
KNOWN : host yang terdaftar pada DNS server
LOCAL : host yang tidak dipisahkan oleh . (dot)

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


PARANOID : mempunyai nama dan IP address yang tidak sesuai jika
dilacak dan dibandingkan antara pelacakan dari nama dengan
dari nomor IP
UNKNOWN : host yang hanya mempunyai nomor IP tanpa nama internet
.linux.net : host dengan domain linux.net
192.168.0.107 : host dengan IP adress tertentu

Agar lebih jelas dapat dibaca manualnya :


[user]$ man hosts_options

Ø IPfwadm, IPchains, NetFilter dan IP Tables

Selain dengan aplikasi TCP Wrappers kita dapat juga menggunakan ipfwadm
(berbasis kernel 2.0), ipchains (berbasis kernel 2.2), dan Netfilter dengan IP Tables
(berbasis kernel 2.4) untuk melakukan packet filtering. Baik ipfwadm, ipchains,
maupun netfilter dan ip tables bersifat saling menggantikan, dan kita cukup
menggunakan salah satu saja. Ipchains (berbasis kernel 2.2.16) sudah dibahas
pada bab koneksi internet.

MONITORING LOG DAN INTEGRITAS SISTEM

Ø Pendahuluan

Ada banyak program yang berhubungan dengan keamanan dan biasanya


dapat didownload gratis di internet. Program tersebut meliputi program
enkripsi/dekripsi, probe/scan listener, pemantau (monitoring), dan firewall. Juga
program seperti probe dan scanner, cracker, bomber dan flooder, sniffer, malicious
code (virus, trojan dan worm), eksploit bug, backdoor, spoof dll. Dewasa ini tool-tool
security yang ada semakin banyak jenisnya, mudah digunakan, dan semakin efektif.
Pada bab ini kita akan memfokuskan pada pembahasan pemantauan integritas
sistem dan pemeriksaan file-file log secara otomatis.
Pemantau integritas sistem adalah apilkasi yang digunakan untuk melakukan
pengujian terhadap integratitas sistem, software yang digunakan misalkan tripwire
dan sxid. Tripwire digunakan untuk memantau perubahan-perubahan (direktori dan

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


file) yang terjadi pada sistem. Digunakan terutama untuk mencegah adanya
backdoor, memantau pengubahan file oleh orang yang tidak berhak, dll. Logcheck
digunakan untuk membantu memeriksa file-file log sehingga tidak membosankan,
lebih efektif dan praktis. Program ini bekerja dengan cara mencari pattern/bentuk
tertentu (dapat dikonfigurasi) dalam file log lalu mengirimkan laporannya kepada
admin, misalnya melalui email.

Ø Trip Wire

Salah satu contoh program yang sering digunakan untuk memantau integritas
sistem Linux adalah program Tripwire. Program Tripwire dapat digunakan untuk
memantau adanya perubahan pada berkas/file atau direktori.
Cara Kerja Tripwire.
Pada waktu pertama kali digunakan, tripwire harus digunakan untuk membuat
database mengenai berkas-berkas atau direktori yang ingin kita amati beserta
“signature” dari berkas tersebut. Signature berisi informasi mengenai besarnya
berkas, kapan dibuatnya, pemiliknya, hasil checksum atau hash (misalnya dengan
menggunakan program MD5), dan sebagainya. Apabila ada perubahan pada berkas
tersebut, maka keluaran dari hash function akan berbeda dengan yang ada di
database sehingga ketahuan adanya perubahan. Selain Tripwire, tool yang yang
digunakan utuk melakukan pengecekan integritas sistem antara lain: TAMU (Texas
A&M University), ATP (The Anti-Tampering Program), dan sXid (men-tracks file-file
suid dan sgid, bisa mendeteksi jika ada kit root yang terinstal).
Tripwire yang merupakan salah satu pilhan utilitas yang dapat digunakan oleh user
dan administrator untuk memeriksa perubahan yang terjadi pada file atau direktori.
Hal itu untuk menghindari adanya backdoor (pintu belakang untuk mendapatkan
akses illegal lagi), penyusupan karena adanya bug pada perangkat lunak, adanya
malicious code dan perubahan terhadap sistem oleh oramg lain yang sebenarnya
tidak mempunyai hak untuk itu. Dalam pemeriksaan keutuhan dan keaslian file ini,
tripwire perlu mengetahui file mana saja yang akan diperiksa baru setelah itu
membandingkan file yang akan diperiksa tersebut dengan informasi (database) yang
telah disimpan sebelumnya. Dan jika terjadi perubahan atau penambahan file baru

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Tripwire akan melaporkannya sehingga administrator dapat segera memeriksa
apakah pengubahan atau penambahan file baru tersebut legal atau tidak.
Daftar file atau direktori yang akan diperiksa Tripwire terdapat dalam file
konfigurasi Tripwire yang default-nya bernama tw.config. Sedangkan keadaan asli
file tersebut terdapat di dalam file database Tripwire yang default-nya bernama
tw.db_@. Karakter @ diganti dengan hostname komputer yang diinstal Tripwire.
Yang menjadi file inti dalam program Tripwire ini sebenarnya adalah kedua file
tersebut yaitu file konfigurasi tw.config dan file database tw.db_@. Karena itu
sangat disarankan pada saat menginstalasi program Tripwire agar kedua file ini
diletakkan pada tempat yang hanya di-mount read-only atau di media eksternal
(seperti disket atau NFS) sehingga tidak ada intruder yang dapat mengubahnya.
Sebab jika hal ini tidak dilakukan akan sangat mungkin menyebabkan kita tidak
dapat mengetahui seorang intruder yang telah berhasil masuk ke dalam sistem dan
telah menyiapkan backdoor. Hal ini dikarenakan pada saat intruder itu telah
membuat file baru atau mengubah suatu file untuk digunakan sebagai backdoor, ia
sekaligus dapat mengubah file database Tripwire sehingga jejaknya tidak akan
terdeteksi oleh Tripwire. Jika hal seperti ini terjadi, berarti program Tripwire yang
telah diinstalasi sama sekali tidak berguna. Contoh file yang membahayakan
keamanan sistem jika diubah : password user, group user, pengubahan UID/GID
sebuah file atau penambahan file yang memiliki setuid root, inetd, service, dll.
Instalasi dan penggunaan Tripwire, silakan dilihat di bagian Jobsheet.

Ø Logcheck

Serangan terhadap sistem bisa terjadi kapan saja, dan tidak setiap saat
administrator berada ditempat kejadian. Mungkin ada administrator yang tidak
pernah (jarang) membaca file log karena memang menghabiskan waktu,
membosankan dan tidak terjamin ketelitiannya. Padahal justru dari logginglah
sebuah kejadian bisa ditrace dengan benar.
Karena itu, dapat digunakan suatu program yang berfungsi untuk membantu
dalam memeriksa file-file log sehingga lebih mudah dan praktis, misalnya logcheck.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Logcheck adalah program yang berfungsi mencari pattern/bentuk tertentu
(menyaring informasi penting) yang kita inginkan dalam file-file logging lalu
mengirimkan laporannya kepada admin, misalnya melalui email. Logcheck bisa
dikonfigurasi untuk melakukan checking sesering yang kita butuhkan, misal 5
menit/1 jam sekali, dengan menggunakan cron. Pattern yang akan dicari oleh
logcheck pun bisa di atur sesuai dengan perkembangan informasi buggy yang
bertebaran di internet.

TELNET DAN SSH

Ø Pendahuluan

Penggunaan telnet untuk melakukan login jarak jauh (remote login)


memungkinkan terjadinya pelanggaran privacy dan pencurian password. Hal ini
dimungkinkan karena telnet tidak menggunakan enkripsi. Penyadapan dapat
dilakukan dengan menggunakan aplikasi sniffer (misalnya snifit) dengan cara
mendengar informasi-informasi yang lewat. SSH dapat dipakai untuk mengatasi hal
ini karena SSH menggunakan enkripsi.
Ø Telnet

Telnet digunakan untuk melakukan login secara remote dari tempat/komputer


lain melalui jaringan (dengan hubungan TCP/IP menggunakan port 23). Dengan
menggunakan telnet maka kita seolah-olah berada di depan komputer yang kita
inginkan/kita tuju. Kita akan melakukan prosedur sama seperti jika melakukan login
secara lokal yaitu mengisi nama login dan password. Syarat yang harus dipenuhi
cukup sederhana yaitu komputer clien harus sudah terinstal aplikasi telnet dan
komputer server harus terinstal aplikasi telnet dan telnet server. Salah satu yang
menjadi permasalahan penggunaan applikasi telnet adalah kurang terjaminnya
keamanan karena informasi tentang userid dan password ini dikirimkan melalui
jaringan komputer secara terbuka/plain text tanpa enkripsi. Akibatnya ada
kemungkinan seorang yang nakal melakukan sniffing dengan software sniffer dan
mengumpulkan informasi tentang pasangan userid dan password ini. Meskipun cara

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


ini biasanya membutuhkan akses “root” ada baiknya kita menghindari hal tersebut,
dengan mendisable fasilitas telnet misalnya.

Ø Sniffit

Sniffit adalah salah satu program aplikasi yang digunakan untuk melakukan
aktivitas sniffing. Sniffit bisa mendeteksi login, password, dan perintah-perintah yang
kita ketikkan pada console jika kita melakukan aktivitas tertentu, misalkan telnet.
Lihatlah bagian Jobsheet untuk instalasi dan menggunakan sniffit.

Ø Secure Shell (SSH)

Enkripsi dapat digunakan untuk melindungi adanya sniffing. Salah satu aplikasi
yang digunakan untuk remote login dengan enkripsi adalah SSH. Paket yang
dikirimkan dengan SSH akan dienkripsi dengan RSA atau IDEA sehingga tidak
dapat dibaca/dimengerti isinya oleh orang lain ng yang tidak berhak. Beberapa
implementasi SSH ini, antara lain : ssh untuk UNIX (dalam bentuk source code,
gratis), putty, SSH untuk Windows dari Data Fellows (komersial)
http://www.datafellows.com/, TTSSH (skrip yang dibuat untuk Tera Term Pro (gratis,
untuk Windows)), SecureCRT untuk Windows (shareware/komersial).

Ø PUBLIC KEY CRYPTOGRAPHY (KRIPTOGRAPHI KUNCI PUBLIK)

SSH dalam enkripsinya menggunakan metode public key cryptography. Dengan


metode ini, kita akan memerlukan 2 buah kunci berbeda yang digunakan baik untuk
melakukan enkripsi dan dekripsi. Dua buah kunci tersebut masing-masing disebut
public key (dipublikasikan ke publik/orang lain) dan private key (dirahasiakan/hanya
pemiliknya yang tahu). Masing-masing kunci di atas dapat digunakan untuk
melakukan enkripsi dan dekripsi.
Perhatikan ilustrasi kasar enkripsi dengan public key cryptography berikut ini :
Misalkan terjadi komunikasi antara dua person, yaitu Lia mengirimkan data ke
Hakim. Maka proses yang terjadi adalah :

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


Public Key network

A B

Gambar 1.
Lia mengambil public key milik Hakim

network Public Key B


+ Private Key A
+ Data

Data terenkripsi

Gambar logika
B menggunakan private key miliknya untuk melakukan enkripsi
terhadap data.

Setelah itu, hasilnya dienkripsi lagi menggunakan public key milik A.

A network B

Data terenkripsi

Gambar
B mengirimkan data yang telah terenkripsi ke A

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1


network
A B

Public Key

Gambar B mengirimkan Public Key miliknya ke A

Public Key milik B


+ Private Key milik A network
+ Data terenkripsi

= Data terdekripsi

Gambar Data terenkripsi tadi didekripsi dengan private key milik A, kemudian
didekripsi lagi dengan public key milik B. Hasilnya adalah data yang siap digunakan.

Jadi misalkan ditengah jalan ada orang yang berhasil melakukan penyadapan, maka
dia tidak akan dapat membukanya tanpa adanya private key yang bersangkutan.

Panduan Lengkap Membangun Server Menggunakan Linux SuSE 9.1