membangun dns dan web server dengan debian

24
1 Membangun DNS Server dan Web Server dengan Debian Linux::: ICT SMK Muhammadiyah 5 Babat MEMBANGUN DNS SERVER DAN WEB SERVER DENGAN DEBIAN LINUX Oleh: Abdul Rohman ~“ikatlah ilmu dengan tulisan”~ [email protected] , [email protected] Administrators & Developer ICT MUHAMMADIYAH’S VOCATIONAL HIGH SCHOOL 5 th BABAT 2010

Upload: abdul-rohman

Post on 30-Jun-2015

614 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

1

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

MEMBANGUN DNS SERVER DAN

WEB SERVER DENGAN DEBIAN LINUX

Oleh: Abdul Rohman ~“ikatlah ilmu dengan tulisan”~

[email protected],

[email protected]

Administrators & Developer ICT

MUHAMMADIYAH’S VOCATIONAL HIGH

SCHOOL 5th BABAT

2010

Page 2: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

2

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

PENGENALAN LINUX

Linux adalah sistem operasi berbasis UNIX yang dapat berjalan di berbagai macam perangkat

keras terutama di PC berbasis Intel x86. Dikatakan berbasis UNIX karena Linux dikembangkan

menurut standar yang dimiliki UNIX dan kemampuan yang sama dengan UNIX. Artinya Linux

memiliki kemampuan baik sebagai server maupun workstation layaknya UNIX.

Pada awalnya Linux hanya berjalan di platform Intel x86 termasuk AMD Cyrix dan lainnya.

Namun seiring dengan berkembangnya jumlah pengguna Linux dan para pengembangnya

maka sekarang Linux telah berjalan pula pada MacIntosh (Motorolla), Sun Sparc, DEC Alpha ,

Amiga , strongARM dan masih banyak lagi.

Linux Pertamakali dibuat oleh Linus Torvalds di Universitas Helsinki , Finlandia. Kemudian Linux dikembangkan lagi oleh banyak programmer dan Hacker Unix di seluruh dunia.

Figure 1 Linus Torvalds

Perkembangan Linux sangat didukung oleh lisensi yang digunakan oleh Linux yaitu GNU General Public License (GNU GPL). Secara singkat GNU General Public License memungkinkan suatu aplikasi ( termasuk sistem operasi ) untuk secara bebas digunakan dan disebarluaskan dimana pengguna/penerima software berhak menerima kode asal ( source code) dari aplikasi tersebut beserta semua hak yang diijinkan oleh penulis asli. Aplikasi tersebut dapat dimodifikasi maupun digunakan dalam aplikasi lain dimana lisensi dari aplikasi perubahan/baru tetap pada GNU GPL . Penulis asli hanya bertanggungjawab pada kode asli dan tidak bertanggungjawab terhadap implikasi perubahan yang dilakukan pada aplikasi tersebut. Penyebarluasan aplikasi yang telah dirubah tetap mencantumkan penulis asli , kode asli, kode perubahan yang ditambahkan dan penanggungjawab perubahan tersebut. Dengan GPL bukan berarti tidak memungkinkan adanya komersial, paling tidak biaya dapat ditarik dari biaya kopi media distribusi. Jasa layanan seperti dukungan teknis dapat merupakan produk komersial.

Saat ini Linux adalah sistem UNIX yang sangat lengkap, bisa digunakan untuk jaringan, pengembangan software dan bahkan untuk pekerjaan seharihari. Linux sekarang merupakan alternatif sistem operasi yang jauh lebih murah jika dibandingkan

Page 3: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

3

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

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 HewlettPackard 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 basic, dan programprogram Lain yang bermanfaat sesuai dengan tujuan pembuatan distro. Ada banyak sekali distro Linux, diantaranya :

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

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

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

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

5. Mandrake, merupakan varian distro RedHat yang dioptimasi untuk pentium. Kalau komputer kita menggunakan pentium ke atas, umumnya Linux bisa jalan lebih cepat dengan Mandrake.

6. WinLinux, distro yang dirancang untuk diinstall di atas partisi DOS (WIndows). Jadi untuk menjalankannya bisa diklik dari Windows. WinLinux dibuat seakanakan merupakan suatu program aplikasi under Windows.

Dan masih banyak distro-distro lainnya yang telah tersedia maupun yang akan muncul.

Mari menggunakan Linux

Dengan GNU GPL Linux menawarkan sebuah sistem operasi sekelas UNIX dengan biaya murah. Terutama bagi perusahaan dengan kapital kecil Linux memberi angin segar terhadap investasi perangkat lunak yang dibutuhkan. Dengan fasilitas yang dimiliki Linux , maka Linux merupakan alternatif sistem operasi yang patut dilihat terhadap sistem operasi lainnya seperti Windows NT, UNIX , SunOS dan lainnya. Bagi pengguna UNIX , Linux dapat menjadi personal UNIX yang digunakan sebagai sarana pemrograman termasuk pemrograman database dan XWindows. Bagi mahasiswa, Linux merupakan sarana yang dapat digunakan untuk mempelajari lingkungan UNIX yang biasa digunakan oleh perusahaan skala besar.

