Anda di halaman 1dari 62

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.

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux  1
Tipe master digunakan jika zone tersebut memegang otorisasi dan informasi utama dari 
zone 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;
};

2  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
// 
// 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 {

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux  3
type master;
file "ristek.zone";
};
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.

4  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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 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.

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux  5
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.  (
                                      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.ris tek.go.id

6  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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  7
8  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux  9
Install apache dengan perintah:

r pm ­ivh    httpd­2.2.0­5.1.2.r pm

3. Cek instalasi dengan perintah:

r pm  ­q http d

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

10  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
2.3 Konfigurasi Apache
Jika anda menggunakan apache dari disto bawaan linux maka kemungkinan besar akan 
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

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux  11
File   konfigurasi  dapat  dikonfigurasi  dengan  menempatkan  direktif­direktif.  Kebanyakan 
direktif   merupakan   bagian   umum   untuk   seluruh   server.   Tetapi   dapat   diubah   dengan 
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:

12  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
ServerName www.ristek.go.id:80

Pendefinisian Server Name berguna untuk mencegah masalah pada saat start up. Direktif 
ini 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 

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux  13
ditemukan.   Maka   pilihan   ini   akan   menggunakan   format   standar   untuk   direktori   yang 
diminta:
<Directory “/var/www/html”>
Options Indexes
</Directory>

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 

14  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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­
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

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux  15
</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 
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 

16  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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 
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

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux  17
#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
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:

18  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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 
konfigurasi di bawah ini.
<Directory /var/www/html/localusers> 
order Allow,deny
Allow from 192.168.2.0/24
</Directory>
Contoh konfigurasi lainnya:
<Directory /var/www/html/localusers >
Order Allow,Deny
Allow from 192.168.2.0/24
Deny From 192.168.2.1
78
</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

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux  19
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

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.

20  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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  21
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.

22  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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 
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.

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux  23
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 (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

24  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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
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.

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux  25
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

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
}

26  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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.

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

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux  27
• spamassassin­toaster

• maildrop­toaster­devel

• qmailadmin­toaster

• libdomainkeys­toaster

• qmail­toaster

• courier­imap­toaster

• send­emails­toaster

• qmailmrtg­toaster

• 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

28  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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

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",CHKUS
ER_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

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux  29
#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
:.msi:.ocx:.pl:.vb:.vbs:.vxd:.wav:.wmf:.wxf:.xlt

3.8.3.3 File Konfigurasi vpopmail
#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

30  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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)
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  31
32  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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  33
# ­­­ 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

34  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
4.5 Melihat status DHCPD 
Untuk melihat klien yang aktif jalankan perintah berikut

# 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  35
36  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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  37
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

38  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
OpenLDAP server  dan  aplikasi client.

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:

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux  39
suffix "dc=ristek,dc=go,dc=id"

Parameter  rootdn adalah  Distinguished Name (DN) untuk user yang memiliki hak penuh terhadap 
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

40  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
objectclass:dcObject objectclass: organization
dc: ristek
o: Departemen Riset dan Teknologi

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  41
42  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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  43
[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:

44  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
[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  45
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

46  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
#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.

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

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux  47
[homes]
comment = Home Directories valid users = %S
browseable = No read only = No inherit acls = Yes
[netlogon]
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]# ser vice smb start

48  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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  49
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

50  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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 
Application
Presentation
Sessio
Transport
Network
Data Link
Physical

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux  51
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.

52  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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  53
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 

54  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
dapat 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 

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux  55
MASQUERADE

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

56  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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  57
• 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.

58  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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 vi, pico, joe dll untuk mengedit file­file tersebut.

Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux  59
File /etc/asterisk/sip.conf 
[general]
context=default
srvlookup=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:
# ser vice asterisk start

60  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux
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  61
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]

62  Panduan Pendayagunaan Open Source Software: Konfigurasi Server Linux

Anda mungkin juga menyukai