Anda di halaman 1dari 57

I.

 DOMAIN NAME SERVER (DNS)

Konfigurasi  Domain Name Server  biasanya terdiri dari   file konfigurasi, beberapa file zone 


dan file cache. Bagian dari jaringan name server yang bertanggung jawab dikenal sebagai 
zone. Zone berbeda dengan domain, di suatu dalam domain yang banyak anda dapat memiliki 
beberapa zone dimana tiap­tiap zone memiliki name server sendiri. Anda juga dapat memiliki 
satu layanan name server di beberapa zone. Dalam kasus ini tiap zone memiliki file zone 
masing­masing. File zone menyediakan record nama komputer dan alamat komputer yang 
berhubungan   dengan   komputer   yang   berada   di   dalam   domain   name   server   yang   menjadi 
tanggung jawabnya. Ada file zone untuk server jaringan dan mesin lokal sebagai tambahan 
ada juga file cache yang berisi daftar root server tempat domain server berhubungan.

1.1 Named.conf
File   konfigurasi   untuk   daemon   named   disebut   named.conf,   terletak   di   direktori   /etc.   File 
tersebut   menggunakan   sintaks   yang   fleksibel   yang   mirip   dengan   program   C.   Formatnya 
mudah untuk melakukan mengkonfigurasi zone, mengaktifkan fitur­fitur seperti akses kontrol 
list dan kategori pencatatan log. File named.conf terdiri dari perintah­perintah konfigurasi 
bind   yang   dibatasi   oleh   blok.   Dengan   pilihan­pilihan   spesifik   yang   terdaftar.   Perintah 
konfigurasi diikuti oleh argumen dan blok yang ditandai oleh tutup kurung kurawal.  Didalam 
blok terdapat baris pilihan dan input fitur­fitur. Tiap masukan dipisahkan oleh titik koma. 
Komentar dapat menggunakan sintaks C,C++ atau shell/perl seperti /* */, // atau #. Contoh di 
bawah ini menampilkan perintah zone diikuti oleh nama zone dan blok pilihan yang dimulai 
dengan buka kurung kurawal {.  tiap akhir pilihan diakhiri dengan titik koma. Pada akhir blok 
ditutup dengan tutup kurung kurawal yang diikuti juga dengan titik koma.

//a caching only nameserver config
//
zone “.”{
type hint;
file “named.ca”;};

Perintah   zone   digunakan   untuk   menunjukkan   domain   yang   dilayani   oleh   name   server. 
Masukkan kata kunci zone diikuti oleh nama domain yang dibuka dan ditutup dengan tanda 
kutip. Jangan tempatkan periode pada akhir nama domain.
Terdapat beberapa tipe zone yang dapat dipilih antara lain : master, slave, stub, forward dan 
hint.
Tipe master digunakan jika zone tersebut memegang otorisasi dan informasi utama dari zone 

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 1
tersebut. Tipe slave mengindikasikan bahwa zone tersebut memerlukan update secara berkala 
dari spesifik master name server . Slave dikenal juga sebagai secondary name server. Anda 
dapat menggunakan input tersebut jika name server beroperasi sebagai secondary name server 
untuk primary(master) domain name server lainnya. Zone stub hanya menyalin input name 
server lain, tidak semua zone. Zone forward akan mengarahkan semua permintaan ke name 
server   spesifik.   Zone   hint   digunakan   spesifik   untuk   mengatur   root   named   server   yang 
digunakan oleh semua domain name server internet. 
Anda   juga   dapat   melakukan   konfigurasi   spesifik   untuk   beberapa   pilihan   yang   akan 
menggantikan   tiap   pilihan   global   yang   diatur   oleh   perintah   pilihan.   Contoh   di   bawah   ini 
menggambarkan perintah zone sederhana untuk domain ristek.go.id. Dengan kelas internet, 
IN dan tipe master.

1.2 Panduan Langkah­langkah Konfigurasi
Mesin yang digunakan dalam contoh ini telah dikonfigurasi dan diberikan IP sebagai 
berikut:
Nama Komputer  :  ns
Nama Domain :  ristek.go.id
FQDN :  ns.ristek.go.id
Routable/IP Statis : 222.124.63.122
Non­Routeable IP :  192.168.1.226

Buka File /etc/named.conf. File harus dikonfigurasi sebagai berikut:
   //
// named.conf for Red Hat caching­nameserver 
//

options {
directory "/var/named";
dump­file "/var/named/data/cache_dump.db";
statistics­file "/var/named/data/named_stats.txt";
/*
 * If there is a firewall between you and nameservers you 
want
 * to talk to, you might need to uncomment the q uery­
source
 * directive below.  Previous versions of BIND always asked
 * q uestions using port 53, but BIND 8.1 uses an 
unprivileged
 * port by default.
 */
 // q uery­source address * port 53;
};

// 

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 2
// a caching only nameserver config
// 
controls {
inet 12.
70.0.1 allow { localhost; } keys { rndckey; };
};

zone "." IN {
type hint;
file "named.ca";
};

zone "localdomain" IN {
type master;
file "localdomain.zone";
allow­update { none; };
};

zone "localhost" IN {
type master;
file "localhost.zone";
allow­update { none; };
};

zone "0.0.12.
7in­addr.ar pa" IN {
type master;
file "named.local";
allow­update { none; };
};

zone 
"0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0
.ip6.ar pa" IN {
type master;
file "named.ip6.local";
allow­update { none; };
};
zone "255.in­addr.ar pa" IN {
type master;
file "named.broadcast";
allow­update { none; };
};

zone "0.in­addr.ar pa" IN {
type master;
file "named.zero";
allow­update { none; };
};

zone "ristek.go.id" IN {
type master;
file "ristek.zone";

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 3
};
zone "63.124.222.in­addr.ar pa" IN {
type master;
file "db.222.124.63";
};
include "/etc/rndc.key";

Penjelasan file /etc/named.conf

Options {
Bagian ini merupakan bagian file konfigurasi standar
};
zone “.”{
type hint;
file “named.ca”;
};
Blok ini juga merupakan bagian file konfigurasi standar. Setelah blok ini anda dapat memulai 
konfigurasi named.conf sesuai konfigurasi zone anda sebagai berikut:

zone "ristek.go.id" IN {
type master;
file "ristek.zone";
};

Kata kunci zone sudah ditulis di atas. Tulis nama zone diapit dengan tanda kutip. Nama zone 
harus merupakan nama domain anda. Baris pertama dalam blok mendefinisikan tipe zone 
yaitu master. Tipe master maksudnya bahwa dia merupakan name server yang independen 
yang maksudnya adalah bahwa tidak membutuhkan update dari name server lain dan jika 
ingin update dari name server lain harus dikonfigurasi dengan tipe slave. File menunjukkan 
nama file zone yaitu ristek.zone, tempat dimana anda mengkonfigurasi zone tersebut.

zone "63.124.222.in­addr.ar pa" IN {
type master;
file "db.222.124.63";
};

File konfigurasi ini digunakan untuk memetakan dari alamat komputer ke nama komputer.

Catatan:
 Jangan lupa untuk meletakkan titik koma(;) setelah tutup kurung kurawal di setiap blok 
zone
 jangan lupa untuk meletakkan titik koma setelah pernyataan di blok zone
 .zone pada nama file hanya merupakan kesepakatan nama dan anda dapat menggunakan 

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 4
kesepakatan nama sendiri untuk tujuan ini.
 Semua file yang disebutkan di named.conf harus ada di direktori spesifik pada pilihan 
blok {} dan harus dikonfigurasi sevcara benar.

Setelah melakukan konfigurasi file named.conf langkah selanjutnya adalah konfigurasi file 
zone. Pindah ke direktori spesifik yang disebutkan dipilihan blok {} file named.conf yaitu 
/var/named/chroot/var/named/