Page 4: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

4

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

Bagi perusahaan skala kecil dan menengah , Linux dapat menghemat biaya investasi UNIX dengan kemampuan sama. Ingatlah selama ini jika kita menggunakan Windows yang tidak mempunyai lisensi resmi( alias bajakan) kita telah berbuat ilegal. Kenapa katakata Free Software tidak begitu menggema di Indonesia? Ya, karena negara kita sanagat permisif terhadap pembajakan software. Tahukan anda bila harus membeli software Visual Basic secara resmi ? sekitar $2200. Dan satu lagi, Linux versi yang baru sekarang mempunyai GUI( tampilan grafis) yang canggih dan mudah digunakan. Bahkan cukup mudah bagi pemula sekalipun. Sehingga Linux bukanlah lagi suatu barang yang menakutkan bagi pemula sekalipun. Apakah Linux bisa untuk keperluan sehari-hari, pasti ya!. Anda akan takjub bahwa hampir semua kegiatan yang biasa anda lakukan di Windows bisa juga dilakukan di Linux dan halal alias bukan bajakan. Bahkan diLinux anda dapat membuat tampilan anda persis seperti Win 98 atau Mac dengan memilih salah satu desktop theme yang ada. Kemampuan Sistem Linux Multiuser Kemampuan OS menangani banyak user secara simultan baik pada aplikasi yang sama maupun aplikasi yang berbeda. Multitasking Kemampuan OS menangani sejumlah pekerjaan (task) secara simultan. Kernel Linux merupakan kernel modular dimana dapat dikonfigurasi dengan modulmodul (berupa device driver) pluggable yang dapat dipasang atau dilepas sesuai kebutuhan. Hal ini membuat kernel Linux menjadi kecil dan ringkas, menghemat memori yang digunakan kernel sehingga bisa digunakan untuk alokasi memori aplikasi. Dukungan lengkap terhadap jaringan berbasis TCP/IP Tersedia fasilitasfasilitas jaringan seperti telnet, FTP, dan NNTP. Linux menyediakan juga driverdriver untuk Ethernet, PPP, bahkan ISDN. Pada platform Intel, Linux menggunakan mode protected, model penggunaan memori secara flat (tanpa segmentasi), demand paging, virtual memory . Penanganan program dan data berukuran besar menjadi lebih baik. Linux menggunakan shared library pada filefile executeable sehingga ukuran program menjadi kecil.

Page 5: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

5

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

LINUX SHELL (TERMINAL) DAN

PERINTAH DASAR

Linux shell merupakan tool berbasis teks untuk berinteraksi dengan komputer. Linux shell sering juga disebut dengan xterm, konsole, terminal, shell command, ataupun shell. Shell ini merupakan antarmuka penghubung user dengan sistem. Shell juga sering disebut dengan interpreter yang mengoperasikan sebuah loop sederhana yakni menerima perintah, menginterpretasikan perintah, menjalankan perintah, dan menunggu perintah masukan berikutnya. Berikut bagan loop interpreter sederhana yang dijalankan oleh shell unix ataupun GNU/Linux Mengapa menggunakan Linux Shell? d Pada sistem operasi seperti Ms-Windows dan MacOS, penggunaan shell command sudah mulai dikurangi atau bahkan dihilangkan sama sekali. Pada beberapa sistem operasi seperti yang penulis sebutkan di atas, para penggunanya semakin dimanja dengan penggunaan mode grafis (Graphical desktop) dan tidak memperdulikan lagi penggunaan shell command tersebut. Satu hal yang menarik dari sistem operasi gnu/linux adalah penggunaan shell command tetap dipertahankan karena beberapa alasan berikut: 1. Kebanyakan konfigurasi sistem dapat dilakukan dari shell command. 2. Linux shell memberikan fleksibilitas terutama saat anda bekerja dengan banyak file. 3. Untuk tindakan penyelamatan terhadap sebuah data atau recovery terhadap sistem dan

pekerjaan maintenance sistem pada single mode dapat anda lakukan lewat shell command. Untuk memulai shell (terminal), kita dapat mengklik menu :Application ���� Accessories ���� Terminal

Perintah Dasar ls Perintah ls, tanpa parameter, akan menampilkan isi direktori dimana anda berada sekarang. ls -a Menampilkan semua file dan direktori yang ada di direktori dimana anda berada, termasuk file-file hidden. ls -l Menampilkan file-file di direktori sekarang, termasuk (dari kiri ke kanan) : tipe file, permissions, banyaknya hard link, nama pemilik file, nama group, ukuran file dalam byte, dan tanggal kapan file tersebut terakhir disimpan. ls -al Kombinasi dari ls –a dan ls l ls -F Dengan parameter F, akan tampak perbedaan yang mana file, yang mana direktori. Berpindah Direktori Untuk pindah ke suatu direktori digunakan perintah cd Sebelum menggunakan perintah cd, kita lihat terlebih dahulu di direktori mana kita berada sekarang, dengan menggunakan perintah pwd. Perintah pwd (print working directory) akan menunjukkan dimana kita sekarang berada. Misalnya sebagai berikut : debian:/home/rohman# pwd

