membangun+server+linux 1

64
Admin Server Linux . . . . . . . 1 Membangun SERVER LINUX DEBIAN 6.0 ( SQUEEZE ) Kompetensi ke-17 / Kls.XII TKJ TEKNIK KOMPUTER JARINGAN SMK NEGERI 1 TALAGA Jl. Sekolah No. 20 Talagakulon, Kec. Talaga, Kab. Majalengka 45463 Tlp. 0233-3316613 http://www.smkn1talaga.net/web .::. e-mail : [email protected]

Upload: nooopris

Post on 31-Dec-2014

108 views

Category:

Documents


0 download

DESCRIPTION

Server

TRANSCRIPT

Page 1: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 1

Membangun SERVER LINUX

DEBIAN 6.0 ( SQUEEZE )

Kompetensi ke-17 / Kls.XII TKJ

TEKNIK KOMPUTER JARINGANSMK NEGERI 1 TALAGA

Jl. Sekolah No. 20 Talagakulon, Kec. Talaga, Kab. Majalengka 45463 Tlp. 0233-3316613

http://www.smkn1talaga.net/web .::. e-mail : [email protected]

Page 2: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 2

DAFTAR ISI

1. PENDAHULUAN .......................................................................................................................31.1. Komputer Server...................................................................................................................41.2. Fitur–Fitur Server..................................................................................................................71.3. Spesifikasi Hardware............................................................................................................81.4. Spesifikasi Software............................................................................................................12

2. SISTEM OPERASI SERVER....................................................................................................132.1. Instalasi Debian 6.0 (Squeeze)............................................................................................152.2. Perintah Linux.....................................................................................................................302.3. Port dalam Server................................................................................................................342.4. Konfigurasi NIC / LAN Card.............................................................................................35

3. APLIKASI SERVER..................................................................................................................373.1. dhcp3-server (DHCP).........................................................................................................373.2. bind9 (DNS)........................................................................................................................393.3. apache2 (Web / HTTP).......................................................................................................433.4. postfix (Mail)......................................................................................................................463.5. proftpd (FTP)......................................................................................................................523.6. samba (File & Printer Sharing)...........................................................................................543.7. mysql-server (Database).....................................................................................................573.8. squid (Proxy).......................................................................................................................60

4. KEAMANAN SERVER.............................................................................................................604.1. Username dan Password.....................................................................................................604.2. Web / https..........................................................................................................................614.3. htacces.................................................................................................................................614.4. ssh.......................................................................................................................................614.5. ssl........................................................................................................................................61

5. MONITORING / REMOTE SERVER.......................................................................................615.1. Monitoring Server...............................................................................................................615.2. Remote Server.....................................................................................................................61

Page 3: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 3

1. PENDAHULUAN

Di era Teknologi Informasi sekarang ini manusia dituntut untuk mendapatkan

segala informasi dengan cepat dan akurat. Selain itu juga harus dapat menyimpan

informasi / data pribadi yang dapat diakses dengan cepat pula. Dengan kata lain

manusia membutuhkan informasi yang cepat dan akurat.

Informasi /data (baik data pribadi, data kelompok, data perusahaan, ataupun data-

data lainnya) sebenarnya dapat disimpan dalam dua cara yaitu :

1. Disimpan pada tempat Dinamis (yang dapat bergerak dan dapat dibawa kemana-

mana) seperti Buku Agenda, PDA, Laptop, dan lain-lain. Hal ini berarti bahwa kita

dapat mengakses dan menyimpan data kapan dan dimana pun kita

memerlukannya, akan tetapi resikonya kita harus selalu membawa perangkat

penyimpan data tersebut.

2. Disimpan pada tempat Statis (berada pada satu tempat dan tidak bisa dibawa

kemana-mana) seperti Komputer server (Server Internet). Hal ini berarti kita tidak

perlu lagi membawa perangkat penyimpanan data tersebut karena kita dapat

mengkses dan menyimpan data kapan dan dimanapun berada, dengan catatan

ada jaringan internet dan perangkat untuk mengkoneksikan ke internetnya.

Dari dua tempat penyimpanan tersebut tentunya yang lebih praktis digunakan setiap

inidividu sekarang ini adalah cara ke dua (cara statis) karena cukup membawa satu

perangkat saja (Handphone yang sudah mendukung internet browser) maka sudah

Gbr. Penggunaan Server

Page 4: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 4

dapat menyimpan dan mengambil data yang diperlukannya saat bekerja atau

berbisnis.

Internet Banking juga sistemnya sama seperti cara ke dua tadi yaitu menggunakan

Komputer Server yang dapat diakses melalui internet sehingga nasaabah dapat

melakukan transaksi dimanapun berada, dan masih banyak contoh lainnya yang

menggunakan cara ke dua karena ke praktisannya.

1.1. Komputer Server

Komputer server sebenarnya sama seperti komputer-komputer lainnya

yang biasa digunakan dalam pekerjaan sehari-hari. Perbedaannya ada pada

Kecepatan Proses, Kapasitas Penyimpanan, dan Ketahanan perangkatnya.

Komputer server harus memiliki kecepatan premrosesan yang sangat tinggi

karena akan diakses oleh jutaan pengguna dimanapun yang mungkin secara

bersamaan mengaksesnya. Selain itu juga harus memiliki kapasitas penyimpanan

yang sangat besar karena akan digunakan sebagai tempat penyimpanan data

oleh jutaan pengguna dimanapun berada, dan yang terakhir komputer server

harus memiliki ketahanan dalam pengoperasian yang terus-menerus (nonstop)

karena juataan pengguna akan menggunakan data tersebut kapan pun saat

mereka membutuhkannya (baik itu pagi, siang, atau malam) selama 24 jam.

Gbr. Server Lokal

Page 5: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 5

Salah satu contoh komputer server adalah server lokal pada suatu instansi

(perusahaan). Masing-masing divisi/bagian di perusahaan tersebut dapat

mengambil dan menyimpan data perusahaan pada server lokal. Data tersebut

dapat digunakan oleh divisi lain yang membutuhkannya sehingga antar divisi jika

membutuhkan data tidak perlu mengantarkan ke divisi lain tetapi cukup

mengakses pada komputer di divisinya saja. Selain itu, cabang perusahan yang

lokasinya di luar kota juga dapat mengaksesnya melalui internet.

Contoh lain yang lebih besar lagi adalah server Google, Yahoo, dan server-

server lainnya. Kedua server tersebut tidak pernah berhenti beroperasi dan

kalaupun ada perawatan maka sebelum server utama dihentikan, server

cadangan sudah beroperasi terlebih dahulu sehinnga pelayanan data tidak

terhenti dan seolah-olah server tersebut tak pernah dimatikan.

Gbr. Server Google

Page 6: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 6

Gbr. Server Yahoo

Komputer server juga harus memiliki karakter Availibility (Ketersediaan) dan Scalability (Ketercakupan). Availibility maksudnya adalah : sebuah server harus mampu selalu tersedia

“melayani” user/client secara terus menerus, yang di-istilahkan dengan 24-jam x

7 hari seminggu. Server juga seharusnya hanya memiliki sedikit “Fault-Tolerant”,

yaitu gangguan yang menyebabkan downtime (kegagalan sistem server). Jadi

dapat disimpulkan karakter availibility merupakan kemampuan server untuk

merespon segala hal permintaan user kapan-pun waktunya.

Definisi Scalability adalah : sebuah server harus dapat ditingkatkan

kemampuannya, yaitu dari sisi performa, fungsi & penambahan jumlah klien.

Scalability dibagi menjadi dua, yaitu :

• Scale-Up, yaitu kemampuan server untuk di-upgrade komponen &

periferalnya (misal : Processor atau RAM) sehingga performa-nya secara

keseluruhan akan meningkat dan waktu penggunaan (life-cyle) bisa lebih

lama.

• Scale-Out, yaitu kemampuan unit server untuk ditambah (misal dari satu

menjadi tiga unit) agar beban kerja pemrosesannya dapat dibagi rata dan

lebih optimal. Misalnya : sebuah perusahaan membuat memisahkan fungsi

web e-commerce pada server (Web Server) terpisah dari server database-nya.

Salah satu implementasi dari Scale-Out adalah pada server rackmount dan

blade system yang akan diterangkan selanjutnya.

Page 7: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 7

1.2. Fitur–Fitur Server

Sebuah server biasanya memiliki dan menyediakan fitur-fitur yang

diperlukan oleh client. Fitur ini bisa disediakan hanya 1 saja atau bahkan bisa

lebih dari satu. Hal ini tergantung pada kebutuhan dan ketersediaan infrastruktur

yang ada.

Secara umum setiap server memiliki fitur-fitur yang sama akan tetapi

fitur-fitur itu memiliki kelebihan masing-masing tergantung pada sistem operasi

server yang digunakannya. Fitur yang umum terdapat pada server adalah

sebagai berikut :

a. DHCP (Dynamic Host Configuration Protocol)

Fitur ini menyediakan pemberian no IP (Internet Protocol) secara otomatis

untuk setiap Client yang terhubung ke server. Nomor ini diberikan pada saat

pertama kali komputer client tersebut dinyalakan lalu terkoneksi ke server.

Setiap no IP yang diberikan diawali dari nomor terkecil dan tidak akan ada

nomor yang sama karena jika nomor tersebut telah digunakan, maka

diberikan nomor baru untuk client yang baru terkoneksi (baru nyala).

b. DNS (Domain Name System)

Dengan layanan DNS maka client tidak harus menghafalkan setiap IP address

server yang akan diakses. Client hanya menuliskan Address nya untuk dapat

mengakses server karena fungsi dari DNS ini adalah menerjemahkan no IP ke

Address dan sebaliknya menerjemahkan Address ke no IP kembali.

c. HTTP (Hypertext Transfer Protocol)

Fitur ini berfungsi untuk menampilkan data/informasi berbasis web (data

HTML) dan biasanya disebut sebagai web server. Client dapat berbagi dan

menyimpan data di server dengan datanya berbasis web.

d. Mail

Server menyediakan layanan pengelolaan surat elektronik (email) dimana