Mulai mengkonfigurasi file zone ristek.zone ( yang disebutkan di baris ketiga blok di file 
named.conf.
 $TTL    86400
@       IN SOA  ns.ristek.go.id.       admin.ns.ristek.go.id. (
                                        42              ; serial (d. 
adams)
                                        3H              ; refresh
                                        15M             ; retry
                                        1W              ; expiry
                                        1D )            ; minimum
                 IN NS          ns.ristek.go.id.
                 IN A            222.124.63.122
ns             IN A            222.124.63.122
www              IN A            222.124.63.122
ftp             IN A            222.124.63.122

Catatan:
 ns merupakan nama komputer yaitu nama dari mesin daemon named berjalan
 222.124.63.122 merupakan alamat komputer dari mesin ns yang telah didefinisikan
 www dan ftp merupakan nama komputer virtual. Sebagai contoh alamat lengkap dari 
vitual host www adalah www.ristek.go.id. Anda dapat menambahkan virtual host sesuai 
kebutuhan anda.
 Ketika   menulis   SOA,   tulis   dengan   format   namakomputer.namazone   (   nama   zone 
merupakan nama yang anda deklarasikan di file /etc/named.conf) pada contoh di atas 
pada   baris   pertama   adalah   ns.ristek.go.id   dimana   ns   merupakan   nama   komputer   dan 
ristek.go.id   adalah   nama   zone.   Tulis   nama   administrator   zone   dengan   format 
accountemail.namakomputer.namazone pada contoh di atas adalah admin.ns.ristek.go.id 
 Jangan lupa untuk meletakkan titik (.) setelah ns.ristek.go.id, admin.ns.ristek.go.id dan 
ns.ristek.go.id pada baris 2 dan 8.

Konfigurasi selanjutnya adalah zone reverse yang menterjemahkan dari alamat komputer ke 
nama komputer. Nama file yang digunakan pada contoh di atas adalah db.222.124.63.

 $TTL    86400
@       IN      SOA     ns.ristek.go.id. admin.ns.ristek.go.id.  (

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 5
                                      1997022700 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
         IN      NS      ns.ristek.go.id.
122      IN      PTR     ns.ristek.go.id.

Buka file /etc/resolv.conf dan tulis baris berikut:

search ristek.go.id
nameserver 222.124.63.122
nameserver 12.70.0.1

Catatan:
 search mendefinisikan nama domain.
 nameserver mendefinisikan alamat komputer dan juga alamat ip loopback.

Menjalankan daemon named:

Jalankan dns server dengan perintah skrip berikut.

/etc/init.d/named start

Anda dapat menjalankan, mematikan atau merestart daemon dengan meletakkan start, stop 
restart di akhir skrip /etc/init.d/named.

Mengecek DNS

Ada dua cara untuk mengecek apakah dns sudah terkonfigurasi dengan baik.

 Ping domain anda atau virtual host anda.

ping ristek.go.id
ping www.ristek.go.id

Jika anda mendapat reply ping berarti dns berjalan dengan baik.

 Menggunakan perintah nslookup atau dig:

nslookup ristek.go.id
dig ristek.go.id

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 6
II. APACHE WEB SERVER

2.1 Pengenalan Apache

World Wide Web merupakan aplikasi internet yang paling sukses dan merupakan komponen 
utama   dari   web   server.   Web   server   melayani   permintaan   user   dengan   mengembalikan 
permintaan halaman web kepada user. Dua aplikasi dibutuhkan untuk memproses permintaan 
tersebut yaitu web server dan web client. Protokol yang dikenal sebagai Hyper Text Transfer  
Protocol (HTTP) dibutuhkan untuk komunikasi antara klien dan server.
Menurut survei bulanan secure server netcraft yang tersedia di www.netcraft.com Apache web 
server saat ini menguasai pasar sebesar 68,01% dibandingkan dengan pesaing lain Microsoft 
20.56% dan Sun Microsystem 2.47%.
Apache Web Server merupakan bagian dari Apache Software Foundation yang mendukung 
banyak proyek­proyek open source seperti Ant, Spamassassin, struts, tomcat dan lain­lain. 
Versi Apache web server saat ini  yang digunakan sebagai tutorial adalah versi   2.2.0­5.1.2 
yang merupakan bawaan distro linux.

2.2 Instalasi
Apache sudah ada di tiap­tiap distribusi linux, gunakan perintah rpm ­qa | grep  httpd untuk 
mengkonfirmasi apakah apache sudah terinstall atau belum. Jika apache sudah terinstall dari 
source code maka perintah tersebut tidak berlaku.
Apache dapat dinstall manual dengan mendownload baik binari rpm maupun source code. 
Tutorial ini akan menunjukkan dua metode tsb.

2.2.1 Instalasi lewat rpm

1. Download versi apache terbaru dari http://httpd.apache.org/download.cgi

2. Jika sudah terinstall apache versi sebelumnya uninstall dengan perintah:

r pm ­e httpd

Install apache dengan perintah:

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 7
r pm ­ivh    httpd­2.2.0­5.1.2.r pm

3. Cek instalasi dengan perintah:

rpm ­q httpd

2.2.2 Instalasi lewat source
Beberapa pilihan dapat digunakan untuk melakukan konfigurasi apache.

Download Apache dari httpd.apache.org/download.cgi

#wget http://apache.mirror99.com/httpd/httpd­2.2.0.tar.gz

Buat direktori “/usr/local” bagian ini merupakan opsional dan dipakai hanya untuk tutorial ini 
saja.

Buka file kompresi:

#tar ­zxvf httpd­2.2.0.tar.gz ­C /usr/local
#cd /usr/local/httpd­2.2.0
#cd apache2

Jalankan configure dengan pilihan berikut:

#./configure –with­layout=Apache –prefix=/usr/local/apache2 –enable­
module=most –enable­mods­shared=most

Jalankan make untuk kompilasi:

#make

Install apache dengan perintah berikut:

#make install

2.3 Konfigurasi Apache
Jika   anda   menggunakan   apache   dari   disto   bawaan   linux   maka   kemungkinan   besar   akan 

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 8
terinstal di direktori /etc/httpd. Jika anda menginstallnya dari source seperti yang disebutkan 
di   atas   maka   kemungkinan   apache   akan   terinstall   di   direktori   /usr/local/apache2.   Sebagai 
acuan direktori instalasi default (/etc/httpd atau /usr/local/apache2) $APACHE_HOME akan 
digunakan untuk tutorial ini saja.
Apache berjalan sebagai daemon di backround proses, dimana server melayani secara berkala 
semua  permintaan. Port 80 merupakan port default di file konfigurasi apache, httpd.conf. 
Menjalankan apache di port 80 memerlukan akses sebagai root dan dapat dijalankan dengan 
perintah berikut.

#$APACHE_HOME/bin/apachectl start

Jika menggunakan apache bawaan distro kemungkinan direktori bin tidak berada di direktori 
$APACHE_HOME

Perintah lain yang dapat digunakan adalah:

#$APACHE_HOME/bin/apachectl stop
#$APACHE_HOME/bin/apachectl restart
#$APACHE_HOME/bin/apachectl status

Skrip startup httpd juga dapat digunakan untuk start, stop atau restart apache web server.

#/etc/init.d/httpd start

Apache   membaca   file   spesial   startup   httpd.conf   yang   mengandung   informasi   konfigurasi. 
Yang merupakan konfigurasi utama dan lokasi filenya dapat dikonfigurasi saat kompilasi atau 
dengan pilihan spesifik ­f $apachectl ­f /path/to/config/file

Konfigurasi Apache dibagi menjadi 3 bagian:

 global environment, digunakan untuk pengaturan server secara umum ( ServerType, 
ServerRoot, MaxClients, Listen, dll )
 main server, digunakan untuk merespon permintaan yang tidak termasuk dalam direktif 
global environment ( Port, User, Group, ServerName, DocumentRoot, dll )
 Virtual Host, digunakan untuk pembuatan virtual host baik yang menggunakan IP Based 
maupun Name Based

File   konfigurasi   dapat   dikonfigurasi   dengan   menempatkan   direktif­direktif.   Kebanyakan 


direktif   merupakan   bagian   umum   untuk   seluruh   server.   Tetapi   dapat   diubah   dengan 

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 9
menempatkan beberapa spesial direktif seperti <Directory>. <DirectoryMatch>, <Files> dan 
<Location> dan lain­lain

2.3.1 Menjalankan Apache

Untuk mengecek apakah file konfigurasi server benar atau tidak jalankan perintah

#apachectl configtest

Keluaran tampilan di atas adalah Syntax OK jika semua konfigurasi benar.

File konfigurasi apache httpd.conf mendefinisikan port web server berjalan yaitu standarnya 
port 80, jika anda ingin jalan di port lain, ubah port 80 kemudian restart apache webserver. 
Dan browse ke http://localhost. Jika konfigurasi benar makan di browser akan muncul “Test 
Page”

Catatan: Mulai Fedora core 3 ada paket spesial “SE LINUX” yang dapat memblok konfigurasi 
apache.   Pastikan   untuk   menonaktifkan   sebelum   mengecek   konfigurasi   kemudian   restart 
apache.

2.4 Konfigurasi Dasar Apache

Terdiri dari konfigurasi umum meliputi konfigurasi server, konfigurasi site, virtual host, log, 
access control dan autentifikasi.

2.4.1 Konfigurasi Server
Konfigurasi dasar server meliputi sebagai berikut:
Server Name: Mendefinisikan nama server dan port yang digunakan, dapat digunakan untuk 
redirection misal anda mempunyai komputer dengan nama merkurius.ristek.go.id tetapi di file 
record   DNS   adalah  www.ristek.go.id  sementara   anda   ingin   mengakses   dengan 
www.ristek.go.id maka Server Name dapat dikonfigurasi sebagai barikut:
ServerName www.ristek.go.id:80

Pendefinisian Server Name berguna untuk mencegah masalah pada saat start up. Direktif ini 

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 10
juga dapat digunakan di bagian virtual Host.
Listening Port: Mendefinisikan nomor port atau alamat komputer dan nomor port dimana web 
server berjalan untuk menerima permintaan. Jika hanya nomor port yang didefinisikan  maka 
server akan berjalan di port tersebut dan di semua alamat komputer. Jika tidak maka akan 
berjalan di alamat komputer dan nomor port yang spesifik.
Listen 80
[berjalan di port 80 dan semua interface yang tersedia]

Listen 222.124.63.122:80
[berjalan di port 80 dan ip 222.124.63.122]

2.4.2 Konfigurasi Site

DocumentRoot: Standar folder apache berada di /var/www/html dimana tempat menempatkan 
file­file HTML. Konfigurasi ini dapat diubah dengan menggunakan direktif DocumentRoot. 
Direktif ini juga bisa dipakai di bagian virtualhost.
DocumentRoot /var/www/html
DirectoryIndex: Jika  kita  menginginkan permintaan  ke direktori yang spesifik,  pilihan  ini 
mendefinisikan untuk melihat htttp://www.ristek.go.id/downloads/ dimana download adalah 
direktori yang dituju. Isi direktori tersebut dapat berupa index.html index.php dan lain­lain. 
Yang   perlu   jadi   catatan   adalah   bahwa   file   index   yang   pertama   kali   didefinisikan   akan 
dipanggil pertama kali.
DirectoryIndex index.html index.php index.txt

Konfigurasi   apache   di   atas   mendefinisikan   untuk   melihat   file   index.html   di   direktori 


downloads jika tidak ada file index.html maka akan dicari file index.php kemudian baru file 
index.txt.   Jika   semuanya   tidak   ditemukan   makan   tergantung   dari   pilihan   direktif   Options 
apakah dikonfigurasi dengan pilihan Indexes atau tidak. Direktif ini juga dapat digunakan di 
bagian virtualhost.
OptionIndexes:   Pilihan   ini   digunakan   untuk   konfigurasi   direktori.   Dimana   alamat   yang 
diminta   akan   dipetakan   ke   direktori  http://www.ristek.go.id/downloads  dan   jika 
dikonfigurasikan no DirectoryIndex atau file didalam DirectoryIndex tidak dapat ditemukan. 
Maka pilihan ini akan menggunakan format standar untuk direktori yang diminta:
<Directory “/var/www/html”>
Options Indexes
</Directory>

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 11
Konfigurasi ini akan mengatur index secara otomatis ke direktori “html” dan subdirektorinya. 
Direktif ini juga dapat digunakan untuk virtualhost.

2.4.3 Virtual Host
Virtual host menyediakan layanan untuk menjalankan lebih dari satu website di satu server 
tunggal. Apache mengizinkan untuk menjalankan lebih dari satu website di dalam satu server. 
Untuk menjalankan lebih dari satu website anda dapat menggunakan banyak daemon apache 
dimana tiap­tiap daemon menanggung satu website, atau anda dapat menggunakan virtual 
host. Menjalankan banyak daemon apache sangat tidak efesien dan sebaiknya dihindari karena 
dapat menggunakan virtual host.
2.4.3.1 Virtual Host berbasis IP
Pada konfigurasi ini mengizinkan untuk menjalankan banyak website dengan alamat komputer 
yang berbeda dalam satu server. Dimana tujuannya dapat dicapai dengan mempunyai banyak 
koneksi   jaringan   atau   menggunakan   virtual   interfaces.   Untuk   set   lebih   dari   satu   website 
misalnya   anda   mempunyai   2   buah   kartu   jaringan   dengan   Alamat   192.168.2.58   dan 
10.10.10.100   anda   dapat   mengkonfigurasi   website  http://www.ristek.go.id/account  di 
192.168.2.58 dan http://www.ristek.go.id/hr di 10.10.10.100
Contoh  konfigurasi di bawah ini virtual host berbasis IP, Nama komputer akan dipetakan 
meurut alamat komputernya.
<VirtualHost www.pagi.com>
DocumentRoot /vaw/www/html/pagi
</VirtualHost>
<VirtualHost www.malam.com>
DocumentRoot /var/www/html/malam
</VirtualHost>

Pastikan   bahwa   parameter   NameVirtualHost   diberi   tanda   pagar   sebagai   tanda   komentar. 
Konfigurasi   di   bawah   ini   mendefinisikan   bahwa   setiap   permintaan   klien   ke 
http://www.pagi.com  akan   memetakan   nama   komputer,   dimana     akan   diteruskan   ke 
192.168.2.58   yang   akan   meneruskan   ke   isi   direktori   yang   didefisikan   oleh   parameter 
DocumentRoot.
Operasi   yang   sama   dapat   dilakukan   apache   untuk  www.malam.com  dimana   alamat 
komputernya 10.10.10.100. nama komputer dan alamat komputer sebaiknya didefinisikan di 
file   /etc/hosts   di   mesin   web   server,   sebagai   tambahan   yang   telah   dibuat   di   DNS   server. 
Dimana   nantinya   klien   harus   mengakses   dengan   alamat  http://www.pagi.com/pagi  bukan 
dengan http://www.pagi.com
Contoh   yang   ditampilkan   membutuhkan   resolusi   DNS   Server   dimana   biasanya   akan 
memperlambat   seluruh   proses.   Mohon   dilihat   di  http://httpd.apache.org/docs/2.2/dns­

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 12
cavecast.html untuk informasi lebih lanjut. Latihan yang sebaiknya dilakukan adalah dengan 
mendefinisikan langsung Alamat komputer dibanding nama komputer di bagian Virtual Host.

<VirtualHost 192.168.2.58>
DocumentRoot /var/www/html/pagi
ServerName www.pagi.com
</VirtualHost>
<VirtualHost 10.10.10.100>
DocumentRoot /var/www/html/malam
ServerName www.malam.com
</VirtualHost>

Anda   membutuhkan  direktif tambahan  ServerName  permintaan  ke  pagi  dan malam  dapat 


dipetakan.  Jika tidak ada  servername  maka  Apache  akan mencoba mereverse  DNS  untuk 
mendapatkan nama komputer.
2.4.3.2 Virtual Host berbasis Nama
Virtual host berbasis nama mengizinkan banyak website dalam satu alamat komputer. Yang 
berbeda sekali dengan virtual host berbasis IP dimana anda membutuhkan alamat komputer 
untuk tiap­tiap website. Virtual host berbasis IP menggunakan acuan alamat komputer untuk 
mendefinisikan   ke   virtual   host   yang   benar   di   dalam   server.   Virtual   host   berbasis   name 
menggunakan acuan nama komputer untuk mendefinisikan nama komputer di header http. 
Virtual   Host   berbasis   nama   sangat   mudah   dikonfigurasi   dan   tidak   membutuhkan   banyak 
alamat   komputer   dimana   kita   bisa   bekerja   di   situasi   alamat   komputer   yang   terbatas. 
Dianjurkan   untuk   menggunakan   virtualhost   berbasis   nama   dibandingkan   dengan   yang 
berbasis   IP   kecuali   anda   mempunyai   alasan­alasan   khusus.   di   bawah   ini   adalah   contoh 
konfigurasi virtual host berbasis nama:
NameVirtualHost 192.168.2.58:80

<VirtualHost 192.168.2.58:80>
DocumentRoot /var/www/html/pagi
ServerName www.pagi.com
</VirtualHost>
<VirtualHost 192.168.2.58:80>
DocumentRoot /var/www/html/malam
ServerName www.malam.com
</VirtualHost>    
 
Direktif Namevirtualhost mendefinisikan secara khusus bahwa IP 192.168.2.58 harus berjalan 
di IP tersebut untuk segala permintaan yang datang. Anda dapat menggunakan * tetapi dalam 
kasus   yang   membutuhkan   kombinasi   konfigurasi   misal   komputer   mendukung   baik 
VirtualHost   berbasis   IP   dan   virtual   host   berbasis   nama   anda   membutuhkan   untuk 
mendefinisikan   Alamat   komputer   secara   spesifik   untuk   konfigurasi   virtual   host   berbasis 

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 13
nama. Jika anda berencana untuk menggunakan banyak port seperti misalnya   SSL makan 
definisikan   port   secara   spesifik.   Parameter   NameVirtualHost   harus   sama   dengan   bagian 
Virtual host untuk Virtual host berbasis nama.

 NameVirtualHost *

<VirtualHost *>
DocumentRoot /var/www/html/pagi
ServerName www.pagi.com
</VirtualHost>
<VirtualHost *>
DocumentRoot /var/www/html/malam
ServerName www.malam.com
</VirtualHost>    
 

2.4.4 Autentifikasi, Autorisasi dan Akses Kontrol
Autentifikasi menunjuk ke verifikasi untuk mengidentifikasi permintaan dari komputer atau 
user.   Otorisasi   adalah   proses   untuk     menjamin   akses   sesorang   untuk   mengakses   daerah 
dimana user diizinkan untuk itu.
Akses kontrol juga merupakan otorisasi tetapi menyediakan otorisasi di layer yang berbeda 
misal berbasis alamat komputer, nama komputer atau karakteristik khusus dari permintaan.
Pastikan   bahwa   modul­modul   yang   digunakan   sudah   terinstall   dan   diaktifkan   mohon 
menunjuk   ke  http://httpd.apache.org/docs/2.2/howto/auth.html  dan 
 http://httpd.apache.org/docs/2.2/howto/access.html  untuk melihat daftarnya.
   
Untuk   mengimplementasikan   mekanisme   keamanan,   pertama   kali   anda   harus   mengerti 
struktur direktori  apache. Dan konfigurasi apache biasanya dikonfigurasi menggunakan file 
httpd.conf   dimana   parameter   konfigurasi   diaplikasikan   untuk   semua   folder   web.   Kadang­
kadang anda membutuhkan kostumisasi konfigurasi untuk direktori khusus, URL, file, nama 
komputer dan lokasi. Contohnya jika anda menginginkan untuk membatasi beberapa bagian 
website untuk beberapa user. Apache menyediakan 2 pilihan dapat menggunakan <Directory> 
</Directory> di file konfigurasi httpd.conf atau menggunakan file spesial .htaccess yang akan 
ditempatkan di direktori tersebut. Secara konsep tidak ada perbedaan mengenai kedua metode 
tersebut.   Dimana   keduanya   memiliki   sintaks   dan   aplikasi   yang   sama.   Perbedaan   antara 
directory, file dan locasi dijelaskan di bawah ini.

<Directory /var/www/html/test>
 
     
 order Allow
  ,deny
 
 
     
 Deny from All
   
</Directory>
   Artinya adalah melarang akses ke direktori test dan sub direktorinya. Jadi akses ke URL 

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 14
 http://www.test.com  yang menunjuk ke direktori /var/www/html/test dilarang. Akses ke URL
    
 http://www.test.com/public  menunjuk ke direktori /var/www/html/all diizinkan.
   

<File private.html>
 
     
 Order Allow
  ,deny
 
 
     
 Deny From All
   
</File>
Artinya akses ke file private.html yang berlokasi di manapun dilarang.
<Location /private>
     
   order Allow
  ,Deny
 
 
     
 Deny From All
   
</Location>
Artinya   bahwa   akss   ke   url   yang   mengandung   kata   private   dilarang.   Akses   ke 
 http://www.test.com/private/public    dilarang   sementara   akses   ke  http://www.test.com/public
     
 diizinkan . 
Metode   .htaccess   sangat   mudah   dikonfigurasi.   Tempatkan   isi   file   .htaccess   di 
<Directory></Directory> pada file konfigurasi utama.

Nama file .htaccess dapat diubah dengan mengubahnya di direktif AccessNameFile pada file 
konfigurasi utama. Mengkonfigurasi apache untuk mengizinkan konfigurasi file untuk suatu 
direktori   dapat   dilakukan   dengan   menggunakan   parameter   AllowOverride   AuthConfig   di 
<Directory>   </Directory>.   Jika   anda   menginginkan   direktori   tertentu 
/var/www/html/public/restricted   untuk   dibatasi   anda   harus   mengizinkan   penggunaan   file 
.htaccess.  Konfigurasi file konfigurasi apache seperti contoh di bawah ini.
<Directory /var/www/html/public/restricted>
     
   AllowOverride AuthConfig
   
</Directory>

Definisikan   user   yang   mempunyai   hak   akses   ke   area   tersebut.   User   dan   password   akan 
didefinisikan di file spesial di suatu tempat yang tidak dapat diakses lewat web. File tersebut 
dapat dibuat dengan utilitas htpasswd yang merupakan bawaan apache.mirror9
#htpasswd ­c /etc/httpd/conf/passwd daus
New Password:
Retype New Password :
Adding Password for user daus

Buat   file   .htaccess   di   /var/www/html/public/restrcted   dimana   apache   akan   membaca   file 


konfigurasi  user dan password untuk mengizinkan akses daerah terbatas.
.htaccess
AuthType Basic

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 15
AuthName “Restricted Files”
AuthUserFile /etc/httpd/conf/passwd
req uire user daus

AuthType   mendefinisikan   tipe   autentifikasi   dan   basic   artinya   tidak   terenkripsi,   Authname 
mendefinisikan   realm   dimana   digunakan   sebagai   pengenal   sesi   sementara.   AuthUserFile 
mendefinisikan   tempat   file   password   dan   require   user   mendefinisikan   siapa   saja   yang 
mempunyai hak akses. Kadang­kadang akses dapat diberikan ke beberapa user. Hal ini dapat 
dilakukan dengan menggunakan require valid­user dimana akan mengizinkan akses ke area 
terbatas untuk siapa saja yang terdaftar di file password. 
Untuk   mempelajari   lebih   lanjut   mengenai   pembatasan   akses   berdasarkan   nama   komputer, 
alamat   komputer   dan   spesifik   karakter   tertentu.   Mohon   menunjuk   ke 
 http://httpd.apache.org/docs/2.2/howto/access.html    untuk   melihat   daftar   modul   yang  
dibutuhkan untuk diinstall dan diaktifkan.
Untuk   melakukan   kostumisasi   akses   berdasarkan   nama   komputer   dan   alamat   komputer 
gunakan   direktif   Allow   dan   Deny.   Direktif   order   dapat   juga   digunakan   untuk   kebutuhan 
tertentu yang ingin diimplementasikan. Sintaksnya adalah sebagai berikut:
Allow from Host
Deny From Host
Order Allow,Deny
Order Deny,Allow

Contohnya adalah sebagai berikut:
1.  Allow from 192.168.2.100 [Izinkan hanya alamat komputer ini saja] 
2.  Allow from 192.168.2.0/24 [Izinkan hanya jaringan komputer ini saja] 
3.  Allow from 192.168.2.100 192.168.2.200 [Izinkan hanya 2 komputer itu saja] 
4.  Allow From my.host.com 

Order mendefinisikan filter order yaitu:
Deny,Allow: pertama deny dan kemudian direktif allow dievaluasi. Akses diizinkan secara 
default berarti bahwa setiap klien yang ada di daftar direktif Allow Acess akan diizinkan 
untuk akses server.
Allow,Deny:  pertama  allow   dan  kemudian  direktif  deny  dievaluasi.   Akses   dilarang  secara 
default berarti bahwa semua klien yang tidak ada di dalam daftar deny Access akan dizinkan 
akses server.
Contohnya adalah direktori /var/www/html/localusers anda menginginkan hanya user lokal 
dengan alamat jaringan 192.168.2 saja yang bisa akses /var/www/html/localusers/ gunakan 

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 16
konfigurasi di bawah ini.
<Directory /var/www/html/localusers> 
 
     
      
   order Allow
  ,deny
 
 
     
 Allow from 1
  92.168.2.0/2 
4
</Directory>
Contoh konfigurasi lainnya:
<Directory /var/www/html/localusers >
 
     
 Order Allow
  ,Deny 
 
     
 Allow from 1
  92.168.2.0/2 
4
 
     
 Deny From 1
  92.168.2.1

8
</Directory>

Contoh tersebut akan mengizinkan akses semua komputer dalam jaringan 192.168.2.0/24 
kecuali 192.168.2.178. Semua permintaan lainnya akan dilarang secara default. Perubahan 
order dari Allow,deny ke deny allow akan mengizinkan hanya 192.168.2.178 yang bisa 
akses. Dimana allow akan dihapus oleh parameter deny.

2.4.5 Logging
Log   Apache  menyediakan  informasi  yang  komprehensif   dan  kostumisasi  untuk  kebutuhan 
analisis keamanan dan troubleshooting. Lokasi log apache secara default berada di direktori 
/var/log/httpd/
Ada beberapa tipe log apache:
Error log : log ini menyediakan informasi kesalahan ketika prose permintaan untuk kegunaan 
analisa. Lokasi dari log ini diatur oleh drektif ErrorLog pada file konfigurasi. Log error tidak 
dapat dikostumisasi.
Acces Log: record log ini berisi informasi yang sangat berguna seperti Alamat komputer, 
waktu, lokasi akses, informasi platform klien dan lain­lain. Access Log dapat dikostumisasi 
dan lokasi beserta isinya dapat diatur oleh direktif CustomLog

2.5 Contoh Konfigurasi 

Contoh konfigurasi website statis. Konfigurasinya adalah sebagai berikut:

Routeable Server IP 222.124.63.123
Non­routeable IP 192.168.2.1
78
domain name ristek.go.id
hostname www
FQDN www.ristek.go.id

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 17
Langkah­langkah:
 Buka file konfigurasi apache httpd.conf
 Atur Direktif DocumentRoot dan pastikan berada di /var/www/html
 Atur ServerName menjadi ristek.go.id:80
 Taruh semua dokumen web ke direktori /var/www/html jika nada mempunyai data 
web di /home/daus/web maka jalankan
 #mv /home/daus/web/* /var/www/html/
 Simpan konfigurasi apache, keluar dan restart apache 

Pastikan bahwa masukan dns www.ristek.go.id menunjuk ke alamat komputer anda. 

Cek website dengan mengakses www.ristek.go.id lewat browser.

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 18
III. MAIL SERVER

3.1 Konsep dan Cara Kerja Email
Email   (  electronic   mail  )   merupakan   suatu   bentuk   komunikasi   dengan   menggunakan 
perangkat elektronik seperti komputer. Mail server adalah Server yang melayani komputer­
komputer   dalam   suatu   jaringan   intranet,   ekstranet   dan   internet   dalam   bentuk   layanan 
pengiriman   dan   pengambilan   email.   Protokol   yang   biasa   digunakan   untuk   layanan   email 
adalah smtp ( simple mail transfer protocol ) untuk pengiriman email dan pop (post office 
protocol ) untuk pengambilan email.
Mail server bekerja dalam modus klien server . Aplikasi email dibedakan menjadi 3 macam:

• MTA ( mail Transfer Agent) berfungsi untuk mengirimkan email. Contoh aplikasi MTA 
antara lain: Sendmail, Postfix, Exim, qmail 
• MDA (Mail Delivery Agent) berfungsi mendistribusikan email yang datang ke MTA sesuai 
dengan mailbox masing­masing user
• MUA (Mail User Agent) berfungsi membaca dan membuat email. Contoh aplikasi MUA 
antara lain: Outlook Express, Eudora Mail, Netscape, Kmail, Evolution
Proses pengiriman email melalui beberapa tahapan antara lain :
 Pengirim menulis isi email pada MUA seperti evolution, kmail, mutt dan lain­lain
 MUA   akan   meneruskan   email   tersebut   ke   SMTP   Server   yang   membuka   port   25 
dimana SMTP Server bisa kita sebut sebagai MTA
 Kemudian MTA akan membaca alamat tujuan dari email tersebut
 Kalau email ditujukan ke alamat lokal ( domain yang sama ) maka email tersebut akan 
langsung dikirimkan ke alamat yang dituju
 Kalau email ditujukan bukan ke alamat lokal maka MTA akan mencari MTA tujuan 
dari alamat tersebut dengan menggunakan pencarian database DNS
 Kemudian   MTA   akan   berkomunikasi   dengan   MTA   tujuan   kemudian   mengirimkan 
email tersebut ke MTA tujuan
 email tersebut akan disimpan dalam storage MTA
 Kemudian   email   tersebut   dapat   diambil   oleh   penerima   dari   MTA   dengan 
menggunakan protokol pop.

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 19
3.2 Format Mailbox
  Pada umumnya format mailbox ada dua macam yaitu:
 Format Mbox
Pada format ini setiap email yang datang atau keluar akan ditambahkan secara otomatis 
file   sehingga   ukurannya   akan   bertambah   besar   secara   otomatis,   dimana   terdapat  
kekurangan pada format mbox yaitu jika pada saat pengambilan email dari server koneksi 
terputus maka email client (Mail User Agent) akan mengulang kembali dari awal proses 
pengambilan email yang dapat menyebabkan file mbox menjadi rusak.
 Format Maildir
Pada format Maildir email ditempatkan di suatu direktori dibandingkan di sebuah file  
sehingga lebih reliabel dan handal dibandingkan dengan format mbox.

3.3 Memilih Mail Transport Agent (MTA)
Mail transport Agent  adalah aplikasi server yang berfungsi untuk mengirimkan email dari 
mail server lokal ke mail server remote. Sangat baik mengganti MTA anda dengan MTA yang 
paling  baik di Linux. Survei perbandingan di bawah ini akan membantu anda memahami 
manfaat   dari   MTA   yang   akan   anda   gunakan   dimana   pilihan   anda   membutuhkan   tingkat 
performansi dan keamanan yang lebih baik dari standar sistem yang anda miliki. Tiap­tiap 
MTA memiliki keunikan fitur masing­masing tetapi di sini kami akan menggunakan postfix 
dan qmail yang mempunyai fitur tingkat keamanan yang baik, kecepatan pengiriman yang 
tinggi   dan   mudah   dikonfigurasi.   Anda   bebas   memilih   kesukaan   anda.   Informasi   yang 
diberikan di  bawah ini  semoga menolong anda  untuk memutuskan MTA  yang akan   anda 
gunakan.

3.3.1 Sendmail
Sendmail merupakan internet MTA tertua di dunia yang sudah memiliki banyak pengganti 
sebagian   besar   distribusi   linux   memasukkannya   dalam   distro   mereka.   Sendmail   dapat 
digunakan untuk banyak alamat site dengan pilihan­pilihan yang rumit, tetapi konfigurasinya 
sangat sulit terutama bagi pemula. Tidak begitu aman dan cepat jadi menggunakan sendmail 
sama   saja   anda   kembali   ke   masa   lalu.   Sendmail   mempunyai   reputasi   yang   panjang   yang 
menjadi   mimpi   buruk   bagi   banyak   administrator,   sulit   dipahami,   sulit   dikonfigurasi   dan 
banyak   memiliki   lubang   keamanan.   Kunjungi   situs   resmi   sendmail   di 
http://www.sendmail.org yang didalamnya banyak dokumentasi mengenai sendmail yang anda 
butuhkan untuk mengkonfigurasi sendmail.

3.3.2 Smail v3.2
Smail merupakan MTA pertama yang mencoba menggantikan sendmail. Lebih simpel dan 
konfigurasinya   lebih   mudah   dipahami   dibanding   sendmail   juga   lebih   aman.   Beberapa 

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 20
distribusi linux memaketkannya bersama distribusi mereka. Smail memiliki dukungan yang 
baik untuk penggabungan protokol tcp/ip dan UUCP yang merupakan nilai tambah mereka. 
Smail  juga lebih efisien  untuk pengiriman dengan jumlah banyak. Sama seperti sendmail 
Smail juga memerlukan konfigurasi tambahan untuk standar konfigurasi smail.

3.3.4 Postfix
Postfix merupakan mail server yang aman, cepat, handal dan reliabel yang dibangun oleh 
pakar keamanan IBM wietse vienema, saat ini postfix sudah banyak dipaketkan di hampir 
semua distribusi Linux. Konfigurasinya yang mudah dipahami dan mirip dengan sendmail 
menjadikan MTA ini salah satu pilihan utama pengganti sendmail.

3.3.5 qmail
qmail merupakan Mail server yang aman, handal dan reliabel yang menjadi salah satu pilihan 
utama   pengganti   sendmail.   Qmail   memiliki   tingkat   keamanan   yang   baik   yang   menjadi 
perhatian utama saat mendesain dan membangun qmail. Walaupun berulangkali diperbaiki 
untuk membuatnya lebih aman. Semua arsitektur sendmail dapat digantikan oleh  qmail 
karena   saat   pendesainan   keamanan   merupakan   tujuan   utama.   Qmail   sangat   handal   dapat 
performansi   dan   reliabel   karena   arsitektur   dalamnya   dalam   pengiriman   email.   Ini 
dimungkinkan karena pendekatan modular yang bersih dan simpel.

3.4 Local Delivery Agents (LDAs)
Tidak seperti sistem operasi lain Linux tidak memiliki  Local Delivery Agent  yang built­in. 
Suatu   program   yang   dibutuhkan   untuk   mengirimkan   email   ke   lokal   sistem   seperti   lmail, 
procmail atau deliver di setiap distribusi Linux tetapi saat ini  Local Delivery Agent  sudah 
terdapat di setiap MTA seperti sendmail  

3.5 User Agent Administration

3.5.1 Mutt
Anda   semestinya   tidak   mengalami   kesulitan   mengkompilasi,   menginstal   dan   menjalankan 
mutt.   User­user   qmail   dapat   menggunakan   tambalan   atau   menjalankannya   dengan   opsi   ­f 
untuk membaca email lokal mereka. Jika mutt mengirimkan pesan error  “unknown   terminal 
error” saat pengupdatean, kompilasi kembali mutt.

3.5.2 Elm 
Kompilasi,  instalasi dan menjalan elm sangat mudah di Linux. Untuk informasi lebih lanjut, 
lihat   file   sumber   dan   file  instruksi  instalasi.   Elm  dan   filternya  membutuhkan  mode   2755 

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 21
(group mail) dengan mode /var/spool/mail 755 dan grup mail.

3.5.3 Mailx
Jika anda tidak memiliki program email lokal mailx, dapatkan mailx dari Slackware 2.1.0 atau 
di atasnya, yang didalamnya terdapat implementasi mailx 5.5. jika anda membangunnya dari 
file sumber, mailx v5.5 dikompilasi dengan tanpa tambalan di Linux jika anda menggunakan 
perintah instalasi pmake. Hapus file lama edmail dari SLS1.00 dan gantikan dengan mailx.

3.6 Postfix Mail Server
Postfix  adalah Mail Server yang dibangun dari proyek wietse vienema seorang pakar keamanan 
komputer di IBM.

3.6.1 Instalasi Postfix Mail Server
Kita dapat mengecek apakah postfix sudah terinstall atau belum di linux denganperintah berikut

   # r pm ­q postfix
   postfix­2.2.8­1.2

3.6.2 Konfigurasi postfix
file konfigurasi postfix terdapat di /etc/postfix/main.cf. Konfigurasi yang perlu diedit untuk dapat 
membangun Mail Server antara lain:

Edit file konfigurasi dengan perintah:

#vi /etc/potfix/main.cf

• myhostname, baris ini mendefinisikan nama komputer Mail Server Anda misal
myhostname=mail.ristek.go.id
• mydomain, baris ini mendefinisikan nama domain anda misal
mydomain=ristek.go.id
• myorigin, baris ini mendefinisikan tampilan from dari header email misal
myorigin=$mydomain
• inet_interface, baris ini mendefinisikan alamat jaringan mana saja postfix menerima email 
misal
inet_interface=all
• mydestination, baris ini mendefinisikan alamat yang menjadi tujuan ke mail server misal

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 22
mydestination=$myhostname, $mydomain 
• mynetworks, baris ini mendefinisikan jaringan mana saja yang boleh memakai mail server ini 
misal
mynetworks= 192.168.1.0/24, 12.
70.0.0/8

3.6.3 Menjalankan Postfix

Setelah selesai jalankan  postfix dengan  melakukan perintah berikut:

# ser vice postfix start

3.6.4 Test Postfix
Kemudian coba tes kirim email dari user idris ke user daus sebagai berikut:

# telnet mail.ristek.go.id 25
Trying 192.168.1.2...
Connected to mail.ristek.go.id.
Escape character is '^]'.
220 mail.ristek.go.id ESMTP Postfix
mail from: idris@ristek.go.id
250 Ok
rcpt to: daus@ristek.go.id
250 Ok
data
354 End data with <CR><LF>.<CR><LF>
tes
.
250 Ok: q ueued as F152A37C95
q uit
221 Bye
Connection closed by foreign host.

3.7 POP/IMAP Server
Merupakan Server yang melayani permintaan pengambilan email di server.

3.7.1 Instalasi Pop/Imap Server
Kita   dapat   mengecek   apakah   Pop/Imap   sudah   terinstall   atau   belum   di   linux   denganperintah 
berikut.

     # r pm ­q imap

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 23
3.7.2 Konfigurasi POP/IMAP Server

Kita   harus   mengedit   file   konfigurasi   Pop/Imap   yaitu   file   /etc/xinetd.d/imap   dan   file 
/etc/xinetd.d/ipop3, baris yang harus diubah adalah disable = yes menjadi disable = no

 File /etc/xinetd.d/imap

ser vice imap
{
        socket_type             = stream
        wait                    = no
        user                    = root
        server                  = /usr/sbin/imapd
        log_on_success  += HOST DURATION
        log_on_failure  += HOST
        disable                 = no
}

 File /etc/xinetd.d/ipop3

ser vice pop3
{
        socket_type             = stream
        wait                    = no
        user                    = root
        server                  = /usr/sbin/ipop3d
        log_on_success  += HOST DURATION
        log_on_failure  += HOST
        disable                 = no
}

3.7.3 Menjalankan POP/Imap Server

Jalankan service xinetd sebagai berikut.

# ser vice xinetd start

3.7.4 Test POP/Imap Server

Kemudian tes server pop sebagai berikut.

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 24
telnet mail.ristek.go.id 110
Trying 192.168.1.2...
Connected to mail.ristek.go.id.
Escape character is '^]'.
+OK POP3 mail.ristek.go.id v2001.78rh server ready
user daus
+OK User name accepted, password please
pass dauspassword
+OK Mailbox open, 1 messages
q uit
+OK Sayonara
Connection closed by foreign host.

3.8 Qmail Mail Server
qmail adalah aplikasi Server email atau biasa disebut MTA ( Mail Transfer Agent ) Yang 
berjalan pada platform Unix.
qmail diciptakan oleh Prof. D.J. Bernstein seorang profesor matematika di universitas illinois 
Chicago, ia membuat qmail karena tidak puas dengan kinerja Sendmail, MTA yang telah lama 
dibuat tetapi mempunyai banyak sekali kekurangan.

3.8.1 Mail Server Package
Untuk   menginstal   Mail   Server   Qmail   diperlukan   software­software   sebagai   berikut,   anda 
dapat mendownloadnya di www.qmailtoaster.com.

• daemontools­toaster

• autorespond­toaster

• spamassassin­toaster

• maildrop­toaster­devel

• qmailadmin­toaster

• libdomainkeys­toaster

• qmail­toaster

• courier­imap­toaster

• send­emails­toaster

• qmailmrtg­toaster

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 25
• isoqlog­toaster

• ucspi­tcp­toaster

• qmail­pop3d­toaster

• courier­authlib­toaster

• ezmlm­toaster

• squirrelmail­toaster

• ripmime­toaster

• vqadmin­toaster

• maildrop­toaster

• ezmlm­cgi­toaster

• simscan­toaster

• vpopmail­toaster

• control­panel­toaster

• clamav­toaster

3.8.2 Instalasi qmail
Masuk   ke   direktori   temapat   anda   mendownload   paket­paket   qmail   kemudian   Jalankan 
perintah­perintah berikut ini menggunakan user “root” untuk melakukan instalasi:

1. Cek Dependensi Paket
#sh fdr50­deps.sh

2. Cek Dependensi Perl
#sh fdr50­perl.sh

3. Buat database Vpopmail ( Pastikan MySQL sudah berjalan, service mysql status )
#sh mysql­setup.sh
sebelumnya edit dulu bagian
#vi /mysql­setup.sh
MYSQLPW=passwordmysql

4. Mulai Instalasi Paket
#sh fdr50­install­script.sh

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 26
3.8.3 Configuration
3.8.3.1 Qmail Configuration
File konfigurasi terletak di /etc/tcprules.d/tcp.smtp. Isi file tersebut adalah
sebagai berikut:
#vi /etc/tcprules.d/tcp.smtp
12.
70.0.1:allow,RELAYCLIENT="",QMAILQUEUE="/var/qmail/bin/simscan"
192.168.1.:allow,RELAYCLIENT="",QMAILQUEUE="/var/qmail/bin/simscan"

### Default ###
:allow,BADMIMETYPE="",BADLOADERTYPE="M",CHKUSER_RCPTLIMIT="15",CHKUSER
_WRONGRCPTLIMIT="5",QMAILQUEUE="/var/qmail/bin/simscan"
3.8.3.2 File Konfigurasi /var/qmail/control
#vi /var/qmail/control/rcpthost
mail.ristek.go.id
ristek.co.id

#vi /var/qmail/control/defaultdomain
ristek.go.id

#vi /var/qmail/control/me
ristek.go.id

#vi /var/qmail/control/locals
mail.ristek.go.id

#vi /var/qmail/control/smtpgreeting
RISTEK

#vi /var/qmail/control/databytes
31457280

#vi /var/qmail/control/blacklist
­r zen.spamhaus.org ­r bl.spamcop.net

#vi /var/qmail/control/simcontrol
:clam=yes,spam=yes,spam_hits=5,attach=.mp3:.src:.bat:.pif:.exe:.avi:.
bat:.bin:.chm:.com:.cpl:.dll:.htm:.html:.inf:.lnk:.mov:.mpeg:.mpg:.ms
i:.ocx:.pl:.vb:.vbs:.vxd:.wav:.wmf:.wxf:.xlt

3.8.3.3 File Konfigurasi vpopmail

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 27
#vi /home/vpopmail/etc/defaultdomain
ristek.go.id

#vi /home/vpopmail/etc/defaultdomains
ristek.go.id

Membuat Domain
/home/vpopmail/bin/vadddomain ristek.goid

Membuat User
/home/vpopmail/bin/vadduser daus

3.8.3.4 Konfigurasi webmail
/usr/share/sq uirrelmail/config/conf.pl

Sq uirrelMail Configuration : Read: config.php (1.4.0)
­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
Main Menu ­­
1.  Organization Preferences
2.  Server Settings
3.  Folder Defaults
4.  General Options
5.  Themes
6.  Address Books
.
7  Message of the Day (MOTD)
8.  Plugins
9.  Database
10. Languages

D.  Set pre­defined settings for specific IMAP servers

C   Turn color off
S   Save data
Q   Quit

Command >>
A. Pilih 1 Organization Preferences
Sq uirrelMail Configuration : Read: config.php (1.4.0)
­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
Organization Preferences
1.  Organization Name      : RISTEK
2.  Organization Logo      : ../images/sm_logo.png
3.  Org. Logo Width/Height : (308/70)

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 28
4.  Organization Title     : RISTEK
5.  Signout Page           :
6.  Top Frame              : _top
.
7  Provider link          : http://www.ristek.go.id/
8.  Provider name          : Sq uirrelMail

B. Pilih 2 Server Setting


Sq uirrelMail Configuration : Read: config.php (1.4.0)
­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
Server Settings

General
­­­­­­­
1.  Domain                 : ristek.go.id
2.  Invert Time            : false
3.  Sendmail or SMTP       : SMTP

A.  Update IMAP Settings   : localhost:143 (uw)
B.  Update SMTP Settings   : localhost:25

R   Return to Main Menu
C   Turn color off
S   Save data
Q   Quit

Command >>

3.8.4 Menjalankan qmail
Pertama yang harus dilakukan adalah menjalankan servis qmail.
Perintah untuk menjalankan servis qmail:
# /etc/init.d/qmail start

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 29
IV. DHCP SERVER

4.1 Server DHCP

DHCP Server adalah server yang mampu memberikan IP Address secara otomatis/dinamis 
kepada komputer klien sehingga komputer­komputer dalam jaringan bisa terhubung. Dalam 
sebuah LAN DHCP server melakukan alokasi alamat komputer, dan mengirimkan parameter 
konfigurasi jaringan seperti gateway, netmask, DNS dan lain­lain. DHCP mendukung tiga 
macam mekanisme pemberian alamat komputer yaitu

 Alokasi Otomatis : Alamat komputer tetap untuk setiap klien

 Alokasi Dinamis : Alamat komputer diberikan dengan periode waktu tertentu oleh DHCP 
Server

 Alokasi manual : Network Administrator secara langsung memberikan alamat komputer 
ke             klien­klien 

 Fedora Core 5 menyediakan aplikasi server DHCP yang disebut DHCPD.

4.2 Instalasi DHCP
Pertama kali harus kita pastikan bahwa DHCPD telah terinstal pada komputer Anda. Anda dapat 
mengeceknya dengan perintah berikut.

#r pm ­q dhcpd 

Jika muncul pesan di atas berarti dhcpd anda telah terinstall dan siap dikonfigurasi. 

4.3 Konfigurasi DHCP 
File konfigurasi dhcp berada di /etc/dhcpd.conf untuk itu kita perlu mengedit file tersebut.

ddns­update­style interim;
ignore client­updates;

subnet 192.168.0.0 netmask 255.255.255.0 {

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 30
# ­­­ default gateway
        option routers                  192.168.0.1;
        option subnet­mask              255.255.255.0;

        option nis­domain               "domain.org";
        option domain­name              "domain.org";
        option domain­name­servers      192.168.1.1;

        option time­offset              ­18000; # Eastern Standard 
Time
#       option ntp­servers              192.168.1.1;
#       option netbios­name­servers     192.168.1.1;
# ­­­ Selects point­to­point node (default is hybrid). Don't change 
this unless
# ­­ you understand Netbios very well
#       option netbios­node­type 2;

        range dynamic­bootp 192.168.0.128 192.168.0.254;
        default­lease­time 21600;
        max­lease­time 43200;

        # we want the nameserver to appear at a fixed address
        host ns {
                next­server marvin.redhat.com;
                hardware ethernet 12:34:56:78:AB:CD;
                fixed­address 20.
7
15.42.254;
        }
}

Keterangan :

 option routers : Mendefinisikan default gateway untuk router
 option netmask : Mendefinisikan netmask untuk klien
 option domain­name­server : Mendefinisikan DNS server yang digunakan klien
 range : Jangkauan alamat komputer yang akan dialokasikan untuk klien.

4.4 Menjalankan DHCPD 

Anda dapat mengaktifkan server dhcpd dengan perintah berikut ini:

#/etc/init.d/dhcpd start

4.5 Melihat status DHCPD 
Untuk melihat klien yang aktif jalankan perintah berikut

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 31
# dhclient
Internet Systems Consortium DHCP Client V3.0.3­RedHat
Copyright 2004­2005 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/products/DHCP

Listening on LPF/eth0/00:40:f4:96:4f:03
Sending on   LPF/eth0/00:40:f4:96:4f:03
Sending on   Socket/fallback
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 5
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 11

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 32
V. LDAP SERVER 
 

5.1 LDAP

Lightweight Directory Access Protocol (LDAP)  adalah sekumpulan protokol terbuka yang digunakan 
untuk mengakses informasi  yang tersimpan secara terpusat melalui suatu jaringan.
LDAP berbasiskan pada   standar X.500  untuk   directory sharing, tetapi sedikit lebih kompleks dan 
membutuhkan resource yang lebih. Karena itulah, LDAP terkadanag dianggap sebagai "X.500 Lite", 
artinya LDAP  bagaikan X.500 yang ringan.
Seperti  halnya  X.500,  LDAP  mengorganisasikan  informasi  secara  hirarki  dengan  menggunakan 
direktori  direktori  data.  Direktori  direktori  ini  dapat  menyimpan  berbagai  macam  informasi  dan 
bahkan  dapat  digunakan  seperti  NIS  (Network  Information  Service),  yang  memungkinkan  siapapun 
dapat mengakses account mereka dari komputer manapaun dalam suatu jaringan yang terdapat LDAP 
server.
Dalam beberapa kasus, LDAP digunakan untuk keperluan sederhana sebagai   Address Book directory, 
yang memungkinkan user atau pengguna dengan mudah mengkases contact information user lainnya. 
Namun  LDAP  sangat  fleksibel  dari  pada  Address  Book  tradisional.  karena  LDAP  mampu 
mereferensikan suatu query informasi ke LDAP server LDAP server  lainnya didunia. Bagaimanapun 
juga  ,  LDAP  umumnya  digunakan  dalam  individual  organizations,  seperti  universitas,  departemen 
pemerintahan ,  dan perusahaan perusahaan.
LDAP  bekerja  dalam  konsep   client  server  system.   LDAP  server  dapat   menggunakan   berbagai 
macam  jenis   database  backend  untuk  menyimpan  direktori  data,  yang  masing­masing  dioptimize 
untuk  proses  operasi  membaca   yang  cepat  dan  mudah.  Ketika  aplikasi  LDAP  client   terhubung  ke 
suatu  LDAP  server,  client  dapat  melakukan  query  suatu  direktori  data  ataupun  mencoba 
memodifikasinya. Dalam kasus query, server akan menjawab query dari client  atau jika server tidak 
dapat  menjawab  secara  lokal,  maka  server  dapat  mereferensi  ke  suatu  LDAP  server  yang  memiliki 
jawaban.  Jika  client  mencoba  memodifikasi  informasi  suatu   direktori  data  LDAP,  server 
memverifikasi  bahwa  user  benar­benar  memiliki  ijin  untuk  melakukan  perubahan  dan   kemudian 
menambahkan atau mengupdate informasi.

5.2 Istilah dalam LDAP

Sebelum lebih jauh mempelajari LDAP, maka ada baiknya kita pahami dan mengerti beberapa istilah 
dalam LDAP, sebagai berikut:
       entry — suatu entry   adalah sebuah unit  tunggal dalam sebuah direktori LDAP.   Setiap entri 

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 33
didefinisikan menggunakan  suatu uniq  Distinguished Name (DN).

     attributes — Attribute secara langsung diasosiasikan dengan suatu entry. Sebagai contoh , sebuah 
organisasi  direpresentasikan  sebagai  sautu  LDAP  entry.  Atribut­atribut  yang  diasosiasikan  dengan 
organisasi  seperti  fax  number,  alamat  dan  seabagainya.  Orang/manusia  juga  dapat  direpresentasikan 
sebagai suatu entri dalam direktori LDAP, atribut untuk orang/manusia seperti telephone   dan email 
address.  Beberapa  atribut  diperlukan,  tetapi  ada  juga  yang  opsional.  Suatu  objectclass  adalah 
sekumpulan definisi atribut­atribut yang diperlukan dan yang opsional untuk setiap entri. Definisi­
definisi  Objectclass    dapat   ditemukan  dalam  berbagai  macam  file  schema,  yang  terletak  dalam 
direktori /etc/openldap/schema/ .

       LDIF  —   LDAP  Data  Interchange  Format  (LDIF)  adalah  suatu  file   ASCII  text    yang 
merepresentasikan entri­entri LDAP. Format file inilah yang digunakan untuk mengimport data ke 
LDAP server. Format isi file LDIF seperti berikut ini:

[<id>]
dn:  <distinguished  name>
<attrtype>:  <attrvalue>
<attrtype>:  <attrvalue>
<attrtype>:  <attrvalue>

Setiap entri dapat mengandung beberapa pasangan  <attrtype>:   <attrvalue> .
Suatu   baris kosong (blank line) menunjukkan akhir dari suatu entri.

Sebagai  catatan:  Semua  pasangan   <attrtype>:    <attrvalue>,    harus  didefinisikan  sesuai  dengan 
definisi yang ada dalam file­file schema.
Suatu  nilai  yang  dibatasi  dengan  tanda    "<"  dan   ">"   adalah  sebuah  variabel  (artinya  bisa  diubah 
sesuai kebutuhan) yang dapat diset ketika entri   LDAP baru dibuat. Aturan ini tidak berlaku untuk 
<id>.  Suatu  <id>   adalah  sebuah  nomor  yang  ditentukan  oleh  aplikasi  yang  Anda  gunakan  untuk 
mengedit entri.

5.3 OpenLDAP  daemon  dan Utiliti

OpenLDAP  adalah software yang mengimplementasikan protokol LDAP yang tersedia secara gratis 
dan terbuka. Paket­paket software OpenLDAP terdiri dari beberapa library dan tool berikut ini:

openldap — berisi library­library yang diperlukan untuk menjalankan aplikasi
OpenLDAP server  dan  aplikasi client.

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 34
openldap­clients  —  berisi  tool  dalam  bentuk  perintah   command  line  untuk 
menampilkan dan memodifikasi direktori data suatu LDAP server.

openldap­servers  —  berisi  aplikasi  server  dan  utiliti  lainnya  yang  diperlukan  untuk 
mengkonfigur dan menjalankan LDAP server.

Terdapat  dua  buah  server  yang  ada  dalam  paket   openldap­servers   yaitu  :   Standalone  LDAP 
Daemon  (/usr/sbin/slapd)   dan    Standalone  LDAP  Update  Replication  Daemon(/usr/sbin/slurpd). 
slapd daemon adalah standalone LDAP server sedangkan slurpd.
daemon  digunakan untuk sinkronisasi perubahan­perubahan dari satu LDAP server ke LDAP  server 
lainnya  dalam  suatu  jaringan.  slurpd  daemon  hanya  digunakan  ketika  membentuk  multiple  LDAP 
server

5.4 File­file konfigurasi OpenLDAP

File­file  konfigurasi  OpenLDAP  terinstall  pada  direktori   /etc/openldap/.Berikut  ini  beberapa 


direktori dan file konfigurasi penting OpenLDAP:

/etc/openldap/ldap.conf — Ini adalah file konfigurasi untuk seluruh aplikasi client yang 
menggunakan  librari­librari  OpneLDAP  seperti    ldapsearch,  ldapadd,  Sendmail, 
Evolution, dan Gnome Meeting.
/etc/openldap/slapd.conf — Ini adalah file konfigurasi server OpenLDAP (slapd daemon) .

/etc/openldap/schema/   —  ini  adalah  subdirektori  yang  berisi  file­file  schema  yang 
diperlukan oleh server OpenLDAP (slapd daemon).

5.5 Konfigurasi OpenLDAP server

Untuk menggunakan LDAP server,   sebelumnya Anda harus melakukan konfigurasi   terlebih dahulu 


sesuai  dengan  skenario  Anda.  Untuk  itu  dapat  Anda  lakukan  dengan  mengedit  file  konfigurasi 
OpenLDAP  server  yaitu  file  /etc/openldap/slapd.conf,  didalam  file  ini  ada  beberapa  parameter 
yang perlu diset sesuai skenario database direktori LDAP yang akan Anda buat. Berikut ini beberapa 
parameter yang perlu Anda set:
Parameter    suffix   untuk  menentukan  nama  domain  LDAP  server  yang  menyediakan  informasi 
direktori data LDAP:

suffix "dc=ristek,dc=go,dc=id"

Parameter  rootdn adalah   Distinguished Name (DN) untuk user yang memiliki hak penuh terhadap 

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 35
akses control dan administrasi LDAP server. User rootdn dapat dianggap sebagai user
root untuk direktori LDAP. Dalam file konfigurasi slapd.conf, baris   rootdn didefinisikan dengan 
nilai seperti berikut ini:

rootdn "cn=Manager,dc=ristek,dc=go,id"

Jika  Anda  berniat   mempopulasikan(menambah  entri)   direktori  LDAP   melalui  jaringan, 


isilah/definisikan   parameter   rootpw  dengan  password  yang  terenkripsi  untuk  menjaga  keamanan 
LDAP server . Untuk membuat password terenkripsi gunakanlah perintah slappasswd seperti berikut 
ini:
slappasswd

Ketika perintah slappaswd dieksekusi maka akan muncul prompt password, Anda ketiklah password 
yang  Anda  inginkan  .  Perintah  slappasswd  ini  akan  menghasilkan  string  pasword  yang  terenkripsi 
pada  shell  prompt.  Selanjutnya  Anda  kopi  password  terenkripsi  tersebut  ke  dalam  file 
/etc/openldap/slapd.conf tepatnya pada baris parameter rootpw seperti berikut ini:

rootpw {SSHA}5IKI5ZaMnfou7Y1tvE+aMmPrcIlPoTGd

Setelah  melakukan  konfigurasi  OpenLDAP  server  ,  maka  OpenLDAP  server  dapat  kita  jalankan 
dengan perintah berikut ini:

# /etc/init.d/ldap start

5.6 Mempopulasikan entri ke LDAP server

Sebelum kita mempopulasikan entri­entri data   ke LDAP server, kita harus menyusun terlebih dahulu 
hirarki direktori data LDAP yang akan kita bangun ini, sebagai contoh dalam buku ini kita
akan  membangun  database  direktori  LDAP  untuk  menyimpan  informasi  (entri  data)  Address  Book 
organisasi Ristek.

Membuat File LDIF:

Sekarang kita buat dahulu File LDIF untuk mendefinisikan atribut­atribut setiap entri. Buatlah file 
LDIF dengan nama “data.ldif” dan  isi file tersebut  seperti berikut ini:
#root hirarki direktori ldap

dn:dc=ristek,dc=go,dc=id objectclass: top

objectclass:dcObject objectclass: organization
dc: ristek
o: Departemen Riset dan Teknologi

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 36
dn:ou=Telematika,dc=ristek,dc=go,dc= id 
objectclass: organizationalUnit

ou: Telematika

#sub organisasi  Robotik
dn: ou=robotik,dc=ristek, dc=go,dc=id objectclass: organizationalUnit
ou: robotik

#entry 1

dn: cn=firdaus, ou=telematika, dc=ristek,dc=go,dc=id objectclass: person
objectclass: organizationalperson
objectClass: inetorgperson ou: telematika
cn: firdaus
sn: Tjahyadi homePhone: 8987654 title: Kepala Seksi
mail: daus@ristek.go.id

#entry 2
dn: cn=idris, ou=robotik, dc=ristek, dc=go,dc=id objectclass: person
objectclass: organizationalperson
objectClass: inetorgperson ou: robotik
cn: idris
sn:mohammad homePhone: 7775678 title: Kepala sub Seksi
mail: idris
    
 @ristek.go.id
 

Dan untuk entri data lainnya silahkan Anda tambahkan dalam file LDIF tersebut, Jika sudah selesai
membuat file LDIF maka selanjutnya kita bisa mulai mempopulasikan entri­entri tersebut ke LDAP
server dengan perintah berikut ini:

ldapadd ­x ­D "cn=Manager,dc=ristek,dc=go,dc=id" ­f data.ldif ­W

Menguji menampilkan entri data yang sudah dipopulasikan:
Cek atau coba  tampilkan isi database direktori LDPA dengan perintah berikut ini:
#ldapsearch ­x ­b "dc=ristek,dc=go,dc=id"

Anda  dapat  juga  menguji  menampilkan  entri  data  yang  ada  didalam  database  direktori  LDAP 
menggunakan  Tools  Address  book  viewer/search  yang  Ada  atau  disertakan  dalam  aplikasi­aplikasi 
Email Client (MUA) seperti Outlook Express, Evolution dan lain­lain.

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 37
VI. SAMBA SERVER

6.1 Samba Server
Samba   Server   adalah   server   yang   berfungsi   untuk   menjembatani   sharing   file,   direktori   dan 
printer antara komputer linux dengan komputer windows. Samba menggunakan protokol SMB 
(Server Message Block untuk menyediakan file dan printer sharing.
Samba mempunyai fungsi sebagai 
• File dan Print Services
• Authentification & Authorization
• Name Resolution
• Browsing

6.2 Instalasi Samba
Kita  dapat  mengecek  apakah  samba  sudah   terinstall atau  belum di  linux  dengan perintah 
berikut

    # r pm ­qa | grep samba

6.3 Konfigurasi Samba
File konfigurasi sanba adalah smb.conf   berada di rektori /etc/samba/ untuk itu kita perlu 
mengedit file tersebut, gunakan editor seperti vi, pico, joe dll untuk mengedit file smb.conf

6.3.1 Konfigurasi samba sebagai 'Anonymous Read Only File server'

Berikut  ini  contoh  konfigurasi  samba  sebagai  Anonymous  Read  Only  File  server.  Konfigurasi 
seperti ini dimaksudkan bila Anda menginginkan menyediakan share direktori yang ada di
komputer linux (samba server) agar dapat diakses oleh siapapun dalam network tanpa perlu proses
authentication  dan  authorization.  Namun  share  direktori  ini  hanya  untuk  dibaca  saja  (read  only). 
Untuk itu lakukan pengeditan   ulang terhadap file konfigurasi default samba yang biasanya bernama 
/etc/samba/smb.conf .  Ada beberapa parameter atau atribut yang harus disesuaikan
dengan skenario atau maksud konfigurasi tersebut. Diantaranya yang perlu diset dengan nilai baru
yaitu sebagai berikut:

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 38
[global]

workgroup = ristek
netbios name = server

samba server string = Samba server 
security = share
hosts allow = 192.168.1. 12.
7

[data]
path = /mnt/data

comment = Ini share folder Data  public = yes
read only = yes  browseable = yes
Konfigurasi yang dicontohkan di atas yang ditulis hanya parameter yang perlu didefinisikan ulang
dan  paramater  tambahan  yang  menunjukkan  sharename   yang  baru  yaitu  share  [DATA]  yang  lokasi 
direktorinya di /mnt/data (direktori ini harus ada). Selanjutnya restart service samba, kemudian coba 
Anda gunakan smbclient sebagai berikut:

#smbclient ­L //server
password: <enter saja>

Maka  akan  tampak  share  [DATA]  sebagai  sahrename  yang  terdapat  pada  samba  server  Anda. 
Kemudian coba diakses share tersebut , gunakan lagi tool smbclient sebagai berikut:

#smbclient //server/data
password: <enter saja>

6.3.2 Konfigurasi samba sebagai 'Anonymous Read Write File server'

Berikut  ini  contoh  konfigurasi  samba  sebagai  Anonymous  Read  Write  File  server.  Konfigurasi 
seperti ini dimaksudkan bila Anda menginginkan menyediakan share direktori yang ada di
komputer  linux  (samba  server)  agar  dapat  diakses  oleh  siapapun  dalam  network  tanpa  perlu  proses 
authentication dan authorization. Namun share direktori ini tidak sekedar hanya untuk dibaca saja
(read only) tetapi dapat ditulis (writeble). Konfigurasi jenis ini mirip dengan read only file server. 
Untuk itu lakukan pengeditan  ulang terhadap file konfigurasi samba yang biasanya bernama
/etc/samba/smb.conf .  Ada beberapa parameter atau atribut yang harus disesuaikan dengan skenario atau 
maksud konfigurasi tersebut. Diantaranya yang perlu diset dengan nilai baru yaitu:

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 39
[global]

workgroup = ristek
netbios name = server

samba server string = Samba server 
security = share
hosts allow = 192.168.1. 12.
7

[data]
path = /mnt/data

comment = Ini share folder Data  public = yes
read only = no browseable = yes
force user = data
force group = data

Selanjutnya , jika direktori /mnt/data belum ada buat dahulu sebagai berikut:

#mkdir /mnt/data

Lalu  buatlah  user  sistem linux  dengan  nama  data, dan  rubah ownership  direktori  data menjadi  milik 
user data, sebagai berikut:

#adduser data

#chown data.data /mnt/data ­R

Kemudian jadikan user  data sebagai user samba dengan tool smbpasswd, sebagai berikut:
# smbpasswd ­a data

Dan  akhirnya  restart  service  samba  ,  kemudian  coba  akses  dengan  tool  smbclient  ,  dan  coba  buat 
direktori  baru  didalam  share  [DATA].  Jika  berhasil  maka  benarlah  bahwa  share  [DATA] 
dapat ditulis (writable).
#smbclient //server/data password: <enter saja> smb\>mkdir tes

Maka  selanjutnya  Anda  dapat  mengakses  isi  dari  share  data  seperti  layaknya  mengakses 
direktori di linux melalui commandline.

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 40
6.3.3 Konfigurasi samba sebagai 'Restricted File server'

Berikut  ini  contoh  konfigurasi  samba  sebagai  Restricted  File  server.  Konfigurasi  seperti  ini 
dimaksudkan bila Anda menginginkan menyediakan share direktori yang ada di komputer linux
(samba server) agar dapat diakses oleh user atau komputer yang sudah diberi ijin, user­user
tersebut  harus  memberikan  username  dan  password  dalam  mengakses  share  tersebut.  Artinya  share 
tersebut nantinya bersifat private, siapapun yang mengakses harus melalui proses authentication. Namun 
share direktori ini tidak sekedar hanya untuk dibaca saja (read only) tetapi juga dapat ditulis
(writeble). Konfigurasi jenis ini mirip dengan anonymous read write file server. Untuk itu lakukan 
pengeditan  ulang terhadap file konfigurasi samba yang biasanya bernama  /etc/samba/smb.conf .
Ada  beberapa  parameter  atau  atribut  yang  harus  disesuaikan  dengan  skenario  atau  maksud 
konfigurasi tersebut. Diantaranya yang perlu diset dengan nilai baru yaitu sebagai berikut:

[global]

workgroup = ristek
netbios name = server

samba server string = Samba server 
security = user
hosts allow = 192.168.1. 12.
7

[data]
path = /mnt/data

comment = Ini share folder Data  public = no
valid users = data
read only = no browseable = yes
force user = data
force group = data

Selanjutnya , jika direktori /mnt/data belum ada buat dahulu sebagai berikut:

#mkdir /mnt/data

Lalu  buatlah  user  sistem linux  dengan  nama  data, dan  rubah ownership  direktori  data menjadi  milik 
user data, sebagai berikut:

#adduser data

#chown data.data /mnt/data ­R

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 41
Kemudian jadikan user  data sebagai user samba dengan tool smbpasswd, sebagai berikut:
# smbpasswd ­a data

Dan  akhirnya  restart  service  samba  ,  kemudian  coba  akses  dengan  tool  smbclient  ,  dan  coba  buat 
direktori  baru  didalam  share  [DATA].  Jika  berhasil  maka  benarlah  bahwa  share  [DATA] 
dapat ditulis (writable).
#smbclient //server/data password: <enter saja> smb\>mkdir tes

Maka selanjutnya Anda dapat mengakses isi dari share data seperti layaknya mengakses direktori 
di linux melalui commandline.

6.3.4 Konfigurasi samba sebagai 'Primary Domain Controller'

Berikut  ini  contoh  konfigurasi  samba  sebagai  Primary  Domain  Controller.  Konfigurasi  seperti  ini 
dimaksudkan bila Anda menginginkan menyediakan authentication dan authorization terpusat, dimana 
samba server akan berperan sebagai domain controller.   Ada beberapa parameter atau atribut yang harus 
disesuaikan dengan skenario atau maksud konfigurasi tersebut. Diantaranya yang perlu diset dengan nilai 
baru yaitu sebagai berikut:
[global]

# smb.conf is the main Samba configuration file. You find a full 
commented

# version at /usr/share/doc/packages/samba/examples/smb.conf if the
# samba­doc package is installed.
# Date: 2005­09­13
[global]
workgroup = RISTEK netbios name = SERVER
 map to guest
logon path = \\%L\profiles\%U
logon drive = P:
add machine script = /usr/sbin/useradd ­c Machine ­d /dev/null ­s 
/bin/false %m$
domain logons = Yes domain master = Yes local master = Yes os level = 
75
preferred master = Yes security = user
encrypt password = Yes
[homes]
comment = Home Directories valid users = %S
browseable = No read only = No inherit acls = Yes
[netlogon]

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 42
comment = Network Logon Ser vice path = /var/lib/samba/netlogon write 
list = root
[profiles]
comment = Network Profiles Service path = /var/lib/samba/profiles
read only = No create mask = 0600
directory mask = 0700
inherit acls = Yes
[printers]
comment = All Printers path = /var/tmp printable = Yes
create mask = 0600
browseable = No

Lalu set password user root samba ,sebagai berikut:

# smbpasswd ­a root

Sebagai  catatan  jika  direktori  share  profile  dan  netlogon  belum  ada  maka  Anda  harus  membuatnya 
terlebih dahulu, sebagai berikut:

# mkdir ­p /var/lib/samba/netlogon

# mkdir ­p /var/lib/samba/profiles

# chmod 1
777 /var/lib/samba/profiles

# /etc/init.d/smb restart

Direktori share netlogon dimaksudkan sebagai direktori yang dapat digunakan untuk menyimapn
script yang dapat dieksekusi ketika user logon ke domain melalui komputer windows. Dan direktori
share profiles dimaksudkan sebagai direktori yang digunakan untuk menyimpan profiles sistem 
windows.  Selanjutnya  coba  konfigurasi  client  windows(Xp)  agar  pada  bagian  network  identification 
diset  untuk  join ke  domain  “RISTEK”.  Jika  berhasil  maka  restart  skomputer  windows   dan  coba 
masuk kesistem windows dengan memilih login ke network.

6.4 Menjalankan samba

Untuk menjalankan samba lakukan perintah berikut:
[root@daus root]# service smb start

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 43
VII. PROXY SERVER

7.1 Proxy Server
Proxy   Server   adalah   server   internet   yang   mampu   menyediakan   internet   browsing   untuk 
komputer­komputer   client   yang   tidak   terhubung   ke   internet   secara   langsung   (memiliki   ip 
public).

7.2 Squid Proxy Server 
Squid adalah Proxy server yang dibangun dari komunitas internet yang dikomandani oleh Duane 
Wessel.

7.3 Instalasi Squid Proxy Web Server
Kita dapat mengecek apakah squid sudah terinstall atau belum di linux dengan perintah berikut:
# r pm ­qa | grep sq uid

7.4 Konfigurasi Squid
File   konfigurasi   squid   adalah   squid.conf   karena   kita   melakukan   konfigurasi   agar   squid 
diinstall di direktori /etc/squid maka file squid.conf berada di /etc/squid/squid.conf untuk itu 
kita perlu mengedit file tersebut, gunakan editor seperti vi, pico, joe dll untuk mengedit file 
squid.conf.

Item­item yang perlu kita konfigurasi antara lain:
1. http_port
http_port mendefinisikan nomor port dimana squid akan berjalan, secara default squid akan 
berjalan   di   port   3128.   Jika   kita   akan   mengubah   port   tersebut   ke   port   lain   misal   8080 
definisikan di file squid.conf sebagai berikut:

http_port 8080

2. cache_mgr
Cache mgr mendefinisikan alamat email admin squid, defaultnya adalah webmaster, jika kita 
ingin mengubah ke alamat email kita, bisa didefinisikan sebagai berikut:

cache_mgr daus@ristek.go.id

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 44
3. cache_effective_user dan cache_effective_group
Bagian di atas menggambarkan user dan group yang akan menjalankan squid. Secara default 
user dan group yang menjalankan squid adalah nobody, kita dapat mengubahnya ke user dan 
group yang lain ( misal squid ) sebagai berikut:

cache_effective_user sq uid
cache_effective_group sq uid

4. visible_hostname
Bagian di atas menggambarkan hostname dari squid server, kita bisa menggantinya dengan 
hostname squid server kita sebagai berikut:

visible_hostname proxy
.daus.or.id

5. cache_dir
Bagian   di   atas   mendefinisikan   letak   direktori   yang   akan   digunakan   sebagai     tempat 
penyimpanan halaman­halaman web yang telah kita akses. Kita bisa mendefinisikan jenis 
filesistemnya   misalnya   ufs,   lalu   diektori   penyimpanan   halaman   web   misal   di   /cache 
kemudian ukuran cache dalam MB misal 100 lalu jumlah subdirektori level pertama misal 
16 dan jumlah subdirektori level kedua misal 256 barisnya kan sperti berikut:

cache_dir ufs /var/spool/sq uid 100 16 256

6. acl namanetwork src ip/netmask, http access allow namanetwork, http access deny all

Bagian di atas untuk melakukan filtering dari network berapa saja yang boleh mengakses 
proxy server kita misal LAN kita mempunyai jaringan 192.168.1.0/24 maka jaringan tsb saja 
yang boleh mengakses proxy server maka konfigurasinya adalah sebagai berikut:

acl dausnet src 192.168.1.0/24
http_access allow dausnet
http_access deny all

Ingat   selalu   menutup   konfigurasi   filtering   dengan   http_access   deny  all   supaya   hanya   dari 
jaringan yang kita ijinkan saja proxy dapat digunakan.
Akhirnya kita telah selesai mengkonfigurasi.
Untuk menjalankan squid lakukan perintah berikut:

# ser vice sq uid start

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 45
VIII. FIREWALL

8.1 Firewall (iptables)
Firewall  mengisolasi  sebuah  segment  dari  topologi  jaringan  internet  (disebut  juga  jaringan  lokal  / 
Local Network) dari jaringn internet dan mengendalikan semua lalu lintas paket data yang menuju dan 
yang meninggalkan jaringan lokal.
Untuk  mengendalikan  lalu  lintas  jaringan  setiap  koneksi  antara  jaringan  lokal  dengan  jaringan 
internet  harus  dilengkapi  dengan  firewall.  Tujun  dari  Firewall  adalah  untuk  memeriksa  dan 
mengendalikan  semua  lalu  lintas  paket  data  antara  jaringan  lokal  dan  jaringan  internet.  Lalu  lintas 
paket data harus ditangani , dengan cara demikian semua lalu lintas paket data yang memiliki potensi 
"membahayakan" jaringan lokal dapat di deteksi dan dihentikan dan jika perlu di "log" ( dicatat dan 
ditandai dalam sebuah file "log" ). Lalu lintas paket data yang "membahayakan" untuk jaringan lokal 
ditentukan atau didefinisikan oleh kebijakan keamanan (security) yang diadopsi untuk suatu jaringan.
Di sisi  lain  jika jaringan diamankan/dijaga oleh firewall maka hanya ada beberapa komputer(host) 
saja  yang  dapat  diakses  secara  langsung  dan  zone  yang  beresiko  dapat  dikurangi  oleh  firewall  itu 
sendiri.

8.1.1 Klasifikasi Firewall
Sebagaimana  telah  disebutkan  di atas  bahwa  firewall  memeriksa  semua  paket  data  yang  menuju  dan 
meninggalkan  jaringan  lokal  (Local  Network)  dan  menyeleksi  paket­paket  data  yang  tidak  sesuai 
dengan kebijakan atau aturan kemanan yang diterapkan pada jaringan lokal.
Ingatlah  tentang model tujuh lapisan protokol  TCP/IP standard ISO. Pemeriksaan paket data  (packet 
inspection) dapat terjadi pada lapisan­lapisan tersebut. Tetapi pemeriksaan paket tersebut sebagian besar 
diimplementasikan  pada  lapisan  aplikasi  (Application  layer)  oleh  firewall  lapisan  aplikasi 
(Application  layer  firewalls)  dan  pada  lapisan  jaringan  (  Network  layer)  oleh  firewall  lapisn 
jaringan (Network layer firewalls).

Communication Layers
Application
Presentation
Session
Transport
Network
Data Link
Physical

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 46
Jika kita berbicara tentang serangkaian protokol TCP/IP firewall lapisan aplikasi (Application layer 
firewalls)  biasa  disebut  sebagai  aplikasi  gateway  (Application  Gateways)  atau  Proxy(Dual  Homed 
host)  dan  firewall  lapisan  jaringan  (Network  layer  firewalls)  disebut  Filtering  Routers  atau 
Screening Routers (selanjutnya firewall lapisan jaringan ini biasa disebut Packet Filter).
Dari  penjelasan  tadi  maka  firewall  dapat  di  klasifikasikan  menjadi  dua  jenis  yaitu:  Proxy  dan 
Screening  Router.  Berikut  ini  tabel  yang  mengilustrasikan  perbedaan  antara  Proxy  dan  Screening 
Router:

Screening Router Dual Homed host
(Packet Filter) (Proxy)

Memfilter/menyeleksi paket­paket IP Memfilter/menyeleksi protokol
Routing antar jaringan Tidak melakukan routing antar jaringan
Mendukung semua protokol Tidak mendukung semua protokol
Hanya memfilter header dari sebuah paket Dapat memfilter content

Membutuhkan hardwre  minimal Memerlukan hardwre maksimal

8.1.2 Mekanisme Firewall di Linux

Kernel Linux saat ini (<= kernel 2.4) menyediakan default mekanisme firewall yaitu iptables yang 
menggantikan  ipchains    sebagai  default  mekanisme    firewall  pada  kernel  2.2.  Sebagian  besar 
distribusi linux saat ini telah menggunakan iptables sebagai default firewall­nya.

8.2 Tool Administrasi firewall (iptables)

Iptables  saat  ini    menggunakan  table­table  yang  berbeda  untuk  aksi­aksi  yang  berbeda.  Yang  paling 
umum digunakan adalah table filter dan table nat. Table filter digunakan untuk packet filtering dan 
table nat digunakan untuk menampilkan
network address translation.

Rule­rule  aktual  disimpan  dalam  chains.  Ada  lima  buah  built­in  chains  yaitu  INPUT,  OUTPUT, 
FORWARD, PREROUTING, dan POSTROUTING. Tetapi user dapat
juga mendefinisikan chian sendiri sesaui kebutuhan.

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 47
8.2.1 Sintaks iptables

Sintak iptables hampir sama dengan ipchains.

iptables [­t table ] <action> [options] [pattern] [­j target]

action, menentukan aksi yang ditampilakn pada table
­A  CHAIN menambahkan sebuah rule ke sebuah chain
­D  CHAIN  menghapus sebuah rule dari sebuah chain
­L CHAIN menampilkan daftar rule dari sebuah chain
­F CHAIN menghapus semua rule dari sebuah chain
pattern, menspesifikasikan kapan rule­rule sesuai
­s <ip­address> sesuai dengan source address paket
­p <protocol> sesuai dengan protokol (tcp,udp,icmp)
­dport <port> sesuai dengan port tujuan
target,  mendefinisikan  apa  yang  akan  terjadi  dengan  paket  target­target 
basic (DROP, ACCEPT)
target ­target  extension (LOG,REJECT, CUSTOM CHAIN)

Contoh perintah­perintah  iptables

Sebuah rule iptables dapat menspesifiksikan sumber paket (­s), tujuan paket ­d) , protokol (­p), dan 
port.  Sebagai  contoh  ,  untuk  memblok  (deny)  seuatu  paket  yang  datang  dari  IP  address 
192.168.0.254 , sebgai berikut:

iptables ­t filter ­A INPUT ­s 192.168.0.254 ­j DROP

filter adalah default table jika option ­t tidak disertakan.

Jika  tanda  "!"  disertakan  didepan  ip  address  sumber  atau  tujuan  ,  ini  menyatakan  negasi  dari  ip 
address tersebut.

iptables ­t filter ­A OUTPUT ­d ! 192.168.0.254 ­j DROP

Rule di atas memblok semua  paket dari local komputer firewall yang ditujukan ke semua ip address 
kecuali ke ip address 192.168.0.254.

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 48
Incoming atau Outgoing interface dapat di spesifikasikan sebagai berikut:

iptables ­t filter ­A INPUT ­s 192.168.0.251 ­i eth1 ­j DROP

Rule di atas memblok semua paket dari 192.168.0.251 yang datang pada interface eth1.

Untuk memblok paket­paket protokol icmp  dari jaringan kelas C 192.168.24.0 :

iptables ­t filter ­A INPUT ­s 192.168.24.0/255.255.255.0 ­p icmp 
­j DROP

Untuk memblok  semua paket yang ditujukan ke port 80 :

iptables ­t filter ­A INPUT ­s ! 192.168.24.0/24 ­p tcp ­­dport 80 
­j DROP

Rule­rule suatu chian dapat juga disisipkan  dengan aksi ­I.

Menampilkan daftar rule suatu chain:

iptbles ­t filter ­L INPUT

Jika chain tidak disertakan maka akan menampilkan daftar seluruh rule dari semua chain.

Menghapus  rule  ketiga  dari  chain  INPUT.  Gunakan  nomor  urut  rule  pada  chain  tersebut    atau 
menggunakan sintak yang sebenarnya:

iptables ­t filter ­D INPUT 3
iptables ­t filter ­D INPUT ­s 192.168.0.254 ­j DROP

Rule­rule dapat dihapus atau "flushed" dari satu atau lebih chain dengan perintah

iptables ­t filter ­F

Seluruh chain dan rule­rule tidak dapat dikelola secara permanent artinya pada saat sistem reboot akan 
hilang. Pada RedHat linux dan distribusi­distribusi linux   yang menggunakan init script SysV   dapat 

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 49
menggunakan  script  iptables  untuk  menyimpan  dan  memuat  ulang  seluruh  chain  dan  rule  yang  ada 
sebelumnya.  Sebagai  contoh  ,  setelah  membuat  perubahan  terhadap  chain,  simpanlah  ke  dalam  file  / 
etc/sysconfig/iptables dengan menjalankan script berikut:

/etc/rc.d/init.d/iptables save

atau
service iptables save

Untuk menjamin rule­rule yang anda buat dapat diimplementasikan ulang pada saat boot , jalankan perintah 
berikut:

chkconfig iptables chkconfig ipchains ­­del

8.2.2 iptables dan NAT

Network Address Translation dapat ditampilkan oleh kernel 2.4 dalam bentuk  satu dari dua buah cara 
, yaitu: source NAT (SNAT) dan destination NAT (DNAT).
DNAT sering digunakan untuk membelokkan  (redirect) paket yang datang ke lokasi lain, seperti ke 
mesin proxy(squid proxy server).  SNAT digunakan untuk menyembunyikan source address dari paket 
dengan cara memetakan ulang source address paket yang keluar ke IP address komputer yang lain atau 
rentang address
yang lain. Kernel 2.4 secara otomatis melakukan  reverse translate semua paket­paket
NAT yang dimaksud.
Salah satu jenis SNAT adalah IP masquerading , yang memungkinkan beberapa komputer terkoneksi 
dengan  internet  tanpa  harus  menggunakan  atau  memiliki  IP  address  yang  dikenal  atau  diakui  di 
internet. Biasanya komputer gateway menyediakan masquerading dengan menggunakan iptables untuk 
membuat seolah­olah paket­paket komputer lokal  yang keluar dari  jaringan lokal ke internet  berasal
dari gateway itu sendiri.

Untuk mengimplementasikan ip masquerading lakukan hal­hal sebagai berikut:
Gunakan iptables untuk mensetup ip masquerading, contoh:

iptables ­t nat ­A POSTROUTING ­s 192.168.0.0/24 ­o eth0 ­j 
MASQUERADE

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 50
Untuk  menetapkan  destination  NAT  untuk  keperluan  membelokkan  paket  web  secara  transparan  yang 
datang pada interface eth2 ke proxy server, jalankan perintah berikut:

# iptables ­t nat ­A PREROUTING ­p tcp ­m multiport ­­dport 
80,443 ­i eth2 ­j DNAT ­­to­destination <proxy_IP_Address>

Untuk merubah source  address melalui SNAT menjadi   ip  address 192.168.0.33  dengan port 


1024 sampai 65535, gunkan perintah berikut:

iptables ­t nat ­A POSTROUTING ­p tcp ­o eth1 ­j SNAT ­­to 
192.168.0.33:1024­65535

Contoh  perintah  di atas  akan  menyebabkan  semua  paket  tcp  yang  keluar  melalui  interface  eth1  akan 
memiliki  source  address  dan  port  yang  diterjemahkan  menjadi    ip  address  192.168.0.33  dn  port  1024 
sampai 65535.

Jika  anda  telah  mahir  dan  memahami  bagaimana  mekanisme  firewall  pada  sistem  operasi  linux 
maka tidaklah merugikan jika anda kemudian mencari dan
menggunakan  aplikasi  atau  tool  yang  dapat  membantu  dan  memudahkan  anda  dalam  mengelola  dan 
memelihara firewall di linux yang menggunakan iptables. Di dalam dunia open source banyak sekali 
aplikasi administrasi firewall di linux yang berbasiskan iptables, salah satu diantaranya yang akan kita 
bahas dalam moudul ini adalah "shorewall" (h  tt
   p:
   /  / w ww
        
.s ho   r  e w
     a l  l    .n   e t  ).

8.3 Administrasi firewall dengan Shorewall

Shoreline  Firewall  atau  lebih  dikenalnya  dengan  istilah  shorewall  adalah  tool  tingkat  tinggi  yang 
digunakan  untuk  konfigurasi  netfilter/iptables  (firewall  di  linux).  Untuk  implementasi  firewall 
dengan shorewall Anda harus mengkonfigurasi beberapa file konfigurasi shorewall seperti file zones, 
interfaces, policy, masq, dan rules. Semua
file konfigurasi shorewall terletak dalam folder /etc/shorewall. Untuk konfigurasi
shorewall ikuti langkah­langkah berikut ini:

Langkah  pertama,  edit  file  /etc/shorewall/shorewall.conf  untuk  mengenable  atau  mengaktifkan 


shorewall,  carilah  parameter  “STARTUP_ENABLED”,  kemudian  set  parameter  tersebut  sebagai 
berikut:
STARTUP_ENABLED=Yes

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 51
8.3.1 Cek Instalasi shorewall
Kita bisa cek apakah shorewall terinstal dengan perintah
#r pm ­q shorewall 

8.3.2 Konfigurasi shorewall
File konfigurasi shorewall terletak di direktori /etc/shorewall. File yang penting dan diubah 

sesuai dengan kebutuhan adalah,

• interfaces

• masq

• policy

• rules

Masing­masing isi file tersebut adalah,
1. /etc/shorewall/interfaces
Konfigurasi  ini digunakan untuk  menentukan nama jaringan untuk setiap interface yang  ada 

dalam   computer   server.   Dalam   hal   ini   jaringan   “loc”   dihubungkan   pada   interface   eth1,   dan 

jaringan internet  “net”, pada interface eth0.

loc     eth1    detect
net     eth0    detect

2. /etc/shorewall/masq
Untuk melakukan NAT pada semua trafik paket dari jaringan local ke jaringan internet.
eth0   eth1

3. /etc/shorewall/policy
File konfigurasi ini digunakan untuk menentukan kebijakan dasar dari firewall yang dibangun. 

Yaitu,

• Trafik dari “loc” ke semua tujuan akan diterima.

• Trafik dari “firewall/proxy” ke semua tujuan akan diterima.

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 52
• Trafik dari internet “net” ke semua tujuan akan di ditolak.

• Semua trafik yang tidak termasuk pada kebijakan di atas akan ditolak.
loc             all             ACCEPT
fw              all             ACCEPT
net             all             DROP            info
all             all             REJECT          info

4. /etc/shorewall/rules
File konfigurasi ini adalah kebijakan­kebijaksaan khusus di luar policy yang telah ditentukan 

pada file konfigurasi “policy”.

8.3.3 Test
Untuk menjalankan dan menghentikan firewall, gunakan perintah berikut,

# /etc/init.d/shorewall start
# /etc/init.d/shorewall stop

Gunakan kedua perintah ini jika terjadi perubahan pada file konfigurasi shorewall.

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 53
IX. ASTERISK

9.1 Pengantar
Komunikasi telepontidak berubah secara drastis sejak pertama kali ditemukan akhir tahun 
1800.   Teknologi   baru   seperti   sirkuit   digital   dan   caller   ID   telah   berhasil   mengembangkan 
penemuan tersebut, tetapi dasar fungsionalnya tetap sama. Bertahun­tahun, Provider layanan 
telekomunikasi mencoba berbagai macam cara inovasi untuk mengembangkan berbagai jenis 
layanan yang mereka tawarkan. Termasuk nomor bebas pulsa, call return dan call forwarding. 
Secara   umum   pengguna  tidak  tahu  bagaimana  cara  kerja  layanan  tersebut.  Tetapi  mereka 
mengetahui dua hal yaitu: Telepon yang digunakan tetap sama dan mereka dikenakan biaya 
untuk setiap penambahan layanan.
Pada tahun 1990, Jumlah orang yang bekerja di lingkungan riset, baik pendidikan maupun 
institusi perusahaan mulai menaruh keseriusan untuk membawa layanan suara dan video lewat 
jaringan IP, terutama di intranet dan internet perusahaan. Teknologi ini dikenal dengan nama 
Voice Over Internet Protocol (VOIP). Yaitu proses untuk mengkompresi data audio dan video 
menjadi paket kecil yang ditransmisikan lewat jaringan IP dan dikembalikan kembali data 
audio dan videonya di sisi penerima sehingga dua orang dapat berkomunikasi dengan audio 
dan video.

9.2 Pendahuluan 
Asterisk adalah aplikasi IPBX berbasis linux yang dikembangkan oleh Mark Spencer dari 
Perusahaan   Digium,   perusahaan   pengembang   asterisk.   Lisensinya   berada   di   bawah   GNU 
General   Public   License.   Didalamnya   terdapat   aplikasi,   kelengkapan   system,   installer   dan 
sistem operasi  yagng lengkap dan siap digunakan sebagai box PBX.

9.3 Instalasi Asterisk VOIP Web Server
Kita dapat mengecek apakah asterisk sudah terinstall atau belum di linux dengan perintah 
berikut:
# r pm ­qa | grep asterisk
asterisk­sounds­1.2.1­4.fc5.rf
asterisk­1.2.13­1.fc5.rf

9.4 Konfigurasi Asterisk
File  konfigurasi asterisk yang akan kita edit ada dua buah yaitu /etc/asterisk/sip.conf  dan 
/etc/asterisk/extensions.conf untuk itu kita perlu mengedit file tersebut, gunakan editor seperti 

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 54
vi, pico, joe dll untuk mengedit file­file tersebut.

File /etc/asterisk/sip.conf 
[general]
context=default
sr vlookup=yes
videosupport=yes

disallow=all   
allow=alaw      
allow=ilbc     
allow=gsm
allow=h261

[101]
type=friend
secret=welcome
q ualify=yes   
nat=no         
host=dynamic   
canreinvite=no 
context=home
;port=5061     

[102]
type=friend
secret=tes
q ualify=yes    
nat=no         
host=dynamic   
canreinvite=no 
context=home
;port=5061    

File /etc/asterisk/extensions.conf
[home]
exten => 101,
1,Dial(SIP/101)
exten => 102, 1,Dial(SIP/102)
exten => 600, 1,Answer()
exten => 600,2,Playback(demo­echotest) 
exten => 600,3,Echo()                  
exten => 600,4,Playback(demo­echodone) 
exten => 600,5,Hangup()

Akhirnya kita telah selesai mengkonfigurasi.
Untuk menjalankan squid lakukan perintah berikut:

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 55
# ser vice asterisk start

9.5 Konfigurasi Client X­lite

9.5.1 Instalasi X­lite 
Untuk pc client, dapat digunakan sistem operasi microsoft windows. Dalam tulisan ini, saya menggunakan 
microsoft windows xp professional. Software client yang akan digunakan adalah softphone freeware 'X­Lite' 
hasil produksi Xten Corp. Setelah terinstal biasanya X­Lite akan mengecek hardware anda. Jadi siapkan 
terlebih dulu sebuah headset (mic + speaker).

9.5.2 Konfigurasi X­lite
Tampilan X­Lite di Windows ketika pertama kali dijalankan seperti di bawah ini:

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 56
Enabled: Yes
Display Name: [nama user]
Username: [nama user di sip.conf]
Authorization User: sama dengan Username
Password: [password user di sip.conf]
Domain/Realm: [ip addr client]

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux ­ 57