/home/rohman

Page 6: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

6

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

OK, setelah kita tahu posisi kita, sekarang kita pelajari perintah cd dan variasinya, sebagai berikut : cd Perintah cd tanpa parameter akan membawa kita ke home directory kita. Karena kita tadi login dengan account "sensei", maka secara default home directory kita adalah /home/sensei

cd .. Berpindah ke direktori yang berada satu tingkat di atas direktori sekarang. Misalnya anda sekarang sedang berada di /home/sensei, kemudian anda menjalankan perintah cd .. ,maka anda akan dibawa ke direktori /home cd [nama direktori] Misalnya cd /usr/doc , akan membawa kita berpindah ke direktori /usr/doc cd HOWTO Misalnya kita masih berada di direktori /usr/doc, maka perintah cd HOWTO akan membawa kita ke dalam direktori HOWTO yang berada di dalam direktori /usr/doc, sehingga kita sekarang berada di direktori /usr/doc/HOWTO Membuat Direktori Seperti halnya di DOS, di linux kita juga bisa membuat direktori baru. Perintah yang kita gunakan adalah perintah mkdir . Misalnya kita ingin membuat direktori baru bernama “tkj”, maka perintah yang kita ketikkan adalah : debian:/home/rohman# mkdir tkj

debian:/home/rohman# ls

Desktop tkj

debian:/home/rohman#

cat Perintah cat ini menampilkan isi dari suatu file ke standart output (stdout) Syntax : $ cat <namafile> Membuat file baru, jika file belum ada : debian:/home/rohman# cat >>aku.txt

baris ini adalah baris pertama.

^D

Menambahkan data pada file : debian:/home/rohman# cat>>aku.txt

dan ini adalah baris yang kedua

^D cp Mirip dengan copy pada DOS, perintah cp ini berfungsi mengkopi file. Syntax : $ cp [option] file /dir/path/

Untuk lebih jelas silahkan dibaca pilihanpilihannya dengan menjalankan : $ cp help Dari namanya sudah dapat diterka bahwa perintah ini berfungsi untuk mencari file ataupun directory. Syntax : $ find /path [option]

Page 7: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

7

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

Contoh : debian:/home/rohman# find -name tkj*

./tkj

grep Perintah ini berguna untuk pencarian data di dalam file, penggunaan grep akan lebih mengefisienkan waktu ketimbang harus membaca satu persatu Syntax : $ grep [option] "data" file

Contoh : debian:/home/rohman# grep "ini" test

ini hanya sebuah test dari output redirection baris ini tambahan dari yang lama... debian:/home/rohman#

ln Kegunaan perintah ini adalah untuk membuat link dari satu file/directori ke file/directori lain Syntax : $ ln s

/path/to/source target

Contoh : debian:/home/rohman# ln s

test uji debian:/home/rohman# ls l

total 2 rwrr1

sensei sensei 102 Nov 9 14:11 test

lrwxrwxrwx 1 sensei sensei 4 Nov 10 03:21 uji >

test

debian:/home/rohman#

Dari contoh dapat dilihat bahwa file uji adalah merupakan link dari file test locate. Perintah ini digunakan untuk mengetahui dimana letaknya sebuah file atau directori. Fungsinya kurang lebih sama dengan find, bedanya locate menggunakan sebuah database (biasanya terletak di var/lib/locatedb ) yang dapat di update menggunakan perintah updatedb. Syntax : # locate <something>

Contoh : debian:/home/rohman# locate uji

/home/rohman/uji

debian:/home/rohman# mkdir Perintah mkdir ekivalen dengan md (make directory) pada DOS yang berguna untuk membuat sebuah directory. Syntax : $ mkdir <namadir>

mv Perintah ini mirip dengan perintah move pada DOS yang berguna untuk memindahkan file dari satu directory ke directory lainnya, atau juga dapat digunakan sebagai pengganti nama file (ren/rename pada DOS) Syntax :

Page 8: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

8

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

$ mv file1 file2

rm dan rmdir Perintah rm adalah perintah untuk menghapus file. Untuk directory dapat digunakan rmdir Syntax : $ rm <namafile>

$ rmdir <namadirectori>

mount Setiap device dalam linux agar dapat diakses harus terlebih dahulu dimount atau dikaitkan. Syntax : # mount [option] /dev/<devicefile> /path/to/mountdir

Contoh : # mount /dev/hda1 /media/disk

ps Perintah ini digunakan untuk melihat setiap proses yang dijalankan di dalam mesin beserta nomor prosesnya. Syntax : $ ps [option]

kill Perintah kill (mematikan) sesuai namanya adalah berfungsi untuk mengirimkan signal ke suatu proses. Sehingga bisa memerintahkan apakah suatu proses ditunda, dihentikan atau dilanjutkan. Tetapi paling sering digunakan untuk mematikan proses yang sedang berjalan. Syntax : $ kill <nomorprosesnya>