client dapat berbagi informasi/data yang berbentuk surat elektronik. Client

dapat mengirim dan menerima surat dan dapat pula menyisipkan lampiran

file gambar, data, dan lainnya.

e. FTP (File Transfer Protocol)

Fitur ini menyediakan layanan untuk menyimpan dan mengambil informasi

berbentuk file dan dapat diakses dimana saja tanpa dibatasi oleh perbedaan

network / subnetting. Dengan demikian seseorang dapat barbagi data / file

langsung (file word, excel, software, dan lainnya), akan tetapi dapat

Page 8: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 8

memperkecil ukuran file yang akan dibaginya untuk mempercepat proses

transfer datanya yaitu dengan mengkompress data tersebut terlebih dahulu.

f. Sharing (File dan Printer)

Fitur ini mirip dengan FTP akan tetapi pada fitur ini setiap client yang akan

berbagi / share (file atau printer) harus terkoneksi dalam network / subnetting

yang sama. Jika berbeda subnet / network maka tidak bisa saling berbagi.

Setiap client dapat berbagi sebuah printer (mencetak data lewat printer) dari

mana saja (dari client mana saja).

g. Database

Client dapat menyimpan, mengambil, dan menampilkan database yang

diinginkan pada sebuah server dengan fitur ini dimanapun dia berada. Akan

tetapi database ini akan dapat diproses melalui aplikasi database yang

berbasis web.

h. Proxy

Fitur ini menyediakan layanan keamanan jaringan (firewall) dan akan

mengelola / mengatur / bahkan memproteksi client yang terkoneksi ke server.

Selain itu juga menyediakan layanan cache web / memori sementara untuk

menyimpan data-data web yang sering diakses oleh client pada rentang

waktu tertentu sehingga akan menghebat bandwidth.

1.3. Spesifikasi Hardware

Sebuah server yang bagus biasanya akan beroperasi / running 24 jam

nonstop tanpa henti, kecuali saat perawatan server, maka server akan dimatikan

sejenak tetapi server cadangan tetap berfungsi karena untuk melayani client

yang membutuhkan data dari server setiap saat. Dengan demikian server

tersebut secara hardware harus tahan terhadap panas, kerja yang multitasking

secara maksimal.

Oleh karena itu spesifikasi hardware dari sebuah server yang harus diperhatikan

adalah :

a. Motherboard harus memiliki Address dan Data Bus yang cukup besar yang

nantinya digunakan sebagai transfer data secara maksimal. Harus memiliki

socket memory (RAM) yang support besar kapasitasnya, juga harus support

processor yang tertinggi / tercepat pemrosesannya.

Page 9: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 9

Spesifikasi Tehnik :

– Processor Support : Up to 2 Intel Xeon processors 5500 or 5600 series – Chipset : Intel® 5500 chipset with Intel® I/O Controller Hub ICH10R– Memory : 8 DDR3 DIMM sockets (800/1066/1333 MHz)– Storage : 6 SATA ports (3 Gbps) via ICH10R – Integrated LAN : 2 Embedded dual Intel® Gigabit Ethernet Controllers– Integrated Graphics : 8 MB allocated to graphics– Harga : Rp. 3.589.000,-

b. Microprocessor / Processor harus memiliki kemampuan mengolah / memproses

data yang maksimal dan ditunjang dengan FSB yang maksimal pula sehingga

proses akan lebih maksimal.

Spesifikasi Tehnik : – Clock Speed : 3.46 GHz– c# of Cores : 6 Core– Memory Cache : 12 MB

–QPI / FSB : 6.4 GT/s– Socket Support : FCLGA1366

–Harga : US $1,663

Gbr. Motherboard INTEL-S5500BCR

Gbr. Processor INTEL Xeon 5600

Page 10: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 10

c. Memory (RAM) harus memiliki transfer data yang maksimal dan tentunya

memiliki kapasitas data yang maksimal pula.

Spesifikasi Tehnik :

–Clock Speed : 1333 MHz– Capacity : 2 GB / 4 GB / 8 GB / 16 GB

– Socket : DIMM (DDR3)– Pin : 240 pin

d. Harddisk harus memiliki putaran cylinder yang maksimal sehingga pembacaan

datanya pun akan maksimal.

Spesifikasi Tehnik :

–Model : Baracuda ST32000542AS

– Interface : SATA 3Gb/s

–Capacity : 2 TB

– Spin Speed : 5900 RPM– Price : Rp. 1.000.000,-

Gbr. Memory/RAM DDR 3

Gbr. Hard Disk SATA

Page 11: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 11

e. NIC / LAN Card sebagai sarana komunikasi server dengan client, harus

memiliki kecepatan hingga GigaByte karena akan banyak clien yang akan

koneksi ke server.

Spesifikasi Tehnik : – Model : Intel E10G41AT2

– Interface : PCI Express 2.0 x8

–Connectors : 1 x RJ45 – Speed : 10Gbps– Price : US$ 525

f. Power Supply harus tahan terhadap panas dan daya tinggi serta tahan

terhadap perubahan tegangan yang bisa naik / turun sehingga tidak

menggangu kerja Processor.

Spesifikasi Tehnik :

–Model : ULTRA ULT-LSP750

–Wattage : 750 W

– Form Fa ctor : ATX

– Input Voltage : 115V ~ 230V– Price : US$ 79.99

Gbr. LAN Card Gigabits

Gbr. Power Supply

Page 12: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 12

g. Pendingin / Heatsink harus memadai baik pendingin dalam komputer sendiri

maupun pendingin ruangan sehingga suhu pada komputer akan stabil dan

komputer akan bekerja dengan maksimal pula.

1.4. Spesifikasi Software

Software yang digunakan pada sebuah server tentunya harus memiliki spesifikasi

yang akan menghasilkan kerja server tersebut akan maksimal, dengan kata lain

tidak ada proses yang tertunda atau berputar-putar sehingga mengganggu kinerja

server. Adapun spesifikasi software bagi sebuah server agar mendapatkan kerja

maksimal adalah :

a. Operating System / Sistem Operasi harus dapat mengakses langsung ke titik

yang diperintahkan tanpa perantara / penerjemah proses lainnya.

b. Aplikasi server dan jaringan harus terbaru dan support untuk semua jenis

komputer client serta stabil.

c. Konfigurasi harus seefektif mungkin sehinnga tidak menggangu konfigurasi

lainnya saat konfiguri yang satu terganggu.

d. Mempunyai sistem keamanan (Security System) yang tinggi sehingga data

aman dan tidak dapat dirusak / dimodifikasi selain oleh yang memilikinya saja.

e. Memiliki antivirus yang baik.

Dari kesekian spesifikasi software yang disarankan untuk sebuah terdapat dua

pilihan software yang tersedia, yaitu yang menggunakan software private license

atau yang General Public License (GPL). Kedua pilihan tersebut tentunya memiliki

kelebihan masing-masing tergantung dari kebutuhannya. Akan tetapi secara

umum kelebihan terbesar terdapat pada software yang General Public License

(GPL) yang lebih dikenal dengan nama Linux. Hal ini disebabkan dalam OS

(Operating System) linux sudah terdapat semua aplikasi server yang dibutuhkan

dengan fitur-fitur yang sama seperti software private license. Selain itu karena

GPL maka tidak harus mengeluarkan biaya tambahan pada setiap softwarenya.

Page 13: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 13

2. SISTEM OPERASI SERVER

Karena server akan melayani banyak client, maka sistem operasi yang paling

efektif untuk sebuah server adalah sistem operasi yang mendukung jaringan,

multitasking (dapat mengerjakan beberapa operasi secara bersamaan), multiuser

(dapat diakses oleh banyak pengguna secara bersamaan), dan biasanya berbasis

text (karena perintahnya langsung diakses ke hardware tanpa banyak konversi

perintah seperti pada GUI sehingga akan menghemat RAM komputer). Selain itu juga

harus mendukung keamanan / security yang sangat ketat atau berlapis, serta dari

segi biaya tentu lebih murah.

Pilihan dari semua itu tentunya mengarah kepada Linux, dimana linux adalah

sistem operasi yang mendukung jaringan, multitasking, multiuser, support Server &

Desktop (text & GUI), keamanannya tinggi dan berlapis serta tentunya GPL (Lisensi

Publik) sehingga tidak perlu bayar lisensi.

Sistem operasi Linux ini digolongkan ke dalam 3 kelompok besar yaitu Debian,

Slackware, dan RedHat. Dari tiga kelompok besar ini kemudian berkembanglah

distro-distro linux lainnya yang dikembangkan sesuai dengan kebutuhannya,

diantaranya adalah :

1. Kelompok Debian : Debian, BackTrack, Damn Small Linux (DSL), Helix, Knoppix,

MEPIS, Ubuntu, Ultimate Edition, dan masih banyak lagi yang lainnya.

Ultimate Edition

Page 14: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 14

2. Kelompok Slackware : Slackware, SuSE, VectorLinux, Zenwalk, Kongoni, dan

masih banyak lagi yang lainnya.

3. Kelompok RedHat : RedHat, Mandrake, PCLinuxOS, Fedora, CentOS, Mandriva,

Caldera, dan masih banyak lagi yang lainnya.

Linux yang banyak digunakan sebagai sistem operasi server adalah kelompok

Redhat, diantaranya adalah Red Hat Enterprise Linux (RHEL) dan Fedora, tetapi

pada prinsipnya semua distro linux dapat dijadikan server.

Page 15: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 15

2.1. Instalasi Debian 6.0 (Squeeze)

Sebelum melakukan instalasi sistem operasi linux, yang harus

diperhatikan terlebih dahulu adalah pembagian partisi linux dimana partisi ini

harus dibuat didalam proses instalasinya. Partisi ini menggunakan sistem file

ext2, ext3, atau ext4 yang berbeda dengan sistem file di windows.

Partisi minimal yang harus ada didalam instalasi linux sebanyak dua

partisi yaitu partisi “ / “ (baca: root ) dan partisi “ swap “, dimana “ / “ adalah

partisi utama yang akan diisi dengan sistem linux dan partisi “ swap “ adalah

partisi yang difungsikan sebagai Virtual Memory dari sistem linux tersebut.