adduser, passwd dan userdel Perintah adduser dan userdel adalah filefile untuk administrasi user. adduser digunakan untuk menambahkan user pada suatu mesin. Kemudian setelah ditambahkan ditentukan password user yang baru tersebut dengan perintah passwd. Sedangkan userdel digunakan untuk menghapus user di mesin. Untuk menjalankan perintahperintah ini diperlukan root priviledge. Syntax : # adduser <namauser>

# passwd <namauser>

# userdel [r]

<namauser>

Cal

Untuk menampilkan calendar rohman@debian:~$ cal

November 2010

Su Mo Tu We Th Fr Sa

1 2 3 4 5 6

7 8 9 10 11 12 13

14 15 16 17 18 19 20

21 22 23 24 25 26 27

Page 9: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

9

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

28 29 30

rohman@debian:~$

du

untuk menampilkan kapasitas oleh direktori tertentu, tambahkan opsi –k

agar ditampilkan dalam satuan kb (kilobyte).

contoh:

# du –k

clear Membersihkan layar

uname Menampilkan informasi sistem operasi yang digunakan pada system

Shutting down. Men shut down Linux dapat dilakukan dengan berbagai cara. Tetapi proses sebenarnya adalah mengirim sinyal pada semua proses untuk menghentikan kegiatannya (contoh: menyimpan dan menutup semua file). Cara pertama adalah dengan perintah shutdown # shutdown –t time time disini adalah waktu untuk menghentikan sistem. Warning message adalah pesan yang dikeluarkan pada terminal sebelum shut down. Agar shutdown secepatnya time disini kita isi ‘now’. –r bisa kita tambahkan untuk mereboot setelah shutdown. Perintah halt dapat digunakan untuk menshutdown secepatnya tanpa pesan apapun. Halt berguna pada saat untuk menshutdown dan mematikan linuxbox kita. Jangan menekan tombol power sebelum terdapat pesan : Power Down . Three Finger Salute (ctrlaltdel) juga dapat mereboot linuxbox secepatnya.

APLIKASI DASAR Seperti juga pada MS Windows, untuk Linux maupun semua varian UNIX terdapat editor file yang dinamakan vi atau vim (vi improved with syntax color highlighting). Selain vi terdapat program editor lain yang lebih mudah pemakaiannya serperti pico, joe, jove, mc (midnight commander), dll. Pada bab ini, akan dikenalkan bagaimana menggunakan editor vi, joe, pico dan mc. Vim merupakan pengembangan dari editor vi yang mempunyai keunggulan dalam penggunaan warna. Vi merupakan editor yang paling terkenal di dunia UNIX. Vi ialah kepanjangan dari "Visual" editor. Vim mendukung penggunaan warna untuk menandakan kode program dan juga penanda teks seperti penggunaan huruf normal, tebal maupun cetak miring. Untuk menjalan perintah vi, kita gunakan sintaks sbb : vi <nama_file>

Status vi Editor vi mempunyai 3 mode, yaitu : command mode : untuk menggunakannya tekan ESC terlebih dahulu. input mode : dengan mengetikkan perintahperintah yang spesifik, seperti a I o 0 dan

diakhiri dengan ESC atau dengan interrupt. line mode : suatu keadaan setelah ada proses input : ?, /, !

Page 10: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

10

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

Notasi yang digunakan CTRL-c, CTRL adalah tombol control pada keyboard, sehingga CTRLc berarti "control c". CR (Carriage Return) ialah tombol enter.

Figure 2 Perintah Vi untuk manipulasi file

Figure 3 Perintah Vi untuk pergerakan cursor

Page 11: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

11

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

Figure 4 Perintah Vi untuk penghapusan

Figure 5 Perintah cari dan ganti

Figure 6 Perintah lainnya

Pico / nano Pico adalah teks editor jenis lain yang berdasarkan pada program compose email Pine. Navigasi untuk perintahnya diletakkan di bawah dari layar. Semua karakter yang diketik langsung disisipkan ke dalam teks. Perintah untuk menjalankan editor pico adalah sbb : pico <nama file>

Page 12: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

12

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

KONFIGURASI DNS SERVER

Dasar Teori

DNS (Domain Name System) adalah system penamaan computer dari IP Address ke bentuk

domain/nama, karena pada dasarnya alamat masing-masing computer ditentukan dengan IP

Address (Alamat Internet Protokol). Sedangkan fungsi DNS Server itu sendiri adalah

merubah/mentranslasikan nama computer (domain) ke IP Address, dan dari IP Address ke

nama computer. Secara sederhana contoh ict-smk.net mewakili computer dengan alamat IP :

180.246.228.204. Kita tahu di dunia ini banyak sekali computer yang terhubung dengan

internet, jutaan computer. Tentunya kita tidak mungkin mengakses google.com dengan

mengingat-ingat IP Addressnya, kemudian mengetiknya di web browser : http:// 64.233.189.104

atau mau mengunjungi facebook dengan alamat http:// 69.63.189.11. dan Bagaimana kalau kita

ingin menghubungi situs yang lain??

Agar memudahkan kita menghubungi computer-kompouter did internet, kita dimudahkan

dengan menggunakan DNS (Domain Name System) yaitu pengalamatan computer dengan

system nama. Sebagai contoh computer dengan IP Address: 180.246.228.204 memiliki nama

ict-smk.net.

Komponen Kerja DNS

Untuk memahami cara kerja DNS, terlebih dahulu harus dipahami tentang komponen yang

bekerja di dalamnya.

Keterangan :

Cache : media penyimpanan sementara

Resolver : bagian dari program aplikasi yang berfungsi menjawab pertanyaan tentang

domain (local DNS)

User Program : misalnya outlook express (email client), Mozilla Firefox, Internet Explorer, yaitu

aplikasi yang membutuhkan penerjemahan domain computer yang dihubungi.

LOCALHOST

Resolver

User

Program/

Client

Foreign

Name

server

Cache

Page 13: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

13

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

Cara kerja DNS

Ketika aplikasi client/user program ingin mengakses ict-smk.net. proses yang terjadi agar user

dapat menghubungi computer ict-smk.net adalah:

Broswer diarahkan ke http://ict-smk.net

1. DNS client menghubungi DNS Server local untuk mendapat IP Address dari ict-smk.net

2. DNS server local memeriksa cache-nya, jika akses tersebut sudah pernah dilakukan

sebelumnya, maka DNS server local akan mengambil IP Address ict-smk.net

3. Jika dalam data cache tidak ditemukan informasi yang dicari, maka kemudian DNS Server

local akan mengirimkan message failure (pesan gagal) kepada client bahwa IP Addres dari

alamat yang diminta tidak ditemukan.

4. Kemudian client melakukan request kepada DNS Server tertinggi yaitu ‘.’ (dot) atau root

server. Dan hasilnya akan dikembalikan lagi ke client.

5. Jika tidak ditemukan lagi, maka client akan menghubungi DNS server .net (top level

Domain) hasilnya akan dikembalikan lagi ke client

6. Kemudian jika belum dapat ditemukan, client akan menghubungi DNS server ict-smk.net.

7. DNS Server ict-smk.net memberikan IP Address dari domain ict-smk.net

8. IP Address tersebut kemudian dikirimkan kembali ke DNS server local untuk diberikan

kepada browser dan kemudian dicatat dalam data cache DNS server local.

9. Browser mengarah ke IP Address yang dimaksud untuk mengakses computer pada IP

Address.

10. Sehingga User sekarang dapat mengaksdes ict-smk.net.

Struktur Hierarki DNS

DNS Mengatur proses penamaan computer secara hierarki dalam struktur pohon (tree).

Struktur tersebut terbentuk dari sebuah node yang memiliki subnode, masing-masing subnode

memiliki lagi subnode di bawahnya dan begitu seterusya. Node-node tersebut diberi label

sehingga disebut subdomain.

Domain ditentukan berdasarkan tingkatan kemampuan yang ada di struktur hierarki yang

disebut dengan level. Level paling atas di hierarki disebut dengan Root Domain. Root domain di

ekpresikan dengan lambing ‘.’ (dot).

Level kedua setelah root domain disebut Top Level Domain yaitu semua node yang tepat

berada di bawah root.

com : organisasi comersial

edu : Institusi Pendidikan atau Universitas

org : Organisasi Non profit

net : network (backbone internet)

gov : Organisasi pemerintahan non militer

mil : ogranisasi pemerintah militer

num : no. telepon

arpa : reverse DNS

Page 14: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

14

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

File konfigurasi

• named.conf (/etc/bind/named.conf)

named.conf merupakan file yang berisikan inisialisasi DNS Server. Sebaiknya DNS server

suatu jaringan terdiri dari satu computer. Jika primary DNS server terganggu maka

secondary DNS server dapat menggantikan tugas dari primary DNS server.

Berikut contoh konfigurasi file named.conf :

// This is the primary configuration file for the BIND DNS server named.

//

// Please read /usr/share/doc/bind9/README.Debian.gz for information on the

// structure of BIND configuration files in Debian, *BEFORE* you customize

// this configuration file.

//

// If you are just adding zones, please do that in /etc/bind/named.conf.local

include "/etc/bind/named.conf.options";

// prime the server with knowledge of the root servers

zone "." {

type hint;

file "/etc/bind/db.root";

};

// be authoritative for the localhost forward and reverse zones, and for

// broadcast zones as per RFC 1912

// prime the server with knowledge of the root servers

zone "." {

type hint;

file "/etc/bind/db.root";

};

// be authoritative for the localhost forward and reverse zones, and for

// broadcast zones as per RFC 1912

zone "localhost" {

type master;

file "/etc/bind/db.local";

};

zone "rohman.sch.id" {

type master;

file "/etc/bind/rohman.sch.id.zone";

};

zone "smk.sch.id" {

type master;

file "/etc/bind/smk.sch.id.zone";

};

zone "127.in-addr.arpa" {

type master;

file "/etc/bind/db.127";

};

Page 15: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

15

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

zone "0.in-addr.arpa" {

type master;

file "/etc/bind/db.0";

};

zone "255.in-addr.arpa" {

type master;

file "/etc/bind/db.255";

};

include "/etc/bind/named.conf.local";