Fungsi Virtual Memory ini adalah sebagai memory tambahan bagi sistem linux

yang akan digunakan jika memory utama (RAM yang ada di Motherboard) sudah

penuh oleh sistem linux.

Partisi dalam sistem linux dibagi menjadi 2 macam yaitu partisi Primary

dan partisi Logical, dimana primary berjumlah maksimal 4 partisi sedangkan

Logical bisa berjumlah banyak partisi. Penamaan partisi ini tergantung dari

device yang terpasang pada sebuah komputer. Device yang dapat dipartisi

tersebut diantaranya adalah Harddisk, Flashdisk, dan storage device / media

penyimpanan lainnya. Biasanya device ini diberi nama sdxn, dimana “x” adalah

variabel dari nama device yang terpasang dan “n” adalah nomor partisi ke

berapa dari suatu device.

Sebagai contoh jika terpasang sebuah harddisk dengan 6 buah partisi,

diantaranya 4 partisi primary dan 2 partisi logical, maka penamaan dari device ini

adalah sebagai berikut :

– Partisi 1 (Primary 1) memiliki nama sda1

– Partisi 2 (Primary 2) memiliki nama sda2

– Partisi 3 (Primary 3) memiliki nama sda3

– Partisi 4 (Primary 4) memiliki nama sda4

– Partisi 5 (Logical 1) memiliki nama sda5

– Partisi 6 (Logical 2) memiliki nama sda6

dimana “a” adalah keterangan dari harddisk pertama / device 1 dan “1” s/d “6”

adalah nomor partisi ke-1 s/d ke-6 dari harddisk tersebut.

Page 16: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 16

Selain partisi tersebut, sebenarnya masih ada beberapa partisi yang akan

lebih baik dibuat untuk menyimpan direktori-direktori yang ada dibawah direktori

“ / “. Partisi tersebut dibuat untuk menyimpan direktori-direktori yaitu direktori

“ /home “, “ /boot “, “ /var “, “ /usr “, dan “ /tmp “. Secara normal direktori-

direktori ini berada dibawah direktori “ / “ pada partisi utama. Susunan direktori

linux secara umum adalah sebagai berikut :

Langkah Instalasi Linux Debian 6.0 ( ) Server

1. Siapkan semua kebutuhan instalasi seperti DVD Debian 6.0 Unit PC yang

dilengkapi dengan DVD Drive.

2. Setting Boot Order pada BIOS setup menjadi CD/DVD sebagai media booting

yang pertama (First Boot).

Gbr. Struktur Direktori Linux

Page 17: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 17

3. Lakukan booting hingga muncul tampilan awal seperti gambar berikut :

4. Pilih “Install” kemudian tekan “ENTER”

5. Pilih “English – English” kemudian tekan “ENTER”

Gbr. 1 Tampilan awal BootingCD

Gbr. 2 Select a language

Page 18: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 18

6. Pilih “United States” kemudian tekan “ENTER”

7. Pilih “American English” kemudian tekan “ENTER” dan tunggu proses loading

files...

Gbr. 3 Select your location

Gbr. 4 Select a keyboard layout

Page 19: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 19

8. Kosongkan saja, kemudian tekan “ENTER”

9. Tulis “debian” sebagai hostname nya, kemudian tekan “ENTER”

Gbr. 5 Configure the network

Gbr. 5a Configure the network (Hostname)

Page 20: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 20

10. Kosongkan saja, kemudian tekan “ENTER”

11. Tulis “utama” kemudian tekan “ENTER”

Gbr. 5b Configure the network (Domain name)

Gbr. 6 Set up user and passwords (root password)

Page 21: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 21

12. Tulis “utama” sekali lagi sebagai konfirmasi password kemudian tekan

“ENTER”

13. Tulis “Kelas XII TKJ” kemudian tekan “ENTER”

Gbr. 6a Set up user and passwords (retype root)

Gbr. 6b Set up user and passwords_Full name

Page 22: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 22

14. Tulis username-nya“tekaje” kemudian tekan “ENTER”

15. Tulis password-nya “latihan” kemudian tekan “ENTER”

Gbr. 6c Set up user and passwords_Username

Gbr. 6d Set up user and passwords_Password

Page 23: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 23

16. Tulis kembali passwordnya “latihan” kemudian tekan “ENTER”

17. Pilih “East Indiana” kemudian tekan “ENTER”, tunggu proses...

Gbr. 6e Set up user and passwords_Re-enter Password

Gbr. 7 Configure the clock

Page 24: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 24

18. Pilih “Guided – use entire disk” kemudian tekan “ENTER”

19. Tekan “ENTER” saja...

Gbr. 8 Partition disks

Gbr. 8 Partition disks _ Select disk to partition

Page 25: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 25

20. Disini Tekan “ENTER” lagi...

21. Disini Tekan “ENTER” lagi...

Gbr. 8 Partition disks _ Partitioning scheme

Gbr. 8 Partition disks _ Finish Partitioning

Page 26: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 26

22. Pilih “<Yes>” kemudian Tekan “ENTER”, tunggu prosess ...

23. Pilih “<No>” kemudian Tekan “ENTER”

Gbr. 8 Partition disks _ Write changes to disks

Gbr. 8 Scan another CD or DVD

Page 27: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 27

24. Pilih “<No>” kemudian Tekan “ENTER”, tunggu prosess ...

25. Pilih “<Continue>” kemudian Tekan “ENTER”, tunggu prosess install

software...

Gbr. 8a Use a network mirror

Gbr. 8b Configurasi repository

Page 28: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 28

26. Pilih “<No>” kemudian Tekan “ENTER”, tunggu prosess install software...

27. Pilih hanya “Standard system utulities” kemudian Tekan “ENTER”, tunggu

prosess install software...

Gbr. 9 Participate in the package usage

Gbr. 10 Software selection

Page 29: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 29

28. Pilih “<Yes>” kemudian Tekan “ENTER”, tunggu prosess ...

29. Pilih “<Continue>” kemudian Tekan “ENTER”, tunggu prosess restart...

30. Selesai proses instalasi.

Gbr. 11 Configure grub-pc (boot loader)

Gbr. 12 Finish the installation

Page 30: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 30

2.2. Perintah Linux

Perintah linux harus dikuasai bagi seorang administrator server karena

hanya dengan perintah itu dia bisa berinteraksi dengan server baik local

(berinteraksi pada servernya langsung) ataupun remote (berinteraksi dengan

server melalui jaringan dari luar server).

Sebelum mempelajari perintah lunux tentunya ada satu hal yang perlu

diketahui oleh seorang operator ataupun administrator server linux yaitu

keterangan prompt yang muncul setelah proses booting selesai. Keteranga

tersebut adalah sebagai berikut :

rusnandi@server1:~$

keterangan :

rusnandi = adalah nama user yang sedang aktif

@ = adalah batas pemisah antara Username dan Computer Name / Host Name

server1 = adalah nama dari Computer Name / Host Name

: = adalah pembatas antara Computer Name / Host Name dan direktori utama User

~ = adalah tanda direktori utama / root directory dari pengguna / user biasa

$ = adalah tanda prompt dari Pengguna Biasa / User

root@server1:/#

keterangan :

root = adalah nama user yang sedang aktif

@ = adalah batas pemisah antara Username dan Computer Name / Host Name

server1 = adalah nama dari Computer Name / Host Name

: = adalah pembatas antara Computer Name / Host Name dan direktori utama User

/ = adalah tanda direktori utama / root directory dari Pengguna Super/ Super User

# = adalah tanda prompt dari Pengguna Super / Super User

Selain keterangan prompt, yang perlu diperhatikan lagi bagi seorang

administrator server linux adalah hak akses file. Hak akses ini nantinya akan

membatasi / memproteksi siapa saja yang bisa menangani file tersebut.

Ketentuan dari hak akses file adalah sebagai berikut :

drwxr-xr-x 4 root root 1024 2011-04-24 23:53 boot

-rw-r--r-- 1 rusnandi rusnandi 115172 2011-05-02 06:18 LA32C450.pdf

lrwxrwxrwx 1 rusnandi rusnandi 54 2011-06-03 15:24 squid -> /home/squid.pdf

2 4 5 6 7 8 91 3

Gbr. Identitas File

Page 31: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 31

Keterangan Identitas File :

1. Indikator Direktori ( d ), File ( - ), atau Link / Shortcut ( l )

2. Hak akses file

3. Jumlah File / Direktori didalamnya

4. Pemilik User

5. Pemilik Group

6. Kapasitas file / direktori

7. Thn-Bln-Tgl file dibuat / diedit

8. Jam:Menit file dibuat / diedit

9. Nama File / direktori / link berikut keterangannya

Hak akses pada identitas file diatas memiliki 3 wilayah sebagai berikut :

“ r w x r w x r w x “

Warna merah merupakan hak akses dari pengguna “root”

Warna hijau merupakan hak akses dari pengguna “group”

Warna biru merupakan hak akses dari pengguna “other” / “guest”

dimana “root” berkuasa penuh terhadap sistem linux, “group” berhak mengakses

pada wilayah groupnya saja, sedangkan “other” atau “guest” hanya terbatas

diluar kedua wilayah tadi.

Hak akses ini memiliki 3 ketentuan yaitu :

“r” = read, menandakan bahwa file tersebut bisa dibaca.

“w” = write, menandakan bahwa file tersebut bisa diubah / dihapus.

“x” = execute, menandakan bahwa file tersebut bisa dieksekusi / dijalankan.

Ketentuan nilai dari hak akses ini adalah sebagai berikut :

“r” = 4 (mempunyai nilai 4),

“w” = 2 (mempunyai nilai 2),

“x” = 1 (mempunyai nilai 1),

sehingga jika ada keterangan file seperti berikut :

- r w – r - - r - - 1 rusnandi rusnandi 115172 2011-05-02 06:18 LA32C450.pdf

maka file tersebut dapat dibaca dan dihapus/diedit oleh user root, hanya dapat

dibaca oleh group dan other / guest. Kalau kita konfersi hak aksesnya ke desimal,