• Zona File (/etc/bind/nama_file_zona)

File ini merupakan file text biasa yang berisi informasi yang berkaitan dengan suatu domain.

Dalam zona file tersedia satu set informasi untuk setiap domain. Set informasi yang

dimaksud bisa berupa IP Address, nama alias domain host tersebut, bertanggung jawab

untuk domain tersebut dan lain sebagainya.

Masing-masing informasi ini dikenal dengan istilah resource record

- Start Of Authority (SOA)

SOA digunakan untuk mendeklarasikan hostname yang merupakan awal dari suatu

zona. Format dasar SOA adalah :

[zone] IN SOA orogon contact (

Serial

Refresh

Retry

Expire

Minimum TTL

)

Keterangan :

1 Zone Deklarasi nama zona (bila diawali dengan karakter

‘@’ berarti type master merupakan asal dari zona

tersebut)

2 Origin Deklarasi hotname yang merupakan primary

master server untuk domain

3 Contact Deklarasi email address administrator penanggung

jawab domain

4 Refresh Selang waktu (detik) yang diperlukan secondary

server untuk memeriksa perubahan zona file pada

primary server

5 Retry Berapa lapa secondary server menunggu untuk

mengulang pengcekan terhadap primary server

apabila primary server tidak memberikan respon

saat proses refresh.

6 Expire Berapa lama zona file dipertahankan secondary

server apabila secondary server tidak dapat

Page 16: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

16

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

melakukan refresh

7 Minimum Nilai default Time to Live untuk semua resource

record pada zona file

Komponen lain yang terdapat dalam zona file :

1 Name server record (NS) Identifikasi authoritative server suatu zona

(sebaiknya lebih dari satu sebagai tindakan

pencegahan apabila primary server tidak dapat

diakses oleh secondary server)

2 Address Record (A) Memetakan hostname ke IP Address

3 Mail Exchanger record

(MX)

Berfungsi untuk mengarahkan mail untuk suatu

host ataupun suatu domain ke host yang berfungsi

sebagai mail server

4 Canonical Name (CNAME) Mendefinisikan alias (nickname) suatu host

5 Pointer record (PTR) Mendefinisikan reverse address suatu hostname

Berikut adalah salah contoh file zona untuk domain smk.sch.id

(/etc/bind/smk.sch.id.zone): ;

; BIND data file for local loopback interface

;

$TTL 604800

@ IN SOA ns.smk.sch.id. root.smk.sch.id. (

2 ; Serial

604800 ; Refresh

86400 ; Retry

2419200 ; Expire

604800 ) ; Negative Cache TTL

;

IN NS ns.smk.sch.id.

ns.smk.sch.id. IN A 192.168.7.1

smk.sch.id. IN A 192.168.7.1

www IN CNAME smk.sch.id.

ftp IN CNAME smk.sch.id.

pop IN A 192.168.7.1

Page 17: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

17

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

• CONTOH KASUS

DNS SERVER

ns.smk.sch.id

ns.sakura.sch.id

192.168.7.1

smk.sch.id

(web server utama)

192.168.7.2

tkj.smk.sch.id

192.168.7.3

Client

192.168.7.21

oto.smk.sch.id

192.168.7.4

sakura.sch.id

192.168.7.5

Diagram jaringan yang akan dibangun

LANGKAH-LANGKAH KONFIGURASI

1) DNS server (ns.smk.sch.id)

a) Setting IP Address

IP Address : 192.168.7.1

Netmask : 255.255.255.0

DNS Server : 192.168.7.1

Setting IP Address dengan mengeksekusi perintah berikut :

# nano /etc/network/interfaces

Tambahkan baris code berikut:

iface eth1 inet static

address 192.168.7.1

netmask 255.255.255.0

gateway 192.168.7.5

Page 18: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

18

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

setting Default DNS Server ke alamat IP : 192.168.7.1 (yaitu alamat IP dirinya sendiri):

# nano /etc/resolv.conf

Tambahkan baris code berikut :

nameserver 192.168.7.1

setelah itu restart kartu jaringan agar konfigurasi diaplikasikan, dengan perintah :

# /etc/init.d/networking restart

b) Mengkonfigurasi file : /etc/bind/named.conf

Pastikan DNS server Bind9 sudah terinstall, jika belum eksekusi perintah :

# apt-get install bind9

Edit file named.conf dengan menggunakan perintah:

# nano /etc/bind/named.conf

Maka akan tampil isi dari named.conf

Tambahkan code berikut: zone "sakura.sch.id" {

type master;

file "/etc/bind/sakura.sch.id.zone";

};

zone "smk.sch.id" {

type master;

file "/etc/bind/smk.sch.id.zone";

};

Kita dapat mengetik code di atas dengan cara mengkopi code yang sudah ada, hanya

mengganti nama domain dan nama file zone saja. Tambahkan kode di atas, sehingga

menjadi :

// This is the primary configuration file for the BIND DNS server named.

//

// Please read /usr/share/doc/bind9/README.Debian.gz for information on the

// structure of BIND configuration files in Debian, *BEFORE* you customize

// this configuration file.

//

// If you are just adding zones, please do that in /etc/bind/named.conf.local

include "/etc/bind/named.conf.options";

// prime the server with knowledge of the root servers

zone "." {

type hint;

file "/etc/bind/db.root";

};

// be authoritative for the localhost forward and reverse zones, and for

// broadcast zones as per RFC 1912

// prime the server with knowledge of the root servers

zone "." {

type hint;

file "/etc/bind/db.root";

};

// be authoritative for the localhost forward and reverse zones, and for

Page 19: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

19

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

// broadcast zones as per RFC 1912

zone "localhost" {

type master;

file "/etc/bind/db.local";

};

zone "sakura.sch.id" {

type master;

file "/etc/bind/sakura.sch.id.zone";

};

zone "smk.sch.id" {

type master;

file "/etc/bind/smk.sch.id.zone";

};

zone "127.in-addr.arpa" {

type master;

file "/etc/bind/db.127";

};

zone "0.in-addr.arpa" {

type master;

file "/etc/bind/db.0";

};

zone "255.in-addr.arpa" {

type master;

file "/etc/bind/db.255";

};

include "/etc/bind/named.conf.local";

c) Konfigurasi file: /etc/bind/smk.sch.id.zone

Ketikkan perintah : # nano /etc/bind/smk.sch.id.zone

Edit file tersebut sehingga menjadi seperti berikut :

; BIND data file for local loopback interface

;

$TTL 604800

@ IN SOA ns.smk.sch.id. root.smk.sch.id. (

2 ; Serial

604800 ; Refresh

86400 ; Retry

2419200 ; Expire

604800 ) ; Negative Cache TTL

;

IN NS ns.smk.sch.id.

IN A 192.168.7.2

ns IN A 192.168.7.1

tkj IN A 192.168.7.3

oto IN A 192.168.7.4

Page 20: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

20

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

File Konfigurasi: /etc/bind/sakura.sch.id.zone

; BIND data file for local loopback interface

;

$TTL 604800

@ IN SOA ns.sakura.sch.id. root.smk.sch.id. (

2 ; Serial

604800 ; Refresh

86400 ; Retry

2419200 ; Expire

604800 ) ; Negative Cache TTL

;

IN NS ns.sakura.sch.id.

IN A 192.168.7.3

ns IN A 192.168.7.1

2) KONFIGURASI COMPUTER WEB SERVER 1 (smk.sch.id)

IP Address : 192.168.7.2

Subnetmask : 255.255.255.0

DNS server : 192.168.7.1

3) KONFIGURASI COMPUTER WEB SERVER 2 (tkj.smk.sch.id)

IP Address : 192.168.7.3

Subnetmask : 255.255.255.0

DNS server : 192.168.7.1

4) KONFIGURASI COMPUTER WEB SERVER 3 (oto.smk.sch.id)

IP Address : 192.168.7.4

Subnetmask : 255.255.255.0

DNS server : 192.168.7.1

5) KONFIGURASI COMPUTER WEB SERVER 4 (sakura.sch.id)

IP Address : 192.168.7.4

Subnetmask : 255.255.255.0

DNS server : 192.168.7.1

6) KONFIGURASI COMPUTER CLIENT

IP Address : 192.168.7.21

Subnetmask : 255.255.255.0

DNS server : 192.168.7.1

7) RESTART DAEMON BIND9 # /etc/init.d/bind9 restart

Page 21: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

21

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

MENGKONFIGURASI WEB SERVER

Dasar Teori

Setiap kali sebuah web browser berhubungan dengan suatu situs web, sebetulnya ia

berhubungan dengan sebuah web server. Server tersebut mendengarkan (listen) request pada

jaringan dan memberikan jawaban berupa data tertentu kepada client atau pengirim

permintaan. Web server atau HTTP adalah sebuah program yang melayani koneksi HTTP

(Hyper Text Transfer Protocol) yang bekerja di port 80 (secara default, namun kita bisa rubah

sesuai keinginan). Web server bekerja berdasarkan request-response, yaitu ketika HTTP client

(web browser) membangun koneksi dengan mengirimkan request (permintaan) kepada server,

maka server akan merespon dengan mengelola permintaan tersebut kemudian mengirimkan

data sesuai yang diminta oleh HTTP Client.

HTTP merupakan protocol yang bekerja pada lapisan aplikasi (application layer) dan secara

sederhana dapat didefinisikan sebagai sekumpulan aturan untuk tukar menukar data pada

world wide web (www).

Program yang kita gunakan adalah apache2, untuk instalasi kita dapat menggunakan perintah:

# apt-get install apache2

Untuk mematikan/menghidupkan daemon apache2, gunakan perintah

Untuk merestart daemon :

# /etc/init.d/apache2 restart

Menghentikan :

# /etc/init.d/apache2 stop (stop)

Memulai :

# /etc/init.d/apache2 start

File Konfigurasi

Informasi untuk konfigurasi apache2 disimpan dalam sebuah file konfigurasi yaitu apache.conf

letaknya di : /etc/apache2/apache2.conf.

Membuat web server dan Virtual Host