maka menjadi 644 dimana 6=( - r w ), 4=( r - - ), dan 4=( r - - ).

Page 32: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 32

Perintah linux yang sering digunakan adalah sebagai berikut :

a). su => digunakan untuk login / masuk sebagai pengguna super (Super User)

dimana hanya pengguna ini yang dapat menangani sistem linux,

pengguna yang lain hanya bisa menangani data penggunanya saja

tetapi tidak bisa mengubah sistem.

penulisan : su <Enter>

b). ls => untuk melihat isi suatu direktori

penulisan: ls <Enter>

contoh : ls -la <Enter>

c). exit => untuk keluar dari user / logout

penulisan : exit <Enter>

d). cd => untuk pindah direktori

penulisan : cd [target_direktori]

contoh : cd /home/rusnandi

e). mkdir => untuk membuat direktori

penulisan : mkdir [target_direktori]

contoh : mkdir /home/dataku

f). rmdir => untuk menghapus direktori

penulisan : rmdir [target_direktori]

contoh : rmdir /home/dataku

g). rm => untuk menghapus file

penulisan : rm [target_file]

contoh : rm /home/rusnandi/test.odt

h). mv => untuk memindahkan / mengganti nama file

penulisan : mv [file_sumber] [target_file / target_direktori]

contoh : mv /home/rusnandi/test.odt /home/dia/

i). cp => untuk membuat duplikat / copy file

penulisan : cp [sumber] [target]

contoh : cp /home/rusnandi/test.odt /home/rusnandi/coba.odt

Page 33: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 33

j). ln => untuk membuat link file penulisan : ln -s [namafilesumber] [namalink]

contoh : ln -s /home/rusnandi/data.odt /home/data

k). mount => mendaftarkan device agar bisa dibaca (membuat titik kait) penulisan : mount [sumber] [target] contoh : mount /dev/sdb1 /home/dataflash

l). umount => melepaskan device jika selesai digunakan (mencabut titik kait)

penulisan : Umount [target] contoh : umount /dev/sdb1

m). ifconfig => mengetahui konfigurasi network interface yang terpasang

penulisan : ifconfig [parameter]

contoh : ifconfig -a

n). nano/pico=> untuk mengedit/membuat suatu file (ada display menu)

penulisan : nano [nama_file]

contoh : nano configuration.conf

o). vi/vim => fungsinya sama seperti nano/pico (tanpa display menu)

penulisan : vi [nama_file]

contoh : vi configuration.conf

p).apt-get install => melakukan instalasi paket aplikasi linux yang terdapat

dalam repository.

penulisan : apt-get install [nama_file_aplikasi]

contoh : apt-get install bind9

q).apt-get remove=> melakukan penghapusan / pencabutan paket aplikasi

linux yang ada di server.

penulisan : apt-get remove [nama_file_aplikasi]

contoh : apt-get remove bind9

r). apt-cdrom add => menambah daftar repository yang ada dalam cd image

repository linux kedalam sumber repository sistem linux

yang sedang beroperasi.

penulisan : apt-cdrom add

contoh : apt-cdrom add

Page 34: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 34

2.3. Port dalam Server

Sebuah port dalam protokol jaringan TCP/IP, adalah mekanisme yang

mengizinkan suatu komputer dapat terkoneksi dengan komputer lainnya dan

program di dalam jaringan. Port dapat mengidentifikasikan aplikasi dan layanan

yang menggunakan koneksi di dalam jaringan TCP/IP, port juga

mengidentifikasikan sebuah proses tertentu di mana sebuah server dapat

memberikan sebuah layanan kepada klien atau bagaimana sebuah klien dapat

mengakses sebuah layanan yang ada dalam server.

Port dapat dikenali dengan angka 16-bit (dua byte) yang disebut dengan

Port Number dan diklasifikasikan dengan jenis protokol transport apa yang

digunakan, ke dalam Port TCP dan Port UDP. Karena memiliki angka 16-bit, maka

total maksimum jumlah port untuk setiap protokol transport yang digunakan

adalah 65536 buah.

Dilihat dari penomorannya, port UDP dan TCP dibagi menjadi tiga jenis, yakni

sebagai berikut:

▪ Well-known Port : yang pada awalnya berkisar antara 0 hingga 255 tapi

kemudian diperlebar untuk mendukung antara 0 hingga 1023. Port number

yang termasuk ke dalam well-known port, selalu merepresentasikan layanan

jaringan yang sama, dan ditetapkan oleh Internet Assigned Number Authority

(IANA). Beberapa di antara port-port yang berada di dalam range Well-known

port masih belum ditetapkan dan direservasikan untuk digunakan oleh

layanan yang bakal ada di masa depan. Well-known port didefinisikan dalam

RFC 1060.

▪ Registered Port : Port-port yang digunakan oleh vendor-vendor komputer

atau jaringan yang berbeda untuk mendukung aplikasi dan sistem operasi

yang mereka buat. Registered port juga diketahui dan didaftarkan oleh IANA

tapi tidak dialokasikan secara permanen, sehingga vendor lainnya dapat

menggunakan port number yang sama. Range registered port berkisar dari

1024 hingga 49151 dan beberapa port di antaranya adalah Dynamically

Assigned Port.

Page 35: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 35

▪ Dynamically Assigned Port: merupakan port-port yang ditetapkan oleh

sistem operasi atau aplikasi yang digunakan untuk melayani request dari

pengguna sesuai dengan kebutuhan. Dynamically Assigned Port berkisar dari

1024 hingga 65536 dan dapat digunakan atau dilepaskan sesuai kebutuhan.

Sedangkan port yang sering digunakan dalam komputer server adalah sebagai

berikut :

→ 21: File Transfer Protocol (FTP)→ 22: Secure Shell (SSH)→ 23: Telnet remote login service→ 25: Simple Mail Transfer Protocol (SMTP)→ 53: Domain Name System (DNS) service→ 80: Hypertext Transfer Protocol (HTTP) used in the World Wide Web→ 110: Post Office Protocol (POP)→ 119: Network News Transfer Protocol (NNTP)→ 143: Internet Message Access Protocol (IMAP)→ 161: Simple Network Management Protocol (SNMP)→ 443: HTTPs with Transport Layer Security or Secure Sockets Layer (TLS/SSL)

2.4. Konfigurasi NIC / LAN Card

Konfigurasi awal yang perlu diperhatikan setelah instalasi OS adalah

konfigurasi NIC / LAN Card. Hal ini dimaksudkan untuk memastikan bahwa LAN

Card sudah terkonfigurasi dengan benar atau tidak. Jika belum terkonfigurasi

dengan benar, maka perlu diperbaiki.

File konfigurasi NIC / LAN Card diberi nama “interfaces” yang ada di dalam

subdirektori “network” dan “etc” (/etc/network). File ini berisi data-data IP

address antara lain address, network, netmask, broadcast, dns-nameservers,

dan data konfigurasi interface jaringan lainnya.

jika belum pernah dikonfigurasi interfaces-nya (masih kondisi default)

maka isi dari file tersebut seperti berikut :

auto lo

iface lo inet loopback

dimana “lo” merupakan nama interface yang di set.

Page 36: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 36

Untuk melakukan konfigurasi LAN Card (jika menggunakan 1 buah LAN

card yang terpasang) dengan IP address otomatis (dynamic) dari server, kita

bisa tulis perintahnya diikuti nama file konfigurasi yang akan kita edit, akan

tetapi posisi kita harus sebagai “root”. Perintahnya sebagai berikut :

root@server1:# nano /etc/network/interfaces

kemudian masukan konfigurasi berikut ke dalam file interfaces tersebut.

auto eth0

iface eth0 inet dhcp

“eth0” merupakan nama interface (LAN card) yang terpasang dan “dhcp”

menandakan bahwa LAN card tersebut di set dengan pemberian IP address

otomatis dari server DHCP.

Sedangkan jika LAN card tersebut ingin di set static (diberi nomor

IP=192.168.1.55/24 dengan gateway=192.168.1.254 dan dns=192.168.1.1),

maka isi dari konfigurasi file interfaces-nya adalah sebagai berikut :

auto eth0

iface eth0 inet static

address 192.168.1.55

netmask 255.255.255.0

network 192.168.1.0

broadcast 192.168.1.255

gateway 192.168.1.254

dns-nameservers 192.168.1.1

dimana :

eth0 = nama interface / LAN card

static = keterangan bahwa setting IP addres menggunakan manual / static

address = nomor IP address yang akan diberikan / diset pada LAN card

netmask = nilai dari subnet mask ( “/24”) dalam bentuk desimal

network = nomor IP address terendah pada subnet tersebut

broadcast = nomor IP address tertinggi pada subnet tersebut

gateway = nomor IP address yang dijadikan gateway didalam router pada subnet

tersebut

dns-nameservers = nomor IP address yang dijadikan dns untuk koneksi ke internetnya.

Page 37: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 37

3. APLIKASI SERVER

Aplikasi server merupakan software aplikasi yang disediakan linux khusus untuk

server. Aplikasi ini disediakan untuk menangani berbagai kebutuhan client sehingga

client dapat mengaksesnya dengan mudah dimana pun dia berada.

Untuk meringankan beban kerja suatu server, biasanya satu aplikasi server

hanya ditanam / diinstall pada satu server komputer saja. Hal ini dimaksudkan untuk

mengantisipasi bila terjadi banyak client yang mengakses aplikasi server secara

bersamaan, dengan demikian jika hanya satu aplikasi server yang terpasang maka

kerja server akan maksimal.

3.1. dhcp3-server (DHCP)

dhcp3-server adalah aplikasi yang disediakan linux debian khusus untuk

menangani fitur pemberian no IP secara otomatis dari server kepada client, atau

lebih dikenal dengan istilah DHCP server.

Secara default sebuah OS linux tidak menyertakan aplikasi ini, akan tetapi

kita harus menginstallnya secara manual. Untuk melakukan installasi fitur DHCP

server kita harus menuliskan perintah sebagai berikut :

# apt-get install dhcp3-server

Setelah terinstall maka langkah selanjutnya adalah melakukan pengeditan file

konfigurasi dari fitur DHCP server ini. File tersebut bernama “dhcpd.conf” yang