Virtual Host adalah membuat lebih dari satu web site pada satu mesin computer yang sama.

Dengan kata lain, satu alamat IP Address memuat beberapa web site yang berbeda. Misalkan

kita akan membuat alamat web site : tkj-proactive.edu, temon.com, tukul.com, shop-babat.com,

dolanan-wae.net dalam satu computer dengan tampilan web yang berbeda-beda sesuai dengan

domain yang diakses oleh client.

� Edit file apache2.conf

# nano /etc/apache2/apache2.conf

Dapat kita lihat disana tertera kode :

Include /etc/apache2/conf.d/

# Include the virtual host configurations:

Include /etc/apache2/sites-enabled/

Page 22: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

22

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

Artinya, file konfigurasi apache2.conf juga mengambil konfigurasi dari file lain yang

berada di direktori sites-enabled, tepatnya yaitu file :

/etc/apache2/sites-enabled/000-default

Sehingga nantinya kita dapat membuat virtual host dengan cara mengedit file tersebut

(/etc/apache2/sites-enabled/000-default)

� Edit file 000-default

# nano /etc/apache2/sites-enabled/000-default

Masukkan code berikut :

<VirtualHost *:80>

ServerName tkj-proactive.edu

DocumentRoot “/var/www/tkj”

</VirtualHost>

<VirtualHost *:80>

ServerName temon.com

DocumentRoot “/var/www/temon”

</VirtualHost>

<VirtualHost *:80>

ServerName tukul.com

DocumentRoot “/var/www/tukul”

</VirtualHost>

<VirtualHost *:80>

ServerName shop-babat.com

DocumentRoot “/var/www/shop”

</VirtualHost>

<VirtualHost *:80>

ServerName dolanan-wae.net

DocumentRoot “/var/www/dolanan”

</VirtualHost>

� Buatlah dokumen index.html sebagai content website tkj-proactive.edu yang

diletakkan di /var/www/tkj

# nano /var/www/tkj/index.html

Ketik code berikut :

<html><body><head><title>Website tkj-proactive.edu</title></head>

<h1> Thank You buanget Rek atas visit-nya di tkj-

proactive.edu</h1>

</body>

</html>

Page 23: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

23

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

� Buatlah dokumen index.html sebagai content website temon.com yang diletakkan

di /var/www/temon

# nano /var/www/temon/index.html

Ketik code berikut :

<html><body><head><title>Website temon.com</title></head>

<h1> Thank You buanget Rek atas visit-nya di temon.com</h1>

</body>

</html>

� Buatlah dokumen index.html sebagai content website tukul.com yang diletakkan

di /var/www/tukul

# nano /var/www/tukul/index.html

Ketik code berikut :

<html><body><head><title>Website tukul.com</title></head>

<h1> Thank You buanget Rek atas visit-nya di tukul.com</h1>

</body>

</html>

� Buatlah dokumen index.html sebagai content website shop-babat.com yang

diletakkan di /var/www/temon

# nano /var/www/shop/index.html

Ketik code berikut :

<html><body><head><title>Website shop-babat.com</title></head>

<h1> Thank You buanget Rek atas visit-nya di shop-babat.com</h1>

</body>

</html>

� Buatlah dokumen index.html sebagai content website dolanan-wae.net yang

diletakkan di /var/www/dolanan

# nano /var/www/shop/index.html

Ketik code berikut :

<html><body><head><title>Website tkj-proactive.edu</title></head>

<h1> Thank You buanget Rek atas visit-nya di dolanan-wae.net</h1>

</body>

</html>

� Restart Apache2

# /etc/init.d/apache2 restart

Page 24: MEMBANGUN DNS DAN WEB SERVER DENGAN DEBIAN

24

Me

mb

an

gu

n D

NS

Se

rve

r d

an

We

b S

erv

er

de

ng

an

De

bia

n L

inu

x::

: IC

T SM

K M

uh

am

ma

diy

ah

5 B

ab

at

~Special Thanks~

� http://distrowatch.com

� Penyusun Buku : Modul Praktikum Jaringan Komputer Sistem Informasi dan Jaringan

Komputer Universitas Islam Indonesia

� Debian Indonesia di : http://debianindonesia.org

� Mr. M. Charis, S.Pd, selaku Guru besar-Q (yang ngajar AQ Komputer doloe)

� Mr. Zamroni Masjid Z., S.Pd selaku Kaprodi yang selalu mensupport untuk maju!

~Persembahan buat!~

� Mother (alm), may you are fine there….

� Father… that always open the door for me ^_^!

� My honey…. That always support me to understanding Linux System

� My Brothers…. That support me always….!

� Siswa-Siswi TKJ SMK Muhammadiyah 5 Babat yg lucu-lucu, pinter-pinter and yg ndua-bleg!

~ Pesan ~

� “Ilmu tidak akan pernah habis untuk di-eksplorasi, walau kita habiskan seluruh umur kita

untuk menuntut ilmu”

� Tanamkan dalam hati bahwa dirimu amat suka membaca, dan suka mempelajari sesuatu

(jiwa pelajar).

~Permintaan Maaf~ � Everyone yg terselip file2….