ada di direktori “dhcp” dan “etc” (“/etc/dhcp”). Untuk melakukan pengeditan kita

tuliskan perintahnya sebagai berikut :

# nano /etc/dhcp/dhcpd.conf

kemudian akan muncul isi dari file dhcpd.conf tersebut dan kita tinggal

mengaktifkan settingan dari dhcp servernya dengan cara membuang tanda “#”

yang ada didepan instruksinya dan mengubah no IP address dan subnetmask nya

sesuai dengan kebutuhan kita. Kita cari instruksi seperti berikut ini pada file

dhcpd.conf tersebut.

Page 38: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 38

subnet 192.168.1.0 netmask 255.255.255.0 {range 192.168.1.100 192.168.1.200;option domain-name-servers ns1.tekaje.net;option domain-name “tekaje.net”;option routers 192.168.1.254option broadcast-address 192.168.1.255default-lease-time 600;max-lease-time 7200;}

dimana :

subnet = no IP awal dari subnet yang akan diotomatiskan (192.168.1.0)

netmask = nilai subnet mask dalam desimal (255.255.255.0 )

range = batasan IP yang akan diotomatiskan yaitu dari 192.168.1.100

sampai 192.168.1.200

option domain-name-servers = nama server (ns1.tekaje.net)

option domain-name = nama DNS (tekaje.net)

option routers = no IP gateway pada subnet yang

diotomatiskan yaitu 192.168.1.254

option broadcast-address = no IP tertinggi dari subnet yang

diotomatiskan yaitu 192.168.1.255

Langkah selanjutnya adalah melakukan pengeditan konfigurasi interface yang

digunakan untuk DCHP ini pada file “dhcp3-server” yang ada dalam direktori

“default” dan “etc” (“/etc/default”). Perintah untuk mengedit file konfigurasi

tersebut adalah sebagai berikut :

# nano /etc/default/dhcp3-server

kemudian akan muncul isi konfigurasi tersebut dan isi parameter yang

bertuliskan INTERFACES=“” dengan interfaces dari server DHCP yang

digunakan. Dalam hal ini isi dengan eth0, sehingga berisikan seperti berikut ini :

INTERFACES=”eth0”

Langkah terakhir adalah melakukan restart aplikasi dhcp3-server dengan

perintah seperti berikut :

# /etc/init.d/dhcp3-server restart

Selanjutnya kita bisa lakukan pengujian pada komputer client dengan mengeset

IP addressnya dengan automatic / dynamic.

Page 39: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 39

3.2. bind9 (DNS)

Aplikasi ini berfungsi untuk menyediakan layanan DNS server, dimana

memiliki 2 fungsi yaitu sebagai penerjemah / pengkonversi dari address ke no IP

dan fungsi yang kedua adalah menterjemahkan / mengkonversi dari no IP ke

address. Fungsi penerjemah address ke IP dikonfigurasi dalam sebuah file dan

biasanya diberi nama “*.zone” (dikenal dengan nama file forward), sedangkan

fungsi penerjemah IP ke address biasanya disimpan dalam file yang diberi nama

“*.rev” (dikenal dengan nama file reverse). Konfigurasi utama untuk settingan

DNS ini terdapat dalam file yang bernama “named.conf” yang berada di dalam

direktori “bind” dan “etc” (“/etc/bind”).

Untuk membuat sebuah DNS server, langkah pertama adalah kita install

terlebih dahulu aplikasi “bind9” yang sudah terdapat dalam repository debian.

Perintah instalasinya adalah sebagai berikut :

# apt-get install bind9

Setelah terinstall maka langkah selanjutnya adalah melakukan konfigurasi

terhadap file “named.conf” dan membuat file forward (“*.zone”) dan file

reverse (“*.rev”). Untuk mengedit konfigurasi utama (file

“named.conf.default-zones”) yang ada di dalam direktori “bind” dan “etc”

(“/etc/bind”) maka kita gunakan perintahnya sebagai berikut :

# nano /etc/bind/named.conf.default-zones

Kemudian akan muncul konfigurasi standar dan kita tinggak menambahkan

konfigurasi tambahan untuk DNS yang akan kita buat. Parameter yang harus kita

copy adalah dua parameter seperti berikut :

dimana :

zone “localhost” { = setting forward zone (diberi nama “localhost”)

file “/etc/bind/db.local”; = nama file untuk parameter konfigurasi forward

Page 40: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 40

(diberi nama “db.local”)

zone “127.in-addr.arpa” { = setting reverse zone (diberi nama “127.in-

addr.arpa”)

file “/etc/bind/db.127 = nama file untuk parameter konfigurasi forward

(diberi nama “db.127”)

kita copy atau ketik ulang kedua parameter diatas dan hasil copy-nya disimpan

dibaris paling bawah dari file tersebut dan diubah parameternya sesuai dengan

DNS yang akan kita buat seperti berikut :

zone "tekaje.net" { type master; file "/etc/bind/db.tekaje.zone"; };

zone "1.168.192.in-addr.arpa" { type master; file "/etc/bind/db.tekaje.rev";};

dimana :

zone “tekaje.net” { = setting forward zone (diberi nama

“tekaje.net”)

file “/etc/bind/db.tekaje.zone” = nama file untuk parameter konfigurasi forward

(diberi nama “db.tekaje.zone”)

zone “1.168.192.in-addr.arpa”= setting reverse

zone (diberi nama “1.168.192.in-addr.arpa”)

file “/etc/bind/db.tekaje.rev = nama file untuk parameter konfigurasi forward

(diberi nama “db.tekaje.rev”)

Setelah mengedit file konfigurasi utama tersebut, maka langkah selanjutnya

adalah membuat settingan file forward dengan nama “db.tekaje.zone” dan file

reverse “db.tekaje.rev” dimana kedua file tersebut terletak satu direktori

dengan file “named.conf.default-zones”. Cara membuat file-file tersebut

adalah dengan meng-copy file “db.local” menjadi “db.tekaje.zone” dan copy

file “db.127” menjadi “db.tekaje.rev”. Langkah meng-copy-nya sebagai

berikut :

# cp /etc/bind/db.local /etc/bind/db.tekaje.zone

# cp /etc/bind/db.127 /etc/bind/db.tekaje.rev

Page 41: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 41

Setelah di-copy, maka langkah selanjutnya adalah mengedit satu-persatu file

konfigurasi tersebut. Pertama kita edit file “db.tekaje.zone” dengan perintah

sebagai berikut :

# nano /etc/bind/db.tekaje.zone

kemudian edit isi / parameter file tersebut sesuai dengan data yang kita

butuhkan sebagai berikut :

$TTL 604800 @ IN SOA ns1.tekaje.net. root.tekaje.net. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns1.tekaje.net. ns1 IN A 192.168.1.55 www IN CNAME ns1

Langkah kedua kita edit file “db.tekaje.rev” dengan perintah sebagai berikut :

# nano /etc/bind/db.tekaje.rev

kemudian edit isi / parameter file tersebut sesuai dengan data yang kita

butuhkan sebagai berikut :

$TTL 604800 @ IN SOA ns1.tekaje.net. root.tekaje.net. (

1 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL

; @ IN NS ns1.tekaje.net. 55 IN PTR www.tekaje.net.

Setelah semua konfigurasi selesai jangan lupa untuk melakukan restart aplikasi

yang sudah diedit tadi. Hal ini dimaksudkan agar konfigurasi yang baru saja

dibuat dapat langsung diproses/dijalankan. Perintah untuk melakukan restart

aplikasi bind9 adalah sebagai berikut :

# /etc/init.d/bind9 restart

Langkah selanjutnya adalah melakukan pengujian DNS pada komputer server

diawali dengan mengecek konfigurasi dari file “resolv.conf” yang ada didalam

Page 42: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 42

direktori “etc” dengan perintah sebagai berikut :

# nano /etc/resolv.conf

masukan parameter berikut kedalam file “resolv.conf” (jika file tersebut belum

ada parameterna / berbeda parameternya dengan parameter yang berikut) :

nameserver 192.168.1.55

Jika sudah sama “resolv.conf” nya maka langkah selanjutnya adalah melakukan

pengetesan aplikasi DNS servernya dari komputer server itu sendiri dengan

perintah sebagai berikut :

# nslookup www.tekaje.net (pengujian fungsi forward)

Jika DNS berfungsi dengan benar / berhasil maka seharusnya akan muncul

seperti tampilan berikut :

Pengetesan kedua masih dilakukan dengan perintah yang sama tp diikuti no IP

sehingga perintahnya sebagai berikut :

# nslookup 192.168.1.55 (pengujian fungsi reverse)

Jika DNS berfungsi dengan benar / berhasil maka seharusnya akan muncul

seperti tampilan berikut :

Page 43: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 43

3.3. apache2 (Web / HTTP)

Apache 2 adalah aplikasi server yang berfungsi untuk mengelola dan

menampilkan halaman web pada server (disebut web server). Aplikasi ini juga

sudah termasuk dalam repository debian dan merupakan aplikasi default web /

http server linux. Pada instalasi standar / desktop, aplikasi apache ini belum

tersinstal. Oleh karena itu untuk membuat suatu web / http server, kita harus

melakukan instalasi aplikasi ini secara manual.

Langkah instalasinya sama seperti instalasi aplikasi server yang lainnya

yaitu menggunakan perintah seperti berikut :

# apt-get install apache2

Setelah proses instalasi selesai maka default direktori tempat menyimpan file

web / http nya diberi nama “www” yang berada didalam direktori “var”

(“/var/www”). File utama / standar yang sudah ada pada saat instalasi apache2

adalah file “index.html”. File ini adalah default file yang akan dibaca pada saat

kita membuka halaman utama / home pada sebuah situs.

Untuk melakukan pengetesan web server, kita bisa lakukan browsing di client

dengan web browsing dan tulis address-nya seperti berikut :

address : http://www.tekaje.net

jika web server berjalan dengan baik maka akan tampil pada browser seperti

berikut :

Direktori tempat menyimpan halaman web ini dapat kita pindahkan dari

direktori defaultnya ke direktori lain. Hal ini dimaksudkan untuk memudahkan

mengelola file-file web jika suatu server memiliki/menangani berbagai macam

halaman web atau memiliki banyak user yang menyimpan / hosting web pada

Page 44: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 44

server tersebut. Pemindahan / pengarahan direktori default halaman web ini

dilakukan dengan konfigurasi pada “Virtual Host”.

Virtual Host ini memiliki tiga metode yaitu :

1. Name-based yaitu menggunakan banyak Host Name (web site) pada

sebuah web server yang memiliki satu IP address (disebut juga sub domain).

2. IP-based yaitu menggunakan banyak IP addres untuk banyak website (1 IP

address untuk 1 website).

Dalam hal ini kita akan membahas “Name-based” Virtual Host saja yang biasa

digunakan untuk membuat sub domain.

Untuk membuat “Virtual Host” langkah yang harus dipersiapkan adalah

mengedit file konfigurasi web server yang bernama “default” yang ada dalam

direktori “sites-available”, dibawah “apache2” dan “etc”

(“/etc/apache2/sites-available”), membuat direktori dokumen / file web,

menempatkan file webnya, dan mengkonfigurasi sub domain-nya pada

konfigurasi DNS (dalam file db.tekaje.zone dan db.tekaje.rev).

Langkah awal dalam membuat Virtual host adalah mengedit file konfigurasi web

servernya sebagai berikut :

# nano /etc/apache2/sites-available/default

setelah itu akan muncul konfigurasinya dan kita tinggal menambahkan

parameter berikut ini pada bagian bawah file tersebut :

<VirtualHost *:80>

ServerAdmin [email protected]

ServerName rusnandi.tekaje.net

DocumentRoot /home/rusnandi/web

</VirtualHost>

Langkah kedua adalah mengedit file “db.tekaje.zone” dengan perintah

sebagai berikut :

# nano /etc/bind/db.tekaje.zone

Setelah itu modifikasi / tambahkan parameter tersebut pada bagian bawah

dengan parameter dibawah ini :

rusnandi IN CNAME ns1

Page 45: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 45

Langkah ketiga adalah mengedit file “db.tekaje.rev” dengan perintah sebagai

berikut :

# nano /etc/bind/db.tekaje.rev

Setelah itu modifikasi / tambahkan parameter tersebut pada bagian bawah

dengan parameter dibawah ini :

55 IN PTR rusnandi.tekaje.net.

Langkah keempat adalah membuat direktori tempat menyimpan file web

dengan perintah sebagai berikut :

# mkdir /home/rusnandi/web

Langkah kelima adalah mengcopy file web ke dalam direktori yang sudah kita

buat tadi.

Sebagai langkah terakhir kita harus melakukan restart aplikasi yang sudah kita

ubah konfigurasinya tadi (apache2 dan bind9) dengan perintah sebagai berikut :

# /etc/init.d/apache2 restart

# /etc/init.d/bind9 restart

untuk melakukan pengujian pada sisi client, kita gunakan web browser seperti

pada pengujian web server hanya address yang kita tulis adalah address sub

domain yang kita tuliskan pada kolom address di web browser seperti berikut

ini :

address : http://rusnandi.tekaje.net

dan bila sukses / berhasil konfigurasinya berjalan dengan benar, maka akan

muncul tampilan pada web browser tersebut seperti berikut :

Page 46: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 46

3.4. postfix (Mail)

Salah satu aplikasi mail server adalah “postfix” merupakan MTA (mail

Transfer Agen mengelola/menangani mail di dalam server. Dalam mail server ini

terdapat dua fungsi yaitu fungsi untuk mengirim mail dari client/mail server luar

ke mail server kita yang menggunakan protokol SMTP dan fungsi untuk

mengambil / mengirim mail dari server kita ke client/mail server luar lain yang

menggunakan protokol POP3 atau IMAP. File-file pendukung mail server ini harus

diinstall yaitu “postfix”, “courier-pop”, “courier-imap”. Selain mail server,

kita juga perlu tambahan aplikasi untuk dapat membaca / menampilkan email

yang ada pada mail server tersebut dengan aplikasi Email Client seperti

“Squirrelmail”.

Untuk memulai membangun web server maka langkah pertama adalah

menginstall semua aplikasi pendukung mail server tersebut. Proses instalasi

dapat dilakukan sekaligus / bersamaan dengan menggunakan perintah sebagai

berikut :

# apt-get install postfix courier-imap courier-pop squirrelmail

Setelah itu akan muncul tampilan berikut :

pilih “Internet Sites”, selanjutnya muncul tampilan berikut :

Page 47: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 47

Tulis : “mail.tekaje.net”, selanjutnya muncul tampilan berikut :

Pilih “No”, tunggu proses.....

Setelah proses instalasi selesai, maka langkah kedua adalah melakukan

konfigurasi mail server pada file “main.cf” yang berada dalam direktori

“postfix” dan “etc” (“/etc/postfix”). Perintah untuk mengedit file tersebut

adalah sebagai berikut :

# nano /etc/postfix/main.cf

Setelah itu akan muncul tampilan konfigurasi, diantaranya sebagai berikut :

Page 48: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 48

kita tinggal memodifikasi settingan tersebut dengan parameter yang bergaris

tebal / bold sebagai berikut :

myhostname = server-lennyalias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases myorigin = /etc/mailnamemydestination = mail.sekolah.sch.id, server-lenny, localhost.localdomain, localhost relayhost = mynetworks = 192.168.0.0/24 127.0.0.0/8#mailbox_command = procmail -a “$EXTENSION”mailbox_size_limit = 0 recipient_delimiter = + inet_interfaces = all home_mailbox = Maildir/

Langkah ketiga adalah membuat direktori yang nantinya digunakan untuk

menyimpan file email di masing-masing user. Nama direktorinya adalah

“Maildir” yang dibuat di dalam direktori “skel” dan “etc” (“/etc/skel”).

Perintah untuk membuat direktori tersebut adalah sebagai berikut :

# maildirmake /etc/skel/Maildir

Langkah keempat adalah menambahkan parameter untuk “mail.tekaje.net”

pada konfigurasi DNS dalam file “db.tekaje.zone” dan “db.tekaje.rev”.

Parameter yang harus dimasukan ke dalam “db.tekaje.zone” di baris paling

bawah adalah sebagai berikut : (perintahnya sama seperti edit DNS)

mail IN CNAME ns1

Sedangkan Parameter yang harus dimasukan ke dalam “db.tekaje.rev” di baris

paling bawah adalah sebagai berikut : (perintahnya sama seperti edit DNS)

55 IN PTR mail.tekaje.net.

Selesai sudah proses membangun web server linux dan jangan lupa untuk

melakukan restart semua aplikasi pendukung mail server yaitu “postfix”,

”courier-imap”, “courier-pop”, “courier-authdaemon” dengan perintah

sebagai berikut :

# /etc/init.d/postfix restart

# /etc/init.d/courier-imap restart

# /etc/init.d/courier-pop restart

# /etc/init.d/courier-authdaemon restart

Page 49: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 49

Sekarang kita lakukan pengetesan mail server tersebut dengan

menggunakan perintah telnet. Akan tetapi sebelum melakukan pengetesan kita

perlu membuat user account sebagai pengguna mail server tersebut. Kita buat

user “siswa” dengan perintah sebagai berikut :

# adduser siswa

Kemudian muncul pertanyaan yang harus diisi sebagi identitas user tersebut.

Isikan data-data user pada pertanyaan tersebut untuk user pertama dengan

data yang dicetak tebal / bold sebagai berikut :

Adding user `siswa' ... Adding new group `siswa' (1001) ... Adding new user `siswa' (1001) with group `siswa' ... Creating home directory `/home/siswa' ... Copying files from `/etc/skel' ... Enter new UNIX password: siswaRetype new UNIX password: siswa

passwd: password updated successfully Changing the user information for siswa Enter the new value, or press ENTER for the default

Full Name []: Siswa Room Number []: Work Phone []: Home Phone []: Other []:

Is the information correct? [Y/n] y

Selanjutnya kita buat satu user lagi dengan nama “siswi” agar kita bisa tes

kirim surat dari “siswa” ke “siswi” dengan perintah sama seperti pembuatan

user “siswa” yaitu :

# adduser siswi

Kemudian muncul pertanyaan seperti tadi yang harus diisi sebagi identitas user

tersebut. Isikan data-data user pada pertanyaan tersebut untuk user kedua ini

dengan data yang dicetak tebal / bold sebagai berikut :

Adding user `siswa' ... Adding new group `siswa' (1002) ... Adding new user `siswa' (1002) with group `siswi' ... Creating home directory `/home/siswi' ... Copying files from `/etc/skel' ... Enter new UNIX password: siswiRetype new UNIX password: siswi

passwd: password updated successfully Changing the user information for siswa Enter the new value, or press ENTER for the default

Page 50: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 50

Full Name []: Siswi Room Number []: Work Phone []: Home Phone []: Other []:

Is the information correct? [Y/n] y

Setelah ke dua user tersebut dibuat, maka kita dapat melakukan tes mail

server pada komputer server tersebut dengan menggunakan perintah “telnet” .

Perintah “telnet” ini diikuti dengan port 25 untuk mengirim surat ke server dan

port 110 untuk membaca surat yang ada di server. Perintah untuk melakukan

tes mengirim surat dari user “siswa” ke user “siswi” dengan pesannya adalah

“Apa kabar...?” adalah sebagai berikut :

# telnet mail.tekaje.net 25

kemudian muncul seperti berikut dan isikan isian tersebut dengan yang dicetak

tebal / bold :

mail from: [email protected]

250 2.1.0 Ok

rcpt to: [email protected]

250 2.1.5 Ok

data

354 End data with <CR><LF>.<CR><LF>

Apa kabar...?

. 250 2.0.0 Ok: queued as AAFE416BB

quit

221 2.0.0 Bye

Sekarang kita periksa apakah email tersebut telah sampai ke user “siswi”

dengan perintah sebagai berikut :

# telnet mail.tekaje.net 110

kemudian muncul seperti berikut dan isikan isian tersebut dengan yang dicetak

tebal / bold :

Page 51: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 51

user siswa

+OK Password required.

pass siswi

+OK logged in.

stat

+OK 1 460

retr 1

Jika muncul seperti tampilan diatas, berarti mail server sudah berjalan dengan

baik. Langkah yang terakhir dari pengetesan mail server ini adalah

menggunakan aplikasi basis web yang dapat diakses dari client atau sering

disebut sebagai aplikasi email-client. Dalam hal ini kita gunakan “squirrelmail”.

Untuk dapat mengoperasikan “squirrelmail”, kita harus membuat /

menambahkan konfigurasi “Virtual Host” terlebih dahulu pada web servernya.

Masukan parameter “Virtual Host” berikut ke file konfigurasi web server

“default” yang ada dalam direktori “sites-available” dibawah “apache2”, dan

“etc” (“/etc/apache2/sites-available/default”) dan letakkan di paling bawah :

<VirtualHost *:80>

ServerAdmin [email protected]

DocumentRoot /usr/share/squirrelmail

ServerName mail.tekaje.net

</VirtualHost>

Setelah itu jalankan ulang aplikasi “apache2” dengan perintah :

# /etc/init.d/apache2 restart

Page 52: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 52

Selanjutnya kita coba menggunakan web browser yang ada di client untuk

mencoba mengakses mail server dengan menuliskan pada kolom address

seperti berikut :

address : http://mail.tekaje.net

Kemudian kalau konfigurasi “Virtual Host” untuk squirrelmail-nya benar, maka

akan muncul tampilan seperti gambar berikut :

3.5. proftpd (FTP)

FTP adalah protokol jaringan basis TCP/IP yang digunakan untuk berbagi

file antar client dan server dalam jaringan tersebut. Salah satu software

aplikasinya adalah proftpd yang biasanya sudah termasuk dalam paket distro

linux. FTP server biasa digunakan sebagai fasilitas download/upload dalam

sebuah server. Dengan aplikasi ini kita bisa mengirim file ke server (upload)

atau mengambil file dari server (download).

Untuk membangun sebuah FTP server kita perlu install salah satu

aplikasinya dulu, dalam hal ini kita perlu install proftpd sebagi langkah awal.

Perintahnya sebagi berikut :

# apt-get install proftpd

kemudian akan tampil seperti berikut :

pilih “standalone”, tunggu proses...

Page 53: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 53

Setelah proses instalasi selesai, maka langkah selanjutnya adalah melakukan

pengetesan dari komputer server itu sendiri dengan perintah sebagai berikut :

# ftp localhost

kemudian muncul seperti tampilan berikut dan isi seperti yang dicetak tebal /

bold :

Connected to localhost. 220 ProFTPD 1.3.3a Server (Debian) [::ffff:127.0.0.1] Name (localhost:tekaje): siswa331 Password required for administrator Password: siswa <password tidak akan tampil karakternya>

230 User siswa logged in Remote system type is UNIX. Using binary mode to transfer files. ftp>

setelah muncul seperti di atas, maka aplikasi “proftpd” sudah berfungsi dengan

benar. Kita bisa melihat isi direktori user kita yang ada di server dengan perintah

“ls -la” pada prompt “ftp>”. Kemudian muncul seperti tampilan berikut :

tampilan tersebut adalah isi dari direktori utama dengan user “siswa”, kita bisa

mengakhiri koneksi ftp tersebut dengan perintah “quit”.

Kita bisa lakukan juga pengetesan ftp server ini di komputer client yang

terhubung ke server dengan menuliskan “ftp://www.tekaje.net” pada kolom

address dalam aplikasi web browser seperti berikut :

kemudian akan muncul konfirmasi username dan password seperti gambar

berikut ini :

Page 54: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 54

isikan username dan password dengan account “siswa” yang sudah dibuat di

awal, maka akan muncul tampilan dari direktori utama user tersebut seperti

berikut :

kita bisa mengatur/mengubah konfigurasi aplikasi ini pada file “proftpd.conf”

yang ada dalam direktori “proftpd” dan “etc” (“/etc/proftpd”).

3.6. samba (File & Printer Sharing)

Samba adalah aplikasi server yang berfungsi untuk menangani sharing

file atau sharing printer. Aplikasi ini sangat diperlukan bagi client yang

membutuhkan sumber data yang dapat digunakan bersama-sama sehingga satu

data bisa dibagi-bagi / diambil ke dan dari semua client yang memerlukannya.

Sharing ini dapat dilakukan pada komputer yang terhubung jaringan dalam satu

subnet saja, akan tetapi tidak berlaku jika berbeda subnet.

Untuk membuat suatu samba server, maka kita perlu menginstall terlebih

dahulu aplikasi samba tersebut dengan perintah sebagai berikut :

# apt-get install samba

Page 55: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 55

Kemudian akan muncul seperti gambar berikut :

tulis “workgroup” atau tergantung group apa yang akan kita buat dalam

jaringan samba tersebut. Setelah itu muncul tampilan seperti berikut :

pilih “No” kemudian tunggu proses...

Setelah proses instalasi aplikasi selesai, maka langkah selanjutnya adalah

melakukan editing pada file konfigurasi samba dengan nama filenya “smb.conf”

yang terletak dalam direktori “samba” dan “etc” (“/etc/samba”). Perubahan

konfigurasi ini sesuai dengan kebutuhan kita saja.

Untuk membuat mengaktifkan password sharing sesuai dengan user

maka konfigurasi yang perlu diedit adalah “# security = user”. Perintah edit

filenya adalah sebagai berikut :

# nano /etc/samba/smb.conf

kemudian muncul isi dari konfigurasi file tersebut dan kita cari baris konfigurasi

yang berisi “# security = user”. Hapus tanda “#” untuk mengaktifkan fungsi

sekuritinya sehingga menjadi “security = user”.

Page 56: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 56

Untuk membuat direktori / file sharing, maka kita perlu menambahkan

parameter sebagai berikut :

#.....[data-sharing] comment = data yang di sharing path = /home/rusnandi/data browseable = yes read only = yes guest ok = yes #......

keterangan :

[data-sharing] => nama sharing yang tampil di komputer lain

comment => keterangan dari yang disharing

path = /home/rusnandi/data => direktori yang di sharing

browsable => dapat di brown dari komputer lain

read only = > hak akses direktori

guest ok => user guest dapat mengakses direktori sharing

Langkah terakhir adalah melakukan test aplikasi pada komputer server itu

sendiri apakah aplikasi sudah berjalan dengan baik atau tidak, tetapi jangan

lupa untuk melakukan restart aplikasi samba tersebut agar konfigurasi yang

baru dapat diproses. Perintah testnya sebagai berikut :

# testparam

kemudian akan muncul tampilan sebagi berikut :

gambar diatas menunjukkan bahwa aplikasi berjalam dengan baik dan yang

dilakukan sharing adalah direktori “homes”(untuk file sharing dan “printer”

(untuk printer sharing).

Page 57: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 57

3.7. mysql-server (Database)

Mysql-server adalah aplikasi server yang berfungsi untuk

menangani/mengelola database pada komputer server. Sedangkan untuk

mengelola database pada mysql tersebut bisa kita gunakan aplikasi

“phpmyadmin” yang dapat membaca / menulis database.

Aplikasi ini juga sudah terdapat dalam paket repository debian, hanya saja

harus diinstall secara manual karena aplikasi ini tidak otomatis terinstall.

Langkah pertama adalah instalasi “mysql-server” dengan menggunakan

perintah sebagai berikut :

# apt-get install mysql-server

kemudian akan muncul tampilan seperti berikut “

tulis password untuk masuk “mysql” dengan “utama”, password ini digunakan

untuk koneksi ke mysql-server. Kemudian akan muncul lagi tampilan konfirmasi

password tersebut seperti berikut :

tulis ulang password tersebut dengan “utama”, tunggu proses...

Page 58: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 58

Setelah selesai proses instalasi, langkah selanjutnya adalah melakukan test

apakah aplikasi mysql-server sudah bekerja dengan benar. Untuk melakukan test

mysql kita gunakan perintah berikut :

# mysql -u root -p

kemudian muncul isian password yang harus kita isi dengan password “root”

yang sudah kita masukan pada saat instalasi mysql-server tadi. Isikan seperti

yang tercetak tebal / bold seperti berikut :

Enter password: root <karakter tidak ditampilkan>

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 35

Server version: 5.0.51a-24 (Debian)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

Setelah masuk ke aplikasi mysql server, kita bisa lihat database yang ada

didalam mysql-server tersebut dengan perintah seperti berikut :

mysql> show databases;

maka akan muncul tampilan seperti berikut :

+------------------------------+ | Database | +------------------------------+ | information_schema | | mysql | +------------------------------+ 2 rows in set (0.00 sec)

mysql>

tampilan diatas menandakan bahwa belum ada database yang dibuat.

Kita bisa mengakhiri koneksi mysql tersebut dengan perintah “quit” sebagai

berikut :

mysql> quit

Page 59: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 59

Pembacaan/penulisan data dari dan ke mysql server bisa juga dilakukan dengan

aplikasi bebrbasis web. Dalam hal ini adalah phpmyadmin. Untuk menginstall

aplikasi sini kita gunakan perintah sebagai berikut :

# apt-get install phpmyadmin

kemudian akan muncul tampilan seperti berikut :

kita pilih / ceklis “apache2”, selanjutnya tunggu proses...

Setelah installasi selesai maka kita bisa melakukan test aplikasi phpmyadmin

tersebut pada menggunakan web browser di komputer client dengan menuliskan

address dari phpmyadmin tersebut sebagai berikut :

address : http://www.tekaje.net/phpmyadmin

setelah itu jika aplikasi phpmyadmin tersebut telah terinstall dengan benar maka

akan muncul tampilan seperti gambar berikut :

kita tinggal menuliskan username dan password database mysql-nya.

Page 60: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 60

3.8. squid (Proxy)

Proxy merupakan salah satu fitur penting dalam sebuah server. Proxy

mempunyai dua fungsi, pertama adalah sebagai cache web artinya akan

menyimpan data-data web yang sudah dikunjungi oleh suatu client dan bila ada

client lain yang mengunjungi web yang sama maka client tersebut tidak

browsing ke internet melainkan menggunakan data web yang ada di proxy saja.

Hal ini tentunya akan menghemat pemakaian bandwidth internet pada jaringan

tersebut. Fungsi yang kedua dari proxy adalah untuk membatasi/mengendalikan

akses dari client seperti autentikasi user, blok situs-situs tertentu, memblok

banner, dan lain-lain.

Salah satu aplikasi dari proxy ini adalah “squid” yang sudah terdapat

dalam paket distro linux. Squid ini merupakan standar aplikasi proxy linux. Ada

juga aplikasi proxy lainnya selain squid.

Langkah pertama dalam membangun sebuah proxy server adalah

melakukan installasi aplikasi squid dengan perintah sebagai berikut :

# apt-get install squid

Setelah terinstall kita dapat melakukan perubahan konfigurasi file “squid.conf”

sesuai dengan kebutuhan kita. Konfigurasi yang biasa diedit adalah “access list”

dan “http_access”. Untuk mengedit konfigurasi squid kita gunakan perintah

berikut :

# nano /etc/squid/squid.conf

kemudian cari dan ubah / edit parameter dari file tersebut seperti parameter

dibawah ini :

1. http_port 3128 (baris 1110)

Option ini akan menentukan di port berapa squid akan berjalan (biasanya di port 3128

dan 8080)

2. icp_port 3130 (baris 3916)

Adalah port yang digunakan squid untuk menerima dan mengirim permintaan/request

ICP dari dan ke cache tetangga ( lain squid) atau dengan kata lain saling bertukar

informasi cache antar squid. Jadi jika hanya satu squid, lebih baik di off-kan. Untuk

menonaktifkan berikan nilai “0 “ (nol).

Jika anda menggunakan ICP, tentukan parent dan sibling squid, contoh:

cache_peer 192.168.1.1 parent 3128 3130 (baris 1318)

cache_peer 10.4.1.1 sibling 3128 3130 (baris 1319)

Page 61: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 61

3. cache_mem 32 MB (baris 1732)

digunakan untuk menentukan besaranya cache memori yang digunakan squid untuk

melakukan caching objects ( In-Transit objects, Hot Objects, Negative-Cached objects).

Sebaikanya besarnya sekitar 1/3 RAM yang digunakan.

4. maximum_object_size 10240 KB

minimum_object_size 8 KB

Untuk menentukan besarnya object yang akan disimpan dalam hardisk, setting diatas

berarti hanya object yang berukuran diantara 8 KB s/d 1024 KB saja yang akan

disimpan, sedang object yang berukuran dibawah 8 KB ataupun object yang lebih besar

dari 10240 KB tidak akan disimpan.

5. maximum_object_size_in_memory 42 KB (baris 1741)

Untuk menentukan besar object maksimum yang akan diusahakan untuk di caching pada

cache memori , semakin besar adalah semakin baik karena sangat membantu untuk

mengoptimasi squid melakukan caching object (lihat cache_mem).

6. cache_dir ufs /home/squid 10240 32 512 (baris 1939)

Jangan lupa buatlah direktori /home/squid dan ubah kepemilikannya ( dalam hal ini

adalah dimiliki oleh yang menjalankan squid yaitu user : squid ), dengan perintah

sebagai berikut :

# mkdir /home/squid # chown squid.squid -fR /home/squid

7. Parameter untuk transparent proxy

• httpd_accel_host virtual

• httpd_accel_port 80

• httpd_accel_with_proxy on

• httpd_accel_uses_host_header on

8. cache_access_log /var/log/squid/access.log

Digunakan untuk menentukan namafile dan letak file log yang akan mencatat siapa saja

dan apa saja request yang diterima squid melalui port HTTP dan ICP. Dalam hal ini

namanya adalah access.log.

9. cache_store_log /var/log/squid/store.log

Untuk menentukan namafile dan letak file log yang akan mencatat aktifitas storage

manager. Dimana akan dicatat objects apa saja yang ditolak dan objects apa saja yang

disimpan dan berapa lama. Untuk menonaktifkannya tulis saja none .

10. forwarded_for on

Digunakan untuk mengijinkan request http terhadap IP Address system . Contohnya

begini : misal ada suatu website yang diberi script agar bisa menampilkan/mendapatkan

IP Address Proxy pengunjung sekaligus bisa menampilkan/mendapatkan IP system yang

Page 62: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 62

mengakses/merequest (melalui proxy) walaupun system memiliki IP invisible (IP local).

Jika parameter ini di setting off, maka request http untuk IP system yang

mengakses/merequest akan menghasilkan unknown , jadi bukan berupa IP Address.

11. cache_mgr [email protected]

Jika cache mati, email tersebut akan dihubungi.

12. acl all src 0.0.0.0/0.0.0.0

acl manager proto cache_object

acl localhost src 127.0.0.1/255.255.255.255

acl to_localhost dst 127.0.0.0/8

acl to_localhost dst 127.0.0.0/8

ACL (Access List) adalah daftar siapa saja yang dibolehkan atau ditolak untuk

menggunakan proxy (squid) atau dengan kata lain adalah pendefinisian user/clients

squid. Daftar diatas adalah defaultnya. Artinya siapa saja (dari IP mana saja) selain yang

didefinisikan akan diwakili/didefinisikan dengan nama all (ingat ini hanya pendefinisian

nama saja, dan disesuaikan dengan defaultnya). Baik dilanjut, acl manager proto cache

adalah untuk mendefinisikan cache_object dengan nama yang mewakilinya adalah

manager. Selanjutnya, localhost mewakili source 127.0.0.1/255.255.255.255 (ip

localhost) dan to_localhost mewakili tujuan network 127.0.0.0/8.

contoh :

Kita akan mengkonfigurasikan network kita misal ada 3 (tiga) network, yang akan kita

definisikan dengan nama LANsatu, LANdua dan LANtiga ( 192.168.1.0/24; 172.16.5.0/24;

dan 10.4.1.0/24) maka penulisaannya adalah:

acl all src 0.0.0.0/0.0.0.0

acl LANsatu src 192.168.1.0/255.255.255.0

acl LANdua src 172.16.1.0/255.255.255.0

acl LANtiga src 10.4.1.0/255.255.255.0

acl manager proto cache_object

acl localhost src 127.0.0.1/255.255.255.255

acl to_localhost dst 127.0.0.0/8

Selanjutnya kita juga dapat menentukan port mana saja yang diijinkan untuk di request :

acl SSL_ports port 443 563

acl Safe_ports port 80 # http

acl Safe_ports port 21 # ftp

acl Safe_ports port 443 563 # https, snews

acl Safe_ports port 70 # gopher

acl Safe_ports port 210 # wais

acl Safe_ports port 1025-65535 # unregistered ports

acl Safe_ports port 280 # http-mgmt

acl Safe_ports port 488 # gss-http

acl Safe_ports port 591 # filemaker

Page 63: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 63

acl Safe_ports port 777 # multiling http

acl CONNECT method CONNECT

Acl dengan nama CONNNECT memiliki metode CONNECT

Selanjutnya adalah mengkonfigurasi rulesnya.

http_access allow LANsatu

http_access allow LANdua

http_access allow LANtiga

http_access allow localhost

http_access deny all

Artinya, ketiga network dan localhost yang telah didefinisikan diatas diijinkan untuk mengakses data melalui port http, sedang selain itu (all) akan ditolak.

http_access deny !Safe_ports

http_access deny CONNECT !SSL_ports

Digunakan untuk menolak request port http dan koneksi untuk port yang tidak diketahui (selain port yang didefinisikan diatas [Safe_ports] ).

http_reply_access allow LANsatu

http_reply_access allow LANdua

http_reply_access allow LANtiga

http_reply_access allow localhost

http_reply_access deny all

Untuk mengijinkan memberi jawaban request clients (LANsatu, LANdua, LANtiga, localhost), dan menolak selain itu all. Konfigurasi ini adalah kebalikan http_access ( untuk menjawab request http_access).

icp_access allow LANsatu

icp_access allow LANdua

icp_access allow LANtiga

icp_access allow localhost

icp_access deny all

Artinya, ketiga network dan localhost yang telah didefinisikan diatas diijinkan untuk mengakses data melalui port icp, sedang selain itu (all) akan ditolak. Ini berlaku jika setiap LAN memiliki squid dan ICP diaktifkan.

Langkah selanjutnya adalah membuat direktori cache (cache_dir) dengan

perintah sebagai berikut :

# squid -z

Jika sudah selesai melakukan konfigurasi, maka jalankan ulang squid dengan

perintah sebagai berikut :

# /etc/init.d/squid restart

Page 64: Membangun+Server+Linux 1

Admin Server Linux . . . . . . . 64

Terakhir kita bisa tes squid dari sisi server apakah sudah bekerja dengan

perintah sebagai berikut :

# ps ax |grep squid

Jika hasilnya seperti tampilan dibawah ini, maka berarti squid sudah berjalan,

ingat angka 10102 bisa jadi tidak sama dengan angka yang anda dapatkan.

Tidak mengapa itu hanya menunjukkan PID saja, yang penting ada terlihat

squid -D.

Referensi :

1. http://opensource.telkomspeedy.com/wiki

2. http://www.google.co.id

3. http://www.bhinneka.com

4. http://www.intel.com

5. http://www.seagate.com

6. http://www.newegg.com

7. http://www.compusa.com

8. http://www.pcpower.com

9. http://www.delta.com

10.http://www.kojingkomputer.com

11.http://id.wikipedia.org/wiki/Port_TCP_dan_UDP

12.http://en.wikipedia.org/wiki/Port_number

Akronim :

QPI = QuickPath Interconnect

FSB = Front Side Bus

GT/s = Gigatransfers per Second

DIMM = Dual In-line Memory Module

URL = Uniform Resource Locator

SMTP = Simple Mail Transfer Protocol

POP3 = Post Office Protocol

IMAP = Internet Message Access Protocol

MTA = Message Transfer Agent

MSA = Mail Submission Agent

MUA = Mail User Agent