TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
BIND
Membangun Lokal DNS Server Menggunakan BIND Domain Name Server atau yang disingkat dengan DNS adalah sebuah sistem yang menyimpan informasi tentang nama host maupun nama domain dalam bentuk data tersebar (distributed database) di dalam jaringan komputer. Dengan DNS, suatu alamat IP dapat dialamatkan ke dalam nama host dan nama domain yang lebih mudah diingat manusia.
C
oba bayangkan, jika Anda harus membuka suatu situs (google misalnya) dengan menghapalkan alamat IP-nya adalah 66.249.89.99 untuk membuka situs itu. Tentu akan lebih mudah bagi kita untuk menghapal dengan nama www. google.com daripada 66.249.89.99. Dahulu sebelum diperkenalkannya DNS sebagai suatu system untuk pengalamatan alamat IP ke dalam suatu nama domain, setiap komputer di jaringan komputer menggunakan file HOST.TXT untuk memetakan alamat IP ke nama domain. Namun setelah pengguna Internet semakin banyak, penggunaan file HOST.TXT ini tidak lagi efektif, karena setiap pengguna harus selalu mengupdate file HOST.TXT setiap ada penambahan atau perubahan nama domain baru di dalam jaringan. Berangkat dari problem itu, maka dibutuhkan sebuah sistem yang bisa mengganti alamat host hanya di satu tempat, host lain akan mempelajari perubahan tersebut secara dinamis. Dan sistem inilah yang kemudian dikenal dengan nama DNS. DNS ditemukan oleh Paul Mockapetris pada tahun 1983. Spesifikasi asli muncul di RFC 882 dan 883. Tahun 1987, penerbitan RFC 1034 dan RFC 1035 membuat update terhadap spesifikasi DNS. Hal ini membuat RFC 882 dan RFC 883 tidak berlaku lagi. Beberapa RFC terkini telah memproporsikan beberapa tambahan dari protokol inti DNS. Pada Artikel ini, penulis akan menjelaskan prinsip kerja dari DNS. Untuk mempermudah, penulis akan menjelaskan cara setting DNS Server untuk jaringan lokal.
50
INFOLINUX 12/2005
Instalasi BIND Sebelum dapat memulai konfigurasi DNS, Anda harus menginstalasikan paket BIND terlebih dahulu. Biasanya paket BIND sudah dipaketkan pada setiap distro Linux. Pada saat penulisan artikel ini, penulis mencobanya pada distro Fedora Core 4. Untuk pengguna distro lainnya, Anda tinggal menyesuaikan langkah instalasi BIND sesuai dengan distro yang Anda gunakan. Untuk menginstalasikan paket BIND di Fedora Core 4, Anda dapat menginstalasikannya dengan menggunakan Add/Remove Applications, lalu klik Detail pada bagian DNS Name Server. Cek semua paket yang ada pada group tersebut, Close, lalu klik Update. Cara lainnya Anda dapat menginstalasikan paketpaket rpm BIND yang ada pada CD Fedora Core dengan menggunakan perintah RPM. Jika Anda ingin menginstalasikan dari Source Code, download terlebih dahulu paket BIND dari situs http://www.isc.org. Versi BIND terakhir yang bisa di-download dari situs tersebut adalah BIND 9.3.1. $ wget -c ftp://ftp.isc.org/isc/ bind9/9.3.1/bind-9.3.1.tar.gz
Untuk kebanyakan pengguna Linux, paket BIND yang ada di dalam distro sudah cukup untuk memenuhi kebutuhan. Jadi kalau tidak terlalu dibutuhkan untuk instalasi lewat source, disarankan untuk menggunakan paket BIND yang sudah ada di distro saja.
Setting BIND File-file yang harus diperhatikan untuk mengkonfigurasikan BIND, antara lain: 1. /etc/resolv.conf: (berisi alamat domain atau alamat IP dari name server). 2. /etc/named.conf (berisi keterangan letak dan jenis database yang dibutuhkan oleh BIND). 3. /var/named/named.ca: (berisi informasi data yang berada dalam domain root, yang akan dipergunakan name server jika ada resolver yang akan meminta nama domain diluar nama domain lokal). 4. /var/named/named.local: (berisi alamat loopback untuk alamat ke diri sendiri dengan alamat 127.0.0.1).
Persiapan setting domain baru Ekstrak file source tersebut, dan lakukan kompilasi # tar -xzvf bind-9.3.1.tar.gz # cd bind-9.3.1 # ./configure –prefix=/usr/ local/named # make # make install # adduser -d /var/named -s /bin/ false named
www.infolinux.web.id
Dalam studi kasus kali ini, kita akan membuat domain baru untuk DNS Server dan mail server, ftp server, http server, dengan data sebagai berikut: Nama Domain : example.com Nama DNS Server : ns.example.com IP DNS Server : 192.168.2.1 Nama Mail Server : mail.example.com Nama HTTP Server : www.example.com Nama FTP Server : ftp.example.com
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
BIND
Mendaftar paket-paket instalasi BIND.
Karena kita menggunakan IP Address yang sama untuk DNS Server dan (Mail Server, FTP Server, HTTP Server), maka kita akan menggunakan record CNAME (nama alias) dengan mendefinisikan bahwa ns.example.com mempunyai nama alias (mail.example.com, ftp.example.com, dan www.example.com).
Langkah-langkah konfigurasi BIND-Chroot.
# chmod 777 /var/named/chroot/ var/run/named/ # cd /var/named/chroot/var/ named/ # ln -s ../../ chroot # chkconfig --levels 235 named on # /etc/init.d/named restart
Persiapan setting domain baru
Mengedit file named.conf
Agar komputer dapat mengenali nama domain example.com dengan IP Address 192.168.2.1, maka kita definisikan di file / etc/resolv.conf sebagai berikut:
Sekarang kita akan mendefinisikan bahwa DNS Server ini akan menjadi “authorative name server” untuk domain example. com. Selain itu kita juga akan mendefinisikan reverse DNS Zone example.com. Untuk melakukan hal tersebut, Anda dapat mengedit file /etc/named.conf seperti di bawah ini:
search mailku.com nameserver 192.168.2.1
Arti dari baris diatas bahwa resolver akan melakukan pencarian domain example.com dengan Name Server dengan IP Address 192.168.2.1.
Menjalankan BIND-Chroot Untuk alasan keamanan, penulis juga akan menjelaskan langkah-langkah menjalankan BIND-chroot. Pertama-tama, periksa apakah paket bind-chroot sudah terinstalasi dengan baik di sistem Anda. # rpm -qa | grep bind-chroot bind-chroot-9.3.1-4
Selanjutnya ketikkan perintah-perintah berikut ini: # /etc/init.d/named stop # chmod 755 /var/named/ # chmod 775 /var/named/chroot/ # chmod 775 /var/named/chroot/ var/ # chmod 755 /var/named/chroot/ var/named/ # chmod 775 /var/named/chroot/ var/run/
## Edit Ini Di Komputer ## 192.168.2.1 – Master DNS Server ## named.conf # Let only the local machine control the server: controls { inet 127.0.0.1 allow { localhost; } keys { rndckey; }; }; # Include other things into the configuration file, things that # automatic configuration tools that modify this file might make # a mess of: (Though, if you don’t use such tools, you can do # all the configuration within this file.) include “/etc/named.custom”; # Cryptographic key to allow certain things: (Refer to a
www.infolinux.web.id
file # with the information, here, and in other configuration files, # rather than copy the information in that file into each # configuration file.) include “/etc/rndc.key”; # Maksud dari baris dibawah ini adalah, bahwa kita mendefinisikan # DNS Server kita sebagai Primary Name Server untuk domain # example.com dan file example. com.zone adalah nama file yang # merupakan zone-zone file dari domain example.com zone “example.com” { type master; file “example.com.zone”; allow-update { key “rndckey”; }; allow-transfer { 192.168.2/8; }; notify yes; }; # Baris dibawah ini adalah berisi Reverse DNS zone. Ini diperlukan # agar DNS Server Anda dapat menerjemahkan dari nomor IP Address # ke nama host pemilik IP Address dalam jaringan tersebut zone
“2.168.192.in-addr.arpa” { type master;
INFOLINUX 12/2005
51
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
BIND
Testing DNS Server Menggunakan Perintah host
Test DNS Server untuk HTTP Server.
file “2.168.192.inaddr.arpa.zone”; allow-update { key “rndckey”; }; allow-transfer { 192.168.2/8; }; notify yes; };
Setting zone-file example.com Sekarang kita akan mengonfigurasi Primary Name Server untuk domain example. com pada host ns.example.com dengan IP Address 192.168.2.1. Berdasarkan pada file /etc/named.conf, kita akan membuat file /var/named/chroot/var/named/example. com.zone sebagai berikut: $TTL 86400 @ IN SOA ns.example.com. root.example. com. ( 50 ; serial 28800 ; refresh (8 hours) 7200 ; retry (2 hours) 604800 ; retire (1 week) 86400 ; ttl (1 day) ) IN NS ns.example.com. IN MX mail.example.com. ns IN A 192.168.2.1 mail IN CNAME
52
INFOLINUX 12/2005
10
ns
www ftp
IN IN
CNAME CNAME
ns ns
Maksud dari baris di atas adalah sebagai berikut: TTL (Time To Live): mendefinisikan waktu lamanya data berada dalam database. SOA (Start Of Authority): mendefinisikan hostname yang merupakan awal dari suatu zone. ns.example.com: merupakan hostname yang memegang tanggung jawab terhadap domain example.com. root.example.com: merupakan alamat e-mail administrator yang memegang tanggung jawab terhadap domain example.com. 50;serial: merupakan nomor serial dari zone file yang akan bertambah jika ada perubahan data. 28800;refresh: merupakan selang waktu yang diperlukan secondary name server untuk memeriksa perubahan pada Primary Name Server. 7200;retry: merupakan selang waktu secondary name server untuk mengulang pengecekan pada primary name server. 604800;retire: merupakan selang waktu zone file dipertahankan bila secondary name server tidak dapat melakukan pengecekan ke primary name server. 86400;ttl: merupakan nilai default TTL untuk semua resource record pada zone-file. IN NS ns.example.com: mendefinisikan bahwa hostname ns.example.com yang memegang tanggung jawab terhadap domain example.com. IN MX 10 mail.example.com: mendefinisikan bahwa hostname mail.example.
www.infolinux.web.id
com sebagai Mail Server pada domain example.com. ns IN A 192.168.2.1: mendefinisikan bahwa hostname ns.example.com mempunyai IP Address 192.168.2.1. mail IN CNAME ns: mendefinisikan bahwa hostname ns.example.com mempunyai nama alias mail.example.com. www IN CNAME ns: mendefinisikan bahwa hostname ns.example.com mempunyai nama alias www.example.com. ftp IN CNAME ns: mendefinisikan bahwa hostname ns.example.com mempunyai nama alias ftp.example.com.
Setting reverse DNS 2.168.192.inaddr.arpa.zone Selanjutnya kita akan mengonfigurasikan Primary Reverse DNS pada host ns.example. com dengan IP Address 192.168.2.1 untuk jaringan 192.168.2.0 yang telah didefinisikan dalam file /etc/named.conf dengan membuat zone-file /var/named/chroot/var/ named/2.168.192.in-addr.arpa.zone sebagai berikut: $TTL 86400 @ IN SOA ns.example.com. hostmaster. example.com. ( 50 ; serial 28800 ; refresh 7200 ; retry 604800 ; expire 86400 ; ttl )
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
TUTORIAL BIND
IN ns.example.com.
NS
1 IN PTR ns.example.com.
Maksud dari baris di atas adalah sebagai berikut: Penjelasan yang lain, sama dengan penjelasan pada bagian example.com.zone. 1 IN PTR ns.example.com: mendefinisikan bahwa hostname ns.example.com mempunyai IP Address 192.168.2.1.
Testing DNS Server Sekarang kita akan mencoba menjalankan BIND dengan menjalankan perintah: # /etc/init.d/named restart
Bila BIND telah berjalan dengan baik, Anda dapat melihat port 53 BIND telah berjalan dengan mengetikkan perintah nmap. # nmap localhost
Kemudian kita dapat melakukan beberapa query ke DNS Server dengan menggunakan perintah: # host 192.168.2.1 1.2.168.192.in-addr.arpa domain name pointer ns.example.com. # host ns.example.com ns.example.com has address 192.168.2.1 # host -t ns example.com example.com name server ns.example.com. # host -t mx example.com example.com mail is handled by 10 mail.example.com.example.com. # host -t cname mail.example.com mail.example.com is an alias for ns.example.com. # host -t cname www.example.com www.example.com is an alias for ns.example.com. # host -t cname ftp.example.com ftp.example.com is an alias for ns.example.com.
www.infolinux.web.id
Jika semua query test berhasil, maka Anda telah berhasil membuat DNS Server dengan domain example.com dengan name server ns.example.com dan routing e-mail domain example.com ke mail server mail.example. com, routing www domain exampe.com ke www.example.com dan routing ftp domain example.com ke ftp.example.com. Selanjutnya Anda dapat mengetes masingmasing routing dengan menjalankan service Web server Apache misalnya di browser Anda. Ketikkan www.example.com, jika keluar tampilan default webserver di komputer Anda. Test juga pada mail server yang Anda miliki, dengan memasukkan alamat mail servernya menjadi mail.example.com. Jika berhasil send dan receive mail, berarti Anda telah berhasil mengimplementasikan DNS Server dengan baik. Semoga dari penjelasan cara membat DNS Server Lokal ini, dapat membuat Anda paham bagaimana konsep domain di Internet itu bekerja. Supriyanto (
[email protected])
INFOLINUX 12/2005
53
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
.htaccess
Proteksi Direktori di Web dengan .htaccess Bagi pengguna web, terkadang kita ingin memproteksi sebuah direktori agar hanya dapat diakses oleh user tertentu, dengan password tertentu juga. Berbagai cara tentu bisa dilakukan, namun apabila menggunakan web server Apache, kita bisa memanfaatkan file .htaccess. Mudah dan cepat.
K
etika bekerja dengan web, sebagian besar tugas yang dilakukan adalah menampilkan konten dalam format hypertext, yang memiliki layout yang menarik serta berbagai fitur interaktif lainnya. Namun, apabila kita bicara soal web, kita juga akan bicara soal berbagi. Berbagi informasi ataupun berbagi berbagai hal lainnya. Berbagi informasi bisa dilakukan dalam banyak hal. Salah satunya, seperti yang disebutkan di atas, dengan menampilkan konten dan informasi dalam format hypertext. Sementara, untuk berbagi file misalnya, banyak pengguna web yang lebih senang untuk memanfaatkan fasilitas directory listing yang dimiliki oleh berbagai web server populer di dunia ini. Fasilitas directory listing berguna untuk menampilkan isi sebuah direktori melalui web. Dengan demikian, user akan dapat mendownload file-file yang ditampilkan dengan mudah, mirip dengan user tersebut menggunakan file manager seperti Konqueror ataupun Nautilus yang mengaktifkan detailed/list view. Namun, karena aplikasi yang digunakan adalah web browser dan directory listing hanya bermaksud untuk menampilkan isi direktori apa adanya, berbagai fitur file manager seperti select all, copy, cut, paste atau rename tidak akan tersedia. Hanya fiturfitur standar (masuk dan keluar direktori, sort, download) yang disediakan. Untuk file yang ingin dibagi ke publik, hal ini tentu sudah sangat memuaskan. Tidak ada satu kode HTML pun yang perlu kita buat. Apalagi kalau harus sampai menulis berbagai script. Cukup melakukan konfigurasi web server.
54
INFOLINUX 12/2005
Sayangnya, terkadang, kita memiliki filefile di dalam direktori tertentu yang hanya boleh dibagi kepada pihak tertentu. Jadi, dari sepuluh direktori yang kita share, ada sebuah direktori penting yang tidak boleh diakses siapa saja. Untuk mengaksesnya, user harus memasukkan username dan password. Sampai sejauh ini, kita masih bisa memanfaatkan fasilitas protected directory yang telah tersedia pada berbagai web server populer. Apache adalah salah satunya. Pada Apache, proteksi ini dimungkinkan dengan memanfaatkan file .htaccess. Tutorial ini akan membahas cara-cara untuk membuat protected directory pada web server Apache memanfaatkan .htaccess.
Pengenalan .htaccess File .htaccess adalah sebuah file yang umumnya bernama .htaccess (perhatikan tanda titik di depan htaccess) yang berisikan aturan-aturan atau opsi-opsi yang dikenakan pada direktori yang mengandung file ini. File ini bisa pula berisikan aturan user siapa saja, atau group siapa saja yang boleh mengakses direktori yang mengandung file ini. File .htaccess merupakan sebuah file teks yang bisa dibuat dengan text editor biasa. File .htaccess sering kali disebutkan sebagai htaccess saja, atau seringkali disebutkan juga sebagai distributed configuration file. Disebut distributed configuration file karena file .htaccess bisa di-copy-kan ke direktori mana saja dan akan langsung berdampak pada direktori tersebut ketika diakses melalui web browser. Secara default, nama file yang digunakan adalah .htaccess. Namun, apabila nama
www.infolinux.web.id
file tersebut tidak disukai, pengguna selalu bisa mempergunakan nama file lain dengan mengubah directive AccessFileName. Sebagai contoh: AccessFileName .config
Sintaks yang digunakan dalam file .htaccess adalah sama seperti halnya dengan file konfigurasi utama Apache. Penggunaan file .htaccess memiliki sejumlah kelebihan, seperti yang disebutkan sebelumnya. Kita dapat lebih leluasa dalam berbagi file tanpa harus repot-repot membangun script sendiri ataupun dengan caracara lain yang lebih rumit. Namun, semua kelebihan ini harus dibayar dengan: Bertambahnya resource yang dibutuhkan oleh web server karena web server akan mencari file .htaccess (atau file lain yang diubah melalui directive AccessFileName) di setiap direktori. Bahkan, untuk setiap request ke file tertentu, file .htaccess akan diproses. Semua ini ditambah lagi dengan web server akan mencari ke direktori-direktori di level atas untuk sepenuhnya menjamin agar penggunaan .htaccess dilakukan dengan benar. Dengan demikian, ketika kita meng-enable fasilitas .htaccess ini, digunakan ataupun tidak, akan berpengaruh pada performa dan resource yang dibutuhkan. Keamanan. Dengan penggunaan .htaccess, konfigurasi server tidak sepenuhnya lagi dikontrol lewat konfigurasi utama web server. Celah keamanan bisa datang dari dalam (user yang nakal), ataupun dari luar (file konfigurasi yang salah, bisa berefek pada gangguan dari luar).
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
TUTORIAL .htaccess
Kerepotan untuk me-maintain database password. Penggunaan .htaccess memungkinkan user untuk menggunakan berbagai database password di berbagai lokasi. Tulisan ini akan mengasumsikan nama file yang digunakan adalah tetap .htaccess. Pada bagian berikutnya, kita akan melihat apa yang harus diatur pada konfigurasi Apache agar .htaccess bisa diterapkan.
Konfigurasi pada Apache Apabila Anda adalah administrator web server, maka lakukanlah langkah-langkah berikut ini: Bukalah konfigurasi web server. Pada beberapa distro, nama file konfigurasi adalah httpd.conf. Pada distro SUSE, editlah file /etc/apache2/default-server. conf. Pada bagian untuk opsi direktori DocumentRoot, berikan opsi AllowOverride AuthConfig. Di sistem default, opsi untuk AllowOverride mungkin akan bernilai None. Berikut ini adalah contoh konfigurasi DocumentRoot penulis:
Options Indexes MultiViews AllowOverride AuthConfig Order allow,deny Allow from all
Apabila Anda tidak memiliki akses pada konfigurasi utama (misal, Anda berada di jaringan besar dimana Anda bukan administrator Apache), maka mintalah kepada administrator Anda untuk mengaktifkan penggunaan .htaccess. Setelah diaktifkan, Anda langsung bisa membuat file .htaccess. Apabila Anda menggunakan jasa web hosting, maka pastikan web hosting yang Anda gunakan mendukung fasilitas ini. Penulis menggunakan web hosting Master Web Network (masterwebnet.com), dimana fasilitas .htaccess telah didukung. Apabila .htaccess memang telah didukung, Anda tidak perlu melakukan konfigurasi apapun di web server. File .htaccess bisa langsung dibuat.
Directory listing.
Pembuatan file .htaccess sederhana Sampai pada bagian ini, kita mengasumsikan .htaccess telah didukung di web server. Selanjutnya, kita akan membuat sebuah direktori test di bawah DocumentRoot. Di sistem yang penulis gunakan, DocumentRoot terletak pada /srv/www/htdocs. Direktori test yang akan kita buat tersebut akan terletak di /srv/www/htdocs/test. Cobalah untuk mengakses direktori test. Opsi yang kita berikan pada DocumentRoot dan turunannya seharusnya akan memungkinkan isi direktori test ditampilkan apabila diakses (directory listing diaktifkan). http://localhost/test/
Setelah berhasil, kita siap untuk bekerja dengan .htaccess. Untuk lebih baiknya, kita akan membuat sebuah file dengan nama test1 di dalam direktori tersebut: $ touch test1 $ l total 0 drwxr-xr-x 2 nop users 72 2005-09-19 03:02 ./ drwxr-xr-x 4 root root 96 2005-09-19 02:39 ../ -rw-r--r-- 1 nop users 0 2005-09-19 03:02 test1
www.infolinux.web.id
Selanjutnya, kita akan membuat file .htaccess sederhana di dalam direktori test dengan isi file sebagai berikut: AuthType Basic AuthName “Test .htaccess” Require user test
Apabila kita mengakses kembali URL http://localhost/test/ tersebut, maka sebuah kotak dialog yang meminta kita untuk memasukkan user name dan password akan ditampilkan. Pastikan juga tertulis Test .htaccess di kotak dialog tersebut. Browser yang berbeda akan menampilkan kotak dialog yang berbeda. Saat ini, kita belum memiliki informasi user dan password. Oleh karena itu, batalkanlah kunjungan kita ke localhost/test/. Apa yang kita lakukan sebelumnya hanyalah percobaan untuk melihat apakah .htaccess telah bekerja atau belum. Apabila kunjungan dibatalkan, maka akan muncul kesalahan 401 (Authentication Required). Hal ini wajar karena web server mengharapkan proses autentikasi dilakukan dengan benar. Sekarang, mari kita lihat file .htaccess yang kita buat sebelumnya: AuthType. Directive AuthType menentukan tipe autentikasi untuk direktori. Saat ini, hanya Basic dan Digest yang
INFOLINUX 12/2005
55
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
.htaccess
Prompt password.
didukung. Directive ini dikombinasikan dengan AuthName, Require dan AuthUserFile, ataupun AuthGroupFile. AuthName. Directive ini akan mengatur nama autorisasi untuk direktori. Nama yang digunakan di sini dimaksudkan untuk memberikan deskripsi kepada pengunjung. Directive ini dikombinasikan dengan AuthType, Require dan AuthUserFile ataupun AuthGroupFile. Require. Directive ini akan menentukan siapa saja yang diperbolehkan untuk mengakses resource. Directive ini dikombinasikan dengan AuthName, AuthType dan AuthUserFile ataupun AuthGroupFile. Berikut ini adalah bentuk penggunaan Require. Require user userid [userid] ...
Hanya nama yang disebutkan yang bisa mengakses resource ini. Require group group-name [group-name] ...
Hanya group yang disebutkan yang bisa mengakses resource ini. Require valid-user
Semua user yang valid bisa mengakses resource ini. Setelah ini, kita akan melanjutkan ke pengaturan database user.
Pengaturan database user Database user dapat dibuat dengan program
56
INFOLINUX 12/2005
Kesalahan autentikasi.
htpasswd2. Apabila kita login sebagai user biasa, maka program ini mungkin tidak terdapat dalam PATH. Umumnya, htpasswd2 diinstall di /usr/sbin/htpasswd2. Walaupun htpasswd2 diinstall di /usr/sbin, namun user biasa tetap dapat mempergunakannya. Program htpasswd2 adalah program yang dapat digunakan untuk mengatur file database password yang dapat digunakan untuk authentikasi basic. Berikut ini adalah cara penggunaannya: htpasswd [ -c ] [ -m ] [ -D ] passwdfile username htpasswd -b [ -c ] [ -m | -d | -p | -s ] [ -D ] passwdfile username password htpasswd -n [ -m | -d | -s | -p ] username htpasswd -nb [ -m | -d | -s | -p ] username password
Penjelasan opsi: opsi -c. Opsi ini digunakan untuk membuat file baru. Apabila file telah tersedia, maka isinya akan ditulis ulang. Berhatihatilah mempergunakan opsi ini. Opsi -m. Mempergunakan enkripsi MD5. Opsi -D. Menghapus user apabila telah terdaftar di database password yang dispesifikasikan. Opsi -b. Mempergunakan mode batch. Penggunaan mode batch akan memungkinkan pemberian password misalnya melalui command line tanpa harus meminta kepada user. Opsi -d. Mempergunakan enkripsi melalui crypt()
www.infolinux.web.id
Opsi -p. Mempergunakan plain password Opsi -s. Mempergunakan enkripsi SHA Opsi -n. Hanya menampilkan ke standar output, tidak meng-update database password. Sebelum kita melanjutkan, kita akan melihat lokasi penyimpanan database password. Berikut ini adalah beberapa hal yang perlu diperhatikan seputar lokasi database password: Database password bisa diletakkan di mana saja di sistem ataupun di bawah tree dokumen yang bisa diakses oleh web server. Namun, usahakan untuk menyimpan database password diluar tree dokumen yang bisa diakses oleh web server. Satu hal yang pasti, jangan sampai pernah menyimpan database password di direktori yang diprotek karena user bisa mendownload database password tersebut. Jangan simpan database password di direktori yang bisa diakses melalui web browser. Dalam contoh kali ini, kita akan menyimpan database password di /tmp. Sesuaikan dengan lokasi yang Anda inginkan. Berikut ini, kita akan membuat sebuah user dengan nama test (password: test). Sementara, untuk database password, kita akan memberikan nama test.passwd. Nama file database password bisa disesuaikan dengan keinginan. Berikut ini adalah perintah yang dapat digunakan:
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
.htaccess
$ /usr/sbin/htpasswd2 -c /tmp/ test.passwd test New password: Re-type new password: Adding password for user test
Setelah perintah diberikan, kita akan memiliki /tmp/test.passwd yang isinya adalah sebagai berikut pada komputer penulis: $ cat /tmp/test.passwd test:VdqfKTx9uRoaI
Setelah database password kita miliki, berikut ini kita akan melengkapi .htaccess kita agar bisa berfungsi sepenuhnya.
Melengkapi .htaccess Di .htaccess kita sebelumnya, kita sudah memiliki beberapa entri. Kita sudah menyebutkan bahwa kita akan mempergunakan autentikasi basic. Kita juga sudah menyebutkan deskripsi resource. Dan, yang paling penting, kita juga telah membatasi agar hanya user test yang diizinkan masuk ke sistem.
Di bagian ini, kita akan menambahkan satu directive lagi, yaitu AuthUserFile. Directive AuthUserFile ini akan mengacu ke /tmp/ test.passwd yang kita buat sebelumnya. Berikut ini .htaccess kita selengkapnya: AuthType Basic AuthName “Test .htaccess” AuthUserFile “/tmp/test.passwd” Require user test
Ketika menyebutkan nilai untuk directive AuthUserFile, kita bisa menggunakan path absolut ataupun path relatif. Dalam contoh, kita mempergunakan path absolut. Apabila path relatif diberikan, maka file akan diperlakukan relatif dari directive ServerRoot. Sampai di sini, kita telah memiliki sebuah .htaccess yang bekerja dengan baik. Cobalah.
Bagaimana kalau .htaccess tidak bekerja? Berikut ini adalah beberapa langkah yang bisa dilakukan apabila .htaccess tidak bekerja sesuai keinginan:
Pastikan Anda telah memiliki directive AllowOverride AuthConfig, bukan AllowOverride None pada direktori yang ingin menggunakan .htaccess. Apabila Anda yakin telah mengatur point sebelumnya dengan benar namun .htaccess tetap tidak bekerja, cobalah untuk memberikan sintaks yang salah pada file .htaccess. Apabila tidak ada pesan kesalahan, maka berarti .htaccess Anda tidak dipedulikan. Periksalah kembali pengaturan direktori yang ingin diberikan .htaccess. Apabila muncul pesan kesalahan, maka mungkin terjadi kesalahan pada .htaccess Anda. Periksalah kembali. Selalu pastikan bahwa user, group dan file database password ataupun database group sudah diatur dengan benar sebelumnya. Sampai di sini dulu pembahasan kita tentang penggunaan .htaccess. Selamat mencoba dan sukses! Noprianto (
[email protected])
Advertorial
Multimedia and Gaming: The Next Killer Industry?
I
ndustri animasi dunia bernilaisekitar US$500 miliar. Ini merupakan nilai yang amat besar bila dibandingkan dengan nilai total eskpor Indonesia tahun 2004 yang berjumlah US$ 69.71 miliar. Bayangkan bila Indonesia bisa mengambil peran dalam industry tersebut, berapa banyak devisa yang bisa diperoleh. Tentunya hal ini bisa meningkatkan kinerja perekonomian nasional yang semakin lesu karena harga minyak dunia yang semakin melambung dan industri yang jalan ditempat. Kecenderungan industri
animasi di USA, Korea dan Melihat perkembangan Jepang sekarang adalah tersebut, Jurusan Comoffshore production dan puter Science, BiNus Inoutsourcing. Ini disebabkan ternational, ingin ikut meroketnya biaya produksi mendorong berkembangdi negara-negara tersebut, nya industri animasi di yang mencapai US$5,000 dalam negeri, dengan sampai US$10,000 per me- menyelenggarakan komnit. Sebagai perban-dingan, petisi “Multimedia and ongkos produsi film animasi Computer Graphics Chal3-D di India adalah sepa- lenge 2005”. Kompetisi ruh dari ongkos produksi ini bertujuan mendorong di USA, dan lebih murah bertumbuhnya komunitas lagi di Cina. Tidak mengh- multimedia dan animasi, erankan bila studio-studio baik pengembang maupun animasi menjamur di India industri, yang diharapkan dan Cina, dan sebagian be- akan turut mempercepat indussar produksinya me-rupak- per-kembangan an proyek outsourcing atau tri animasi di tanah air. relokasi dari USA, Korea Kompetisi ini akan dilakwww.infolinux.web.id maupun Jepang. sanakan dalam dua tahap,
yang berlangsung dari tanggal 26 Oktober 2005 sampai dengan tanggal 25 Februari 2006. Tahap pertama berupa kompetisi on-line sedangkan tahap kedua adalah kompetisi on-site. Murdoch University, MAHAKA dan 3DsMax merupakan sponsor utama acara ini. Antusiasme masyarakat dapat dilihat dari jumlah dan asal sekolah peserta. Lebih dari 300 peserta dari 15 universitas dan 20 sekolah, berasal dari 10 kota di Indonesia, akan mengikuti kompetisi ini. INFOLINUX 12/2005
57
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
MPlayer/MEncoder
Me-rip DVD dengan MPlayer/ MEncoder Tulisan ini dibuat khusus untuk Anda yang sudah mempunyai pikiran dewasa dan tidak memergunakannya untuk aktivitas yang melanggar hukum seperti pembajakan video.
B
anyak alasan lain kenapa kita me-rip film DVD. Salah satunya tentu saja supaya film DVD kita bisa disimpan di media lain (CD). Sehingga tak perlu terlalu sering memutar DVD di DVD-ROM, pemutar DVD relatif masih mahal. Selain itu, juga kita pasti ingin menjaga kepingan DVD yang telah kita beli dengan harga cukup mahal pula. Ripping DVD pasti sangat berhubungan dengan isu ukuran file. Kita ingin film dengan kualitas bagus tapi ukurannya sekecil mungkin. Ini tidak bisa didapatkan secara eksak, tapi kita bisa melakukan pendekatan. Dengan mengorbankan beberapa hal, seperti kualitas gambar, kualitas suara, serta resolusi video, kita bisa mereduksi ukuran file video kita. Tapi pada kebanyakan kasus, pengorbanan ini hampir tidak bisa dirasakan oleh manusia normal. Ini karena keterbatasan indera manusia. Kita mulai memersiapkan alat-alat (perangkat lunak) yang dibutuhkan yang dibutuhkan untuk ini. Perangkat lunak yang dibutuhkan setidaknya adalah: MPlayer/ MEncoder, pustaka pembaca DVD libdvdread, pustaka mp3lame, dan codec XviD. Ada banyak program encoder/ripper multimedia yang bisa berfungsi di GNU/Linux: MEncoder, transcode, avidemux, dan lainlain. Dalam tulisan ini, perangkat lunak yang akan digunakan adalah MEncoder. MPlayer adalah pemutar multimedia yang sangat canggih dan mampu memainkan sekian banyak format dan media codecs. Sebut saja MPEG1, AVI (termasuk semua codec Windows dan semua codec DivX), DVD, VCD, SVCD, dan masih banyak lagi. MEncoder adalah bagian dari paket MPlayer yang fungsinya adalah untuk meng-encode audio dan video. Bisa digunakan untuk meng-encode DVD.
58
INFOLINUX 12/2005
Libdvdread berguna untuk membaca format DVD. Kita perlukan karena kita akan me-rip film DVD. MPlayer memerlukan pustaka ini untuk menunjang fungsinya. Lame (Lame Ain’t an MP3 Encoder) adalah paket program dan pustaka untuk meng-encode format audio MP2/WAV menjadi format MP3. Beberapa referensi menyatakan bahwa file MP3 yang dihasilkan Lame memiliki kualitas yang superior dibanding encoder MP3 yang lain. Codec video yang akan kita gunakan disini adalah XviD. XviD adalah hasil pengembangan dari codec OpenDivX. XviD mulai dikembangkan saat ProjectMayo mengubah OpenDivX menjadi DivX4 (sekarang DivX5) yang bersifat Closed Source. Para pengembang yang tidak terikat dengan ProjectMayo lalu memulai proyek XviD.
Instalasi perangkat lunak Sebelum Anda memutuskan untuk menginstal paket-paket ini dari source code-nya, ada baiknya anda periksa dulu apakah sudah tersedia paket precompiled binary untuk distro Anda. Kecuali untuk MPlayer karena biasanya vendor distro tidak meng-compile MPlayer dengan dukungan XviD encoding. Untuk pengguna distro Mandrakelinux (sekarang Mandriva) bisa mencari precompiled binary MPlayer dari situs PLF (http:// plf.zarb.org). Versi paling stabil dari codec XviD saat artikel ini ditulis adalah 1.1.0-beta1 yang bisa anda dapatkan dari situs http://www. xvid.org. Anda bisa saja menggunakan versi CVS terbaru dari XviD yang bisa didapat dari situs yang sama. Cara instalasinya mudah saja, lewat command-line interface (CLI) mekarkanlah paket yang telah Anda download lalu ubahlah direktori aktif ke hasil
www.infolinux.web.id
pemekaran tadi. Petunjuk instalasi biasanya terdapat pada file README atau INSTALL. Perintah-perintah berikut dapat anda coba: $ tar xjpf xvid_latest.tar.bz2 $ cd xvid_latest/build/generic $ ./configure $ make $ su # make install # ln -sf libxvidcore.so.4.0 /usr/local/lib/libxvidcore.so.4 # ln -sf libxvidcore.so.4 /usr/ local/lib/libxvidcore.so # ldconfig
Perangkat lunak kedua yang harus diinstal adalah Lame. Versi paling stabil saat ini adalah 3.96.1 yang bisa anda dapatkan dari situs http://lame.sf.net. Cara instalasinya mirip dengan XviD. Perintah-perintah contoh sebagai berikut: $ $ $ $ $ # #
tar xzvf lame-3.96.1.tar.gz cd lame-3.96.1 ./configure –enable-mp3rtp make su make install ldconfig
Cara instalasi libdvdread tidak berbeda dengan Lame. Download-lah source libdvdread dari alamat http://www.dtek.chalmers. se/groups/dvd/dist/libdvdread-0.9.4.tar.gz. Lalu jalankan perintah-perintah berikut: $ tar xzvf libdvdread-0.9.4.tar. gz $ cd libdvdread-0.9.4 $ ./configure $ make $ su # make install
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
TUTORIAL MPlayer/MEncoder
# ldconfig
Terakhir adalah instalasi MPlayer. Versi MPlayer stabil saat tulisan ini dibuat adalah 1.0-pre7 bisa didownload dari situs http:// www.mplayerhq.hu. Cara instalasinya adalah sebagai berikut: $ tar xjvf MPlayer-1.0-pre7.tar. bz2 $ cd MPlayer-1.0-pre7 $ ./configure --enablelargefiles $ make $ su # make install # install -d -m755 /usr/local/ share/doc/mplayer # cp -R DOCS/* /usr/local/share/ doc/mplayer
Dengan demikian selesailah sudah tahap persiapan kita.
Menentukan jenis video Setidaknya ada tiga jenis video pada film DVD, yaitu progressive, interlaced, dan telecine. Video progressive dibuat dengan framerate 23,976 fps dan langsung disimpan ke DVD tanpa perubahan apapun. Saat memainkan video progressive MPlayer akan mengeluarkan stdout seperti: demux_mpg: 24fps progressive NTSC content detected, switching framerate.
Menghadapi jenis video seperti ini cukup dengan menambahkan flag berikut saat melakukan proses encoding: -ofps 23.976
Video interlaced dibuat dengan framerate 54,94 fps dan disimpan ke DVD dalam 29,976 fps. MPlayer tidak akan melaporkan perubahan framerate saat memainkan video jenis ini. Perintahnya adalah sebagai berikut: $ mplayer -speed 0.1 dvd://1
Video interlaced akan memerlihatkan artifak-artifak membentuk seperti hantu, atau garis-garis bayangan dari gerakan cepat. Flag yang diperlukan untuk menghadapi jenis video seperti ini adalah: -vf pp=lb
Artinya kita menerapkan filter video linear-blend sebelum MEncoder melakukan proses encoding. Video telecine, dibuat dengan framerate 23,976 dan telah di-telecined sebelum disimpan ke DVD. MPlayer tak akan melaporkan perubahan framerate saat memainkan video telecine. Anda akan menemukan adanya artifak yang berkedip (hilang muncul) saat memainkannya dengan -speed 0.1. Menghadapi video jenis ini, Anda cukup menambahkan flag berikut: -vf ivtc=1 -ofps 23.976
Cropping dan scaling Resolusi yang biasa digunakan pada film DVD adalah 720x480 pixel untuk NTSC dan 720x576 untuk PAL, dengan aspect-ratio 4:3 untuk full-screen dan 16:9 untuk widescreen. Tapi terkadang aspect-ratio-nya adalah 1,85:1 atau malah 2,35:1, sehingga bisa dipastikan akan ada pita-hitam di bagian atas dan bawah yang harus dihilangkan karena hanya akan menambah besar ukuran file yang dihasilkan. Bisa dilihat pada gambar 1, di bagian kanan terdapat sebuar bar vertikal berwarna hitam yang harus dibuang. Untuk mengetahui parameter cropping bisa dengan memainkannya dengan MPlayer seperti ini: $ mplayer -vf cropdetect dvd://1
Seek-lah ke bagian yang terang sampai bagian pita-hitam baik vertikal (kiri-kanan) maupun horizontal (atas-bawah) terlihat dengan jelas. MPlayer akan memberikan laporan seperti ini: Gambar 1: Video dengan pita-hitam.
crop area: X: 0..719
Y: 0..479
www.infolinux.web.id
INFOLINUX 12/2005
59
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
MPlayer/MEncoder
Gambar 2 : Pita-hitam telah dihilangkan.
(-vf crop=704:464:8:8)% 0 49% 0,30x
Gambar 3: Setelah melalui cropping dan scaling.
3,5% 5
Bisa dilihat pada gambar 2, sekarang pita-hitam-nya telah hilang. Mengubah ukuran video juga penting dilakukan. Penulis biasanya mengubah tinggi video menjadi 352 pixel, banyak alasan tentu saja. Tapi ukuran ini yang paling masuk akal, lebih besar dari ukuran VCD pada umunya (384x288 pixel) dan ukuran file akan cukup kecil dengan masih memertahankan kualitas. Mainkan video dengan perintah: $ mplayer -vf crop=704:464:8:8,s cale=352:352 dvd://1
MPlayer akan memberikan laporan seperti ini: VO: [x11] 352x352 => 474x352 BGRA [zoom]
Perhatikan bagian 352x352 => 474x352, itu adalah ukuran video yang telah di-scale sementara aspect-ratio-nya tetap terjaga. Sekarang perintahnya menjadi: $ mplayer -vf crop=704:464:8:8, scale=474:352 dvd://1
Dan menghasilkan video dengan ukuran yang lebih kecil seperti pada gambar 3.
Membuat pratilik Setelah mendapatkan parameter scaling dan cropping yang tepat, maka kita sudah siap untuk melakukan encoding. Tapi proses ini bisa memakan waktu cukup lama. Video
60
INFOLINUX 12/2005
yang dijadikan contoh oleh penulis, berdurasi 1 jam 19 menit, menghabiskan waktu sekitar 6 jam di komputer AMD Duron 1,1 Ghz dan memori 118 MB. Jadi akan sangat bijaksana jika kita membuat pratiliknya dulu. Kita cukup mengambil sampel dengan durasi 1 menit dari video yang akan kita encode. Perintah yang digunakan adalah sebagai berikut: $ mencoder -ss 0:9:0 -endpos 0:1:0 -ofps 23.976 \ -vf crop=704:464:8:8,scale=474:3 52,hqdn3d,scale=474:352 \ -oac copy \ -ovc xvid -xvidencopts \ hq_ac: vhq=1:gmc:chroma_opt:chroma_me: me_quality=6:qpel:quant_ type=mpeg:closed_gop:keyframe_ boost=10:pass=1 \ -o /dev/null dvd://1
Perintah di atas artinya kita meng-encode title pertama dari film DVD dimulai pada menit ke-9 dan berdurasi 1 menit, codec audio yang digunakan adalah streamcopy karena akan bekerja lebih cepat, codec video yang digunakan adalah XviD dengan opsi seperti tertulis di atas. Anda bisa merujuk pada manual MPlayer untuk mendapat penjelasan panjang mengenai opsi XviD yang ada. File hasil encoding diarahkan ke /dev/null karena keluaran dari pass pertama tidak diperlukan sama sekali, kita hanya membutuhkan file log-nya saja. Hqdn3d adalah denoise-filter yang akan mereduksi noise pada gambar dan menghasilkan gambar yang smooth dan membuat gambar
www.infolinux.web.id
diam menjadi benar-benar diam, sehingga kompresibilitas bisa ditingkatkan. Contoh video yang digunakan penulis adala video progressive, sehingga hanya perlu mengubah framerate saja. Ada tiga macam pendekatan dalam encoding video kita: bitrate konstan, quantizer konstan, dan multi-pass. Sekali lagi banyak penjelasan tentang ini, namun penulis menyarankan multi-pass. Pada encoding multi-pass, pass pertama akan me-rip video seakan dengan bitrate konstan namun menyimpan semua informasi dari tiap frame (dalam file log), lalu file log ini akan dijadikan rujukan saat melakukan pass yang kedua. Setelah perintah pass pertama selesai dieksekusi, dilanjutkan dengan pass kedua: $ mencoder -ss 0:9:0 -endpos 0:1:0 -ofps 23.976 \ -vf crop=704:464:8:8,scale=474:3 52,hqdn3d,scale=474:352 \ -oac mp3lame -lameopts cbr: br=96:mode=1 -srate 44100 \ -ovc xvid -xvidencopts \ hq_ac: vhq=1:gmc:chroma_opt:chroma_me: me_quality=6:qpel:quant_ type=mpeg:closed_gop:keyframe_ boost=10:pass=2:bitrate=999 \ -o sampel.avi dvd://1
Di bagian pass kedua terdapat beberapa perbedaan, misalnya pada codec audio dimana kita menggunakan mp3lame dengan bitrate konstan 96 kbps joint-stereo dan frekuensi 44100 Hz, file keluaran diarahkan ke file sungguhan, serta perubahan pada
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
MPlayer/MEncoder
opsi codec XviD. Setelah selesai, mainkanlah file sampel. avi dengan perintah: $ mplayer sampel.avi
Jika anda merasa kurang puas, ulangi encoding pratilik dengan menaikkan angka bitrate. Ada kalanya volume suara dari film DVD sangat kecil sehingga kita harus menaikkan volume-gain. Ini bisa dilakukan dengan beberapa cara, misalnya dengan menambahkan vol=<0-10>. Jadi opsi lame lengkapnya adalah: -lameopts cbr:br=96:mode=1:vol=5
Sesuaikanlah dengan keadaan video milik Anda.
Proses encoding keseluruhan Jika Anda telah puas dengan pratilik yang anda buat (dengan parameter yang telah disesuaikan), maka sekarang saatnya melakukan proses encoding yang sesungguhnya. Perintah keseluruhannya adalah seperti berikut:
$ mencoder -ofps 23.976 \ -vf crop=704:464:8:8,scale=474:3 52,hqdn3d,scale=474:352 \ -oac copy \ -ovc xvid -xvidencopts \ hq_ac: vhq=1:gmc:chroma_opt:chroma_me: me_quality=6:qpel:quant_ type=mpeg:closed_gop:keyframe_ boost=10:pass=1 \ -o /dev/null dvd://1 $ mencoder -ofps 23.976 \ -vf crop=704:464:8:8,scale=474:3 52,hqdn3d,scale=474:352 \ -oac mp3lame -lameopts cbr: br=96:mode=1 -srate 44100 \ -ovc xvid -xvidencopts \ hq_ac: vhq=1:gmc:chroma_opt:chroma_me: me_quality=6:qpel:quant_ type=mpeg:closed_gop:keyframe_ boost=10:pass=2:bitrate=999 \ -o videoku.avi dvd://1
Satu kelemahan menentukan bitrate=N adalah ukuran file keluaran tidak bisa diperkirakan. Ada cara lain untuk membuat
www.infolinux.web.id
MEncoder menghitung sendiri bitrate yang cocok untuk file keluaran dengan ukuran tertentu. Misal film DVD berdurasi 1 jam 19 menit ini ingin dijadikan video berukuran tepat 1 CD (~700 MB), maka angka pada opsi bitrate kita ubah menjadi bitrate=-600000. Perhatikan tanda negatif di depan angka, ini artinya kita menyuruh MEncoder agar file keluaran tidak boleh lebih dari 600000 KB. Kenapa tidak 700000 KB saja sekalian? Karena XviD belum memerhitungkan ukuran audio, dan ukuran audio MP3 dengan bitrate 96 kbps berdurasi 1 jam 19 menit adalah sekitar 100 MB. Dudi Indrasetiadi (
[email protected])
Referensi: 1. BLFS Development Team, 2005, Beyond Linux From Scratch version 6.0, http://www.linuxfrom scratch.org. 2. Moritz Bunkus, 2002, DVD ripping and transcoding with linux, http://bunkus.org. 3. MPlayer Team, 2004, MPlayer – The Movie Player, http://www.mplayerhq.hu.
INFOLINUX 12/2005
61
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
BitDefender
Konfigurasi Postfix dengan BitDefender Antivirus Jika inbox mail Anda sering menerima e-mail yang berisikan virus dan spam, kemungkinan besar mail server Anda belum dilengkapi dengan fitur AntiVirus dan AntiSpam. Kali ini penulis akan menjelaskan cara konfigurasi Postfix dengan BitDefender Antivirus.
M
endapatkan e-mail yang bersih dari virus dan spam merupakan impian bagi Anda yang sering menggunakan fasilitas e-mail. Jika Anda seorang Admin Server, pasti tidak ingin dikomplain oleh user Anda karena hampir setiap hari Inboxnya mendapatkan banyak email spam dari Internet. Atau yang lebih ekstrim lagi, tiba-tiba seluruh dokumen yang dimilikinya menjadi rusak karena terserang virus yang berasal dari sebuah e-mail. Kalau kondisi demikian sering terjadi, tentu hal itu dapat mempengaruhi penilaian Anda di mata user. Apalagi jika user Anda merupakan atasan atau bos Anda, tentu hal demikian harus dapat Anda dihindarkan, bukan? Pada majalah InfoLINUX edisi 11/2005, penulis sudah menjelaskan sedikit cara kerja dari mail server Postfix. Kali ini penulis akan membahas cara konfigurasi Postfix dengan BitDefender Antivirus yang pernah penulis ulas pada InfoLINUX edisi 08/2005.
Tampilan BitDefender Remote Admin.
62
INFOLINUX 12/2005
Instalasi Postfix Mail Server Dalam penulisan Artikel ini, penulis mencobanya di Fedora Core 4. Untuk menginstallasi Postfix, Anda hanya perlu mengetikkan perintah berikut: # rpm -ivh postfix-2.2.2-2.i386. rpm
Setelah Postfix terinstalasi dengan baik, maka Postfix dapat langsung diaktifkan sebagai SMTP Server (jika komputer telah memiliki FQDN). # /etc/init.d/postfix start
Untuk konfigurasi lengkap Postfix dalam pengujian ini, penulis sudah sertakan di CD InfoLINUX edisi ini.
Persiapan konfigurasi Dalam penulisan artikel ini, penulis menggunakan beberapa settingan sebagai berikut: Alamat IP : 192.168.2.1 Hostname : server1.example.com
Domain : example.com SMTP dan POP3 : mail.example.com Untuk konfigurasi Domain dan alamat Mail, Anda dapat membacanya di artikel “Membangun Lokal DNS Server Menggunakan BIND” yang terdapat di edisi ini.
Installasi BitDefender Antivirus Sebelum dapat mengintegrasikan Postfix dengan BitDefender, Anda dapat mendownload terlebih dahulu versi trial 30 hari BitDefender Antivirus For Postfix dari situs http://www.ozonesecuritech.com atau dari http://www.bitdefender.com. Selanjutnya Anda dapat langsung menginstallasikan BitDefender, dengan menjalankan langkah-langkah sebagai berikut: 1. Check versi gcc yang Anda gunakan. # gcc –version gcc (GCC) 4.0.0 20050519 (Red Hat 4.0.0-8)
Peringatan Virus Warning dari BitDefender saat menerima e-mail bervirus.
www.infolinux.web.id
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
TUTORIAL BitDefender
Jika GCC yang Anda gunakan adalah versi 4, maka Anda harus menginstalasikan terlebih dahulu paket compat-gcc32 dan compat-libstdc++-296 agar dapat menginstallasi paket BitDefender-postfix-1.6.2-1.linux-gcc3x.i586.rpm.run. 2. Berikutnya instalasikan paket BitDefender, dengan mengikuti langkah-langkah berikut: # sh ./BitDefender-postfix1.6.2-1.linux-gcc29x.i586. rpm.run
Pilih saja pilihan default saat instalasi, dengan menekan Enter dan menjawab Yes. Setelah selesai, BitDefender akan menambahkan beberapa parameter di file konfigurasi Postfix agar dapat langsung terintegrasi dengan Postfix. 3. Check apakah BitDefender sudah berjalan dengan mengetikkan perintah ps. # ps ax | grep BitDefender
4. Selanjutnya restart service postfix Anda untuk melakukan perubahan. # /etc/init.d/postfix restart
NUX edisi ini. Copy file itu ke suatu folder, lalu dari menu Webmin configuration, install file BitDefender.wbm.gz dari submenu Webmin Module. Setelah berhasil, di menu System Anda akan melihat menu BitDefender Remote Admin. 5. Dari Menu BitDefender Remote Admin, Anda dapat melakukan konfigurasi BitDefender, melihat statistik BitDefender, melakukan update, melakukan scanning, dan sebagainya.
Testing Postfix Dan BitDefender Antivirus Tahap terakhir untuk mengetahui apakah mail server Postfix dan BitDefender AntiVirus sudah terintegrasi dengan baik adalah dengan pengujian. Untuk itu Anda dapat mengikuti langkah-langkah berikut: 1. Download sample virus dan spam dari situs http://www.eicar.com. Dari situs tsb, penulis mendownload empat buah file, yaitu eicar.com, eicarcom2.zip, eicar.com.txt, dan eicar_com.zip. Copy file tersebut ke suatu folder yang ada di home directory Anda.
2. Setting Mail Client Anda, agar dapat mengirim dan menerima e-mail dari mail server yang sudah Anda setting, dengan menambahkan user Account yang ada di Mail server Anda. 3. Setelah membuat user Account, test dengan mengirimkan e-mail yang berisikan attachment empat buah file dari situs eicar. Kemudian kirim ke alamat user lainnya dan cc ke alamat e-mail sendiri. 4. Klik Icon Get All untuk menerima email, dan lihat di Inbox Anda. Jika Anda mendapatkan e-mail yang berisikan peringatan Virus Warning!! dari BitDefender, selamat berarti Anda telah berhasil mengonfigurasikan Postfix dengan BitDefender Antivirus dengan benar. Demikian tutorial singkat konfigurasi Postfix Mail Server dengan BitDefender. Semoga dengan tutorial ini, dapat membantu Anda dalam menangani masalah virus dan spam pada e-mail yang dapat mengurangi produktifitas kerja Anda. Sampai jumpa! Supriyanto(
[email protected])
5. Mail server Anda kini sudah terintegrasi dengan AntiVirus BitDefender, untuk pengujian lihat bagian Testing BitDefender Antivirus.
BitDefender Webmin Module Untuk mempermudah manajemen BitDefender, Anda dapat menggunakan Webmin agar dapat memanajemen BitDefender dari browser. 1. Lakukan Instalasi paket Webmin yang dapat Anda cari di CD Majalah InfoLINUX edisi ini. # rpm -ivh webmin-1.2301.noarch.rpm
2. Selanjutnya, jalankan service webmin # /etc/init.d/webmin start
3. Masuk ke halaman Webmin dengan mengetikkan di url browser Anda, http:// localhost:10000. Login dengan user root dan masukkan password root Anda. 4. Berikutnya kita akan menginstallasi BitDefender Webmin Module. Untuk menginstallasi BitDefender Webmin Module, Anda dapat meng-copy dari CD InfoLI-
www.infolinux.web.id
INFOLINUX 12/2005
63
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Bochs
Emulasi Komputer dengan Bochs Di dunia open source, kita mengenal salah satu emulator komputer yang hebat. Namanya adalah Bochs. Dengan menggunakan Bochs, kita bisa mengemulasikan komputer di atas komputer. Kita bisa menginstal sistem operasi lain di atas sistem operasi yang sedang berjalan. Tulisan ini akan membahas tentang Bochs dan beberapa isu seputar penggunaannya.
B
agi pengguna komputer yang bekerja di lebih dari satu sistem operasi, instalasi dua (katakanlah Windows dan Linux) atau lebih sistem operasi dalam satu harddisk adalah hal yang wajar. Tergantung sistem operasi mana yang diperlukan, sistem operasi tersebutlah yang diboot. Apabila ingin berganti sistem, maka sistem yang aktif akan di-reboot untuk selanjutnya berpindah ke sistem lainnya. Kondisi semacam ini memang kondisi yang sangat umum ditemukan bagi pengguna lebih dari satu sistem operasi. Tak jarang, sebuah partisi tambahan dibuat sebagai partisi untuk menyimpan data bersama yang bisa ditulisi oleh sistem operasi-sistem operasi yang digunakan. Masalah baru akan timbul ketika ada kebutuhan untuk menggunakan dua sistem operasi bersama-sama. Hal ini tidak dimungkinkan dengan sistem dual boot (atau lebih) tersebut. Pendekatan dengan menggunakan wine (ataupun variannya) terkadang juga tidak bisa membantu banyak. Tidak semua aplikasi bisa diemulasikan dengan wine. Kalaupun bisa, bagaimanapun juga, aplikasi yang berjalan di Wine tidak akan sebaik ketika berjalan di sistem asalnya. Selain itu, bagaimana kalau sistem operasi utama adalah Windows? Di sinilah emulator komputer diperlukan. Dengan menggunakan emulasi komputer, kita bagaikan memiliki banyak komputer yang sama-sama sedang berjalan, namun tetap bisa saling bekerja sama. Dan, secara fisik, kita hanya memiliki satu komputer saja. Di dalam setiap emulator, kita bisa menginstall sistem operasi sendiri pada harddisk virtual (yang bagi sistem operasi yang menjalankan emulator, umumnya berupa sebuah file berukuran besar).
64
INFOLINUX 12/2005
Di dunia ini, kita mengenal banyak sekali emulator komputer. Salah satu yang terbaik yang mungkin pernah ada adalah VMWare. Namun, software seharga 200-an dollar Amerika Serikat tersebut bagi beberapa kalangan pengguna sangatlah mahal. Terutama, kalau emulasi digunakan untuk sistem operasi yang sudah lama (dan harganya sendiri juga sudah murah) seperti DOS ataupun Windows 95. Bagi pengguna yang mencari alternatif emulator yang murah (bahkan gratis!), dapat diinstal pada berbagai sistem operasi (multiplatform), dan dapat mengemulasikan beberapa sistem operasi, maka Bochs adalah salah satu alternatif yang terbaik yang ada.
tuk bertingkah laku seperti komputer 386, 486, Pentium ataupun Pentium Pro (dukungan tidak lengkap). Bochs tidak dapat digunakan untuk mengemulasikan mesin Sparc atau mengemulasikan mesin Apple misalnya. Namun, Bochs sendiri adalah emulator yang dapat berjalan pada berbagai sistem operasi. Bochs dapat diinstal pada berbagai sistem operasi yang berjalan pada berbagai hardware ataupun arsitektur komputer. Misal, Bochs dapat berjalan pada Linux yang berjalan pada mesin Sun. Namun, pada proses emulasi, Bochs tetap akan mengemulasikan hardware dengan arsitektur x86.
Emulasi hardware
Pengenalan Bochs Bochs adalah emulator komputer. Sebuah software yang mampu mengemulasikan berbagai hardware yang menyusun sebuah komputer yang bekerja penuh. Bochs mampu mengemulasikan processor, memory, harddisk, sound card, vga card, dan lain sebagainya. Ketika dijalankan, Bochs akan menampilkan sebuah konsole yang mensimulasikan komputer yang dinyalakan. Kita bisa memasukkan CDROM installer suatu sistem operasi, kita bisa menginstal sistem operasi tersebut di harddisk yang telah diemulasikan oleh Bochs. Setelah instalasi selesai, Bochs bisa boot ke dalam sistem operasi tersebut dan sistem operasi tersebut bekerja seolah-olah sedang berjalan di komputer yang sesungguhnya.
Arsitektur komputer Lebih lanjut lagi, Bochs adalah emulator komputer x86. Bochs dapat dikonfigur un-
www.infolinux.web.id
Dengan kata lain, Bochs tidak peduli akan hardware yang berjalan sistem operasi host (sistem operasi yang menjalankan bochs). Selama hardware host dapat dikenali dengan baik oleh sistem operasi, maka bochs dapat berkomunikasi dengan hardware tersebut (secara teoritis). Kondisi demikian bisa dilakukan karena Bochs telah mengemulasikan jenis hardware tertentu. Bochs tidak perlu mengemulasikan hardware host. Bochs memiliki ‘hardware’ sendiri. Berikut ini adalah beberapa hardware yang diemulasikan oleh Bochs: Processor: 386, 486, 586 atau yang kompatibel Harddisk: IDE Harddisk ATA-2 CDROM: IDE CDROM ATAPI-4 Keyboard: Keyboard PS/2 standar dengan keymap Amerika Utara Mouse: Mouse PS/2 Sound card: Sound Blaster 16
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Bochs
Network card: NE2000 atau yang kompatibel Satu hal yang luar biasa tentang Bochs adalah kemampuan untuk mengemulasikan SMP (Symetric Multi Processor) sampai 15 processor. Walaupun, harus diakui, fitur ini masih sangat eksperimental. Satu catatan untuk emulasi SMP adalah, walaupun kita bisa menentukan jumlah processor, tidak berarti kalau emulasi akan berjalan lebih cepat. Sebagai emulator open source, bochs memang sudah cukup hebat dalam melakukan emulasi berbagai hardware. Memang, harus diakui pula, tidak semua emulasi hardware dapat berjalan dengan baik, di semua sistem operasi host. Kemampuan emulasi CDROM di Bochs misalnya. Emulasi CDROM cukup bagus di Bochs. CDROM dapat dibaca dari ISO image untuk berbagai sistem operasi. Di berbagai sistem operasi, Bochs juga mampu untuk membaca langsung device CDROM. Bahkan, Bochs juga bisa melakukan booting dari bootable CDROM ataupun bootable CDROM image. Namun, kemampuan Bochs dalam mengemulasikan Sound card tidaklah sebaik CDROM. Memang, di beberapa platform seperti Windows dan Linux, sound bisa bekerja. Namun, tidak dengan sound di Mac OSX. Dukungan untuk USB bahkan lebih jelek lagi. Saat ini, dukungan USB masih belum lengkap. Jadi, kita tidak bisa mengharapkan Bochs untuk mampu mengemulasi semua harddisk yang ada dengan baik, di semua platform. Terkadang, sebuah hardware diemulasikan
Emulasi FreeDOS.
dengan baik di satu platform, namun tidak di platform lain.
Fitur lainnya Berikut ini adalah fitur Bochs selain yang dibicarakan sebelumnya: Memiliki command line debugger, yang dapat digunakan untuk melakukan debugging. Sangat berguna bagi yang ingin mempelajari sistem operasi lebih jauh lagi. Mendukung floating point melalui software floating point. Dukungan VGA. Dukungan VESA sampai 1024x768 32bpp . Mendukung floppy disk sampai 2,88MB. Mendukung 4 channel ATA, atau 8 device ATA (8 harddisk pada umumnya). Mendukung paralel port. Mendukung serial port. Mendukung game port. Mendukung 16/32 bit addressing. Bisa copy dan paste antara host OS dan guest OS.
Istilah yang dipergunakan Bochs dan emulator komputer lainnya umumnya mengenal istilah-istilah: Host, sistem operasi atau mesin yang menjalankan bochs Guest, sistem operasi atau mesin yang diemulasikan.
Lisensi Bochs Pada awalnya (Bochs dimulai pada tahun 1994), Bochs merupakan proyek komersial.
Pada tahun 2000, MandrakeSoft membeli Bochs dan menjadikan Bochs proyek open source di bawah lisensi LGPL. Lisensi ini menjadikan Bochs sangat fleksibel baik bagi kalangan pengguna biasa ataupun kalangan industri. Satu yang terakhir, sebelum kita berpindah dari pengenalan, Bochs bisa diucapkan sebagai box. Nama Bochs merupakan permainan kata-kata dari Box. Nama Bochs ini terpikir karena umumnya pengguna menyebut sistem operasinya sebagai box, misal: Linux box, Windows box, dan lain sebagainya.
Kegunaan Bochs Berikut ini, kita akan melihat kapan kita membutuhkan Bochs. Yang pertama adalah seperti yang disebutkan sebelumnya. Kita perlu bekerja pada dua sistem operasi sekaligus. Bekerja pada dua sistem operasi sekaligus tidak harus selalu dalam pengertian yang serius. Misal, Anda ingin bermain game Windows sementara sedang bekerja di Linux (refreshing). Alasan kedua adalah katakanlah Anda masih ingin mempertahankan program lama sementara, sistem operasi baru di komputer baru Anda sudah tidak mendukung lagi. Misal, Anda ingin menjalankan aplikasi DOS yang lama sementara untuk aplikasi tersebut, Windows XP yang Anda gunakan sudah tidak mendukung. Alasan ketiga adalah belajar. Bagi yang ingin mendalami sistem operasi di era sekarang, menggunakan Bochs merupakan salah satu cara yang sangat membantu. Bochs bisa
Emulasi Linux Redhat Rescue disk.
www.infolinux.web.id
INFOLINUX 12/2005
65
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Bochs
mengemulasikan banyak sistem operasi. Proses belajar tidak harus selalu diartikan secara akademis. Anda bisa menggunakan Bochs untuk me-reverse engineering sebuah driver misalnya. Alasan keempat adalah alasan kesenangan. Kangenkah Anda akan sistem DOS yang Anda gunakan ketika kali pertama belajar komputer? Atau, barangkali Anda ingin menginstall kembali Slackware 4.0 atau Debian 2 atau Redhat 6 Anda yang beberapa tahun lalu Anda gunakan? Gunakan Bochs.
Bochs dan VMWare Bochs mirip-mirip dengan VMWare. Namun, secara umum, Bochs tidak bisa dibandingkan dengan VMWare. VMWare sendiri adalah produk dari perusahaan besar dengan dana dan sumber daya manusia serta perencanaan yang telah diusahakan dengan baik. Ada target untuk rilis-rilis VMWare. Sebagai hasilnya, VMWare dijual dengan sangat mahal. Sementara, Bochs adalah salah satu proyek emulator open source yang mungkin tidak memiliki dana sekencang perusahaan pembuat VMWare. Sumber daya manusianya pun, walaupun hebat, mungkin tidak bekerja fulltime untuk Bochs. Dan, perencanaan Bochs pun bergantung pada para pengembangnya ataupun komunitas. Tidak ada target keras tertentu untuk rilis-rilis Bochs. Sebagai hasilnya, Bochs bisa digunakan tanpa harus membayar sepeser pun. Bochs tidak datang dengan graphical user interface sebagus VMWare. Sebagai gantinya, Bochs datang dengan command line interface.
Emulasi OpenBSD.
66
INFOLINUX 12/2005
Bochs juga tidak memiliki dukungan hardware yang matang untuk semua platform. Terkadang, perbedaannya terlalu kentara. Bahkan, USB pun tidak didukung dengan baik, untuk semua platform. Bochs juga tidak memiliki integrasi yang tinggi dengan sistem operasi host. VMWare selain datang dengan modul untuk kernel berbagai distro (sampai versi-versinya), masih mampu mengkompilasi modul untuk kernel yang tidak standar atau yang lebih baru. Singkat kata, Bochs dan VMWare dalam beberapa hal memang tidak bisa dibandingkan. Namun, Bochs juga memiliki sejumlah kelebihan seperti gratis, source code yang terbuka, lisensi yang fleksibel, dan hal-hal lainnya. Yang terpenting, kalau permasalahan bisa diselesaikan dengan Bochs, kita tidak perlu menggunakan VMWare.
Instalasi Bochs Bochs bisa di-download di website-nya di bochs.sf.net. Namun, beberapa distribusi sudah datang dengan Bochs di dalam CDROM atau DVDROM distro. Sebelum men-download source dan melakukan kompilasi sendiri, cobalah untuk mempergunakan paket yang telah disiapkan untuk distribusi Anda. Sebagai catatan, tulisan ini dibuat di distro Linux SUSE Linux Pro 9.3, dengan Bochs yang di-upgrade menjadi versi 2.2.1. Setelah terinstal, Bochs akan datang dengan tiga program: Bochs: emulator itu sendiri. bxImage: tool untuk membuat disk image untuk digunakan pada Bochs. Ketika
Emulasi NetBSD.
www.infolinux.web.id
menggunakan Bochs, kita perlu membuat harddisk ‘virtual’ di mana Bochs akan menganggapnya sebagai harddisk. Dari sisi pandang host, harddisk virtual tersebut hanyalah sebuah file image biasa, yang dibuat dengan bximage. bxcommit: tool interaktif untuk mengcommit redolog ke disk image untuk digunakan oleh Bochs. Bochs-dlx: Menjalankan demo DLX Linux Setelah bochs terinstal, kita bisa melanjutkan ke langkah berikutnya: memulai bochs dengan image contoh DLX Linux.
Menjalankan DLX Linux Bochs datang dengan sebuah image DLX Linux yang siap untuk dijalankan. Untuk menjalankan, berikanlah perintah bochsdlx. $ bochs-dlx -------------------------------------------------------------DLX Linux Demo, for Bochs x86 Emulator -------------------------------------------------------------Checking for bochs binary...ok Checking for DLX linux directory...ok Checking for /usr/bin/gzip...ok Checking for /home/nop/.bochsdlx directory... -------------------------------------------------------------To run the DLX Linux demo, I
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Bochs
need to create a directory called /home/nop/.bochsdlx, and copy some configuration files and a 10 megabyte disk image into the directory. -------------------------------------------------------------Is that okay? [y/n]
Kali pertama dijalankan, script bochsdlx akan membuat sebuah direktori ~/.bochsdlx dan mengekstrak file-file yang dibutuhkan ke dalamnya. Jawablah y pada saat konfirmasi untuk membuat direktori diminta. Setelah itu, secara otomatis emulator yang berisi DLX Linux akan dijalankan. Sebuah window akan ditampilkan. Emulasi pun akan dimulai. Setelah DLX Linux selesai boot, pengguna akan menjumpai sebuah login prompt. Login-lah sebagai root (tanpa password) untuk memulai penggunaan. Pengguna kemudian bisa bekerja seperti biasa. Untuk menutup sesi sistem, pengguna dapat logout dan klik langsung pada tombol Power yang terletak pada kanan atas dialog. Sampai di sini, pengguna telah dibawa untuk melihat kemampuan Bochs untuk mengemulasikan Linux di atas Linux. Berikut ini, kita akan melanjutkan ke penggunaan yang lebih menarik, yaitu mencoba berbagai disk image yang disediakan.
Memulai Bochs dengan image yang disediakan Berkat kontribusi dari berbagai pengguna dan pengembang Bochs di seluruh dunia, di website Bochs, kita bisa menemukan berbagai disk images siap pakai. Ukuran dari disk images tersebut beraneka ragam, mulai dari yang berukuran di bawah 5 MB sampai yang mendekati 100 MB. Sistem operasinya pun macam-macam, mulai dari Linux, *BSD sampai GNU Hurd. Mencoba Bochs yang paling mudah adalah dengan menggunakan disk image yang sudah ada. Dengan demikian, kita tidak perlu: Membuat disk image sendiri. Melakukan instalasi dan konfigurasi sendiri.
FreeDOS Sebagai contoh pertama, kita akan mencoba disk image berisikan sistem freedos. Download-lah file freedos-img.tar.gz dan lakukanlah langkah-langkah berikut ini untuk memulai emulasi: Ekstraklah freedos-img.tar.gz tersebut dengan perintah: $ tar zxvf freedos-img.tar.gz freedos-img/ freedos-img/a.img freedos-img/b.img freedos-img/c.img freedos-img/bochsrc
puan bochs dalam mengemulasi OpenBSD. Download-lah terlebih dahulu image openbsd-img.tar.gz yang hanya berukuran sekitar 1.3 M. Setelah itu, lakukanlah langkahlangkah berikut: Ekstraklah openbsd-img.tar.gz tersebut dengan perintah: $ tar zxvf openbsd-img.tar.gz openbsd-img/ openbsd-img/a.img openbsd-img/README openbsd-img/TESTFORM.txt openbsd-img/bochsrc
Masuklah ke direktori hasil ekstraksi: Masuklah ke direktori freedos-img
$ cd
openbsd-img
$ cd freedos-img
Jalankanlah perintah berikut untuk menjalankan Bochs:
Berikanlah perintah berikut ini untuk menjalankan emulator: $ bochs -q
$ bochs -q
Selanjutnya, sebuah window akan ditampilkan. Setelah FreeDOS selesai booting, pengguna segera bisa bekerja dengan DOS. Kliklah pada tombol Power begitu penggunaan selesai.
Linux Image kedua yang akan kita coba adalah image distribusi Linux (rescue disk Red Hat dengan kernel 2.2.14). Image linux-img.tar. gz ini berukuran cukup kecil, yaitu 2 MB. Lakukanlah langkah-langkah berikut ini setelah download linux-img.tar.gz selesai dilakukan: Ekstraklah linux-img.tar.gz tersebut dengan perintah: $ tar zxvf linux-img.tar.gz linux-img/ linux-img/README linux-img/TESTFORM.txt linux-img/minibootable.img linux-img/bochsrc
Masuklah ke direktori hasil ekstraksi: $ cd linux-img
Berikan perintah berikut untuk menjalankan emulator: $ bochs -q
OpenBSD Berikut ini, kita akan membuktikan kemam-
www.infolinux.web.id
Sebuah dialog akan ditampilkan. Sedikit berbeda, pada prompt yang ditampilkan, tekanlah tombol ENTER. Booting akan dilakukan menggunakan image disket.
NetBSD Masih berada dalam keluarga BSD, kali ini kita akan mencoba emulasi NetBSD. Download-lah image netbsd-img.tar.gz yang berukuran 1.2 MB. Setelah itu, lakukanlah langkah-langkah berikut: Ekstraklah netbsd-img.tar.gz tersebut dengan perintah: $ tar zxvf netbsd-img.tar.gz netbsd-img/ netbsd-img/a.img netbsd-img/README netbsd-img/TESTFORM.txt netbsd-img/bochsrc
Masuklah ke direktori hasil ekstraksi: $ cd
netbsd-img
Berikanlah perintah berikut ini untuk menjalankan emulator: $ bochs -q
Sebuah dialog akan ditampilkan. Proses booting akan dilakukan dengan media floppy. Setelah itu, NetBSD mini siap digunakan. Setelah mencoba beberapa image yang disediakan, kita akan mencoba untuk membuat disk image sendiri,
INFOLINUX 12/2005
67
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Bochs
kemudian menginstalasi sendiri sistem operasi yang diinginkan, untuk kemudian menikmati kemampuan emulasi Bochs.
Membuat disk image dan menginstalasi OS Pada bagian ini, kita akan mempergunakan Bochs untuk menginstal dan menjalankan Linux Debian 3.1 (hanya base system saja). Sebelum kita bisa memulai, kita perlu membuat disk image terlebih dahulu. Untuk kebutuhan sistem Debian 3.1, kita akan menyediakan disk space sekitar 150 MB.
Langkah 1: Membuat disk image Gunakan program bximage untuk membuat disk image. Buatlah hd image (flat) dengan ukuran 150 MB dan disimpan sebagai debian31.img. Kemudian, catatlah baris-baris terakhir dari bximage seperti contoh berikut ini: ata0-master: type=disk, path=”debian31.img”, mode=flat, cylinders=304, heads=16, spt=63
Setelah itu, perhatikanlah direktori aktif Anda. Seharusnya, akan terdapat sebuah file debian31.img yang berukuran 150 MB. Sampai di sini, langkah 1 untuk membuat disk image telah selesai. Kita siap melanjutkan ke langkah berikutnya.
Langkah 2: Konfigurasi bochsrc Apabila diperhatikan, pada pembahasan mengenai penggunaan disk image yang tersedia: Kita selalu hanya menjalankan bochs dengan argumen -q. Sederhana sekali, tanpa pemberikan argumen yang berarti. Di setiap arsip, selalu tersedia file dengan nama .bochsrc, bochsrc, atau bochsrc. txt. File-file tersebut adalah file konfigurasi bochs untuk setiap image. Untuk image yang berbeda, file konfigurasi yang digunakan juga tentu berbeda. Kita bisa berpikir file konfigurasi tersebut merupakan file kontrol untuk setiap sistem yang ingin kita emulasikan. Dengan menggunakan file konfigurasi, kita bisa menjalankan Bochs tanpa argumen sama sekali.
Apabila diinginkan, kita pun bisa memberikan nama yang berbeda untuk file konfigurasi. Namun, dengan demikian, kita perlu memberikan argumen -f disertai lokasi file konfigurasi yang diinginkan. Bochs sangatlah fleksibel. File konfigurasi Bochs harus diakui cukup rumit. Namun, pada dasarnya, kita tidak perlu menggunakan semua opsi yang tersedia. Dalam sistem yang umum, kita hanya perlu melakukan beberapa pengaturan berikut: Jumlah memori yang diinginkan. Sebaiknya, kita memberikan nilai yang masuk akal. Sepertiga dari memory sistem adalah nilai yang masuk akal. Opsi yang dipergunakan adalah megs, sementara, nilai yang diperbolehkan adalah integer. Contoh: megs: 64
File konfigurasi akan dicari dalam urutan berikut ini: Mencari .bochsrc di dalam direktori aktif. Mencari bochsrc di dalam direktori aktif. Mencari bochsrc.txt di dalam direktori aktif. Mencari bochsrc.bxrc di dalam direktori aktif (hanya untuk Windows). Mencari .bochsrc di dalam home directory user (hanya untuk Unix). Mencari bochsrc di /etc (hanya untuk Unix).
Nama file ROMBIOS Opsi yang dipergunakan adalah romimage, sementara, nilai yang diperbolehkan adalah path ke rombios yang disertakan dalam distribusi bochs. Contoh: romimage: file=/usr/share/ bochs/BIOS-bochs-latest, address=0xf0000
Nama file VGABIOS Opsi yang dipergunakan adalah vgaromimage. Nilai yang diperbolehkan adalah path ke vgarombios yang disertakan dalam distribusi bochs. Contoh: vgaromimage: file=/usr/share/ bochs/VGABIOS-lgpl-latest
Ekstensi VGA yang akan dipergunakan Opsi yang dipergunakan adalah vga: extension=
. Umumnya, pengguna akan mengaktifkan ekstensi VBE. Contoh: vga: extension=vbe
Floppy (apabila diperlukan) Opsi yang dipergunakan adalah floppya (untuk floppy pertama). Nilai yang diperbolehkan adalah path ke image floppy ataupun lokasi device floppy pertama di Linux (/dev/fd0). Kita bisa pula memberikan opsi status dengan nilai inserted (floppy telah dimasukkan) ataupun ejected. Contoh: Instalasi Debian 3.1 di atas Bochs.
68
INFOLINUX 12/2005
www.infolinux.web.id
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Bochs
floppya: 1_44=/dev/fd0, status=ejected
Harddisk utama Opsi yang dipergunakan adalah ata0master (umumnya). Gunakan keluaran dari perintah bximage. Contoh: ata0-master: type=disk, path=”debian31.img”, mode=flat, cylinders=304, heads=16, spt=63
Contoh ini menunjukkan kita akan menggunakan harddisk primary master dengan nama file debian31.img. CDROM Opsi yang dipergunakan adalah salah satu dari ata-<master/slave>. N menunjukkan urutan device. Nilai yang mungkin adalah 0 sampai 3. Sementara, master atau slave menunjukkan status disk pada sebuah ATA channel. Dengan demikian, apabila cdrom diumpamakan ditancapkan pada primary slave, maka berikanlah opsi ini:
ngan nama bochsrc) yang menggunakan semua opsi yang telah dibahas sebelumnya: $ cat bochsrc megs: 64 romimage: file=/usr/share/ bochs/BIOS-bochs-latest, address=0xf0000 vgaromimage: file=/usr/share/ bochs/VGABIOS-lgpl-latest vga: extension=vbe floppya: 1_44=/dev/fd0, status=ejected ata0-master: type=disk, path=”debian31.img”, mode=flat, cylinders=304, heads=16, spt=63 ata0-slave: type=cdrom, path=”netinst.iso”, status=inserted boot: cdrom, c mouse: enabled=0
Langkah 3: Selesai Sampai di sini, seharusnya kita memiliki tiga file di dalam direktori aktif:
bochsrc, file konfigurasi. Debian31.img, yang merupakan harddisk primary master. Netinst.iso, yang merupakan image CDROM. Image ini dibuat dengan sumber adalah CDROM Net Install yang bisa didownload di Debian.org. Sampai di sini, kita telah siap untuk menjalankan bochs. Dengan boot sequence adalah cdrom, c, maka pertama-tama CDROM installer akan di-boot. Berikan perintah berikut ini untuk menjalankan Bochs: $ bochs -q
Sebuah dialog akan ditampilkan. Setelah itu, instalasi dapat dilakukan seperti biasa. Setelah instalasi selesai, maka Debian 3.1 yang diemulasikan pun siap untuk digunakan. Sampai di sini dulu pembahasan kita mengenai Bochs, emulator open source yang sungguh-sungguh luar biasa. Selamat mencoba dan sukses! Noprianto ([email protected])
ata0-slave: type=cdrom, path=”netinst.iso”, status=inserted
Perhatikanlah opsi type antara harddisk (disk) dan cdrom (cdrom). Selanjutnya, pengguna bisa memberikan lokasi ISO image CDROM pada opsi path. Opsi status akan menunjukkan apakah CDROM dimasukkan (inserted) atau tidak (ejected). Boot sequence Opsi yang dipergunakan adalah boot. Contoh: boot: cdrom, c
Status mouse (digunakan atau tidak, serta protokol mouse apabila digunakan) Opsi yang dipergunakan adalah mouse. Nilai yang mungkin adalah opsi enabled=0 atau enabled=1. Protokol dapat disebutkan secara eksplisit dengan opsi type. Contoh: mouse: enabled=0
Berikut ini adalah file konfigurasi (de-
www.infolinux.web.id
INFOLINUX 12/2005
69
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Oracle Cluster
Oracle Cluster pada Red Hat Linux Advance Server 3.0 Bagian 3 dari 3 Artikel Ini bagian puncak dari serial tiga tulisan, yang menunjukkan bahwa penulis telah berhasil menginstal Oracle Cluster dengan dua mesin atau node.
D
ua bagian sebelumnya menggambarkan bahwa OCFS dan Oracle Cluster Manager telah terinstalasi dan ter-patch dengan baik. Sekarang kita lanjutkan dengan melakukan instalasi Oracle Database Enterprise Edition dan patches, serta membuat database-nya.
Instalasi Oracle Database Enterprise Edition Instalasi Oracle dilakukan dengan menggunakan source yang sama dengan source installasi “Oracle Cluster Manager”. Untuk melakukan instalasi ikuti langkah berikut: [root@dsmp1 root]$ su - Oracle [Oracle@dsmp1 Oracle]$ cd /u01/ source/Oracle9i/Disk1 [Oracle@dsmp1 Disk1]$ ./ runInstaller
Proses Instalasi Oracle Database Setelah “./runInstaller” dijalankan dengan menggunakan user Oracle, maka akan tampil “Welcome Screen” sebagai pembuka persiapan instalasi Oracle Database. Setelah “Welcome Screen”
Gambar_10._Cluster_Node_Selection.
70
INFOLINUX 12/2005
tampil, lanjutkan proses instalasi dengan menekan tombol “Next”. Proses selanjutnya Oracle akan menampilkan “Cluster Node Selection” screen. Layar ini meminta kita untuk memilih node cluster yang akan digunakan oleh Oracle database nantinya. Karena kita hanya meng-cluster 2 node, maka yang tampil juga 2 node yaitu dsmp1 dan dsmp2. Untuk itu pilihlah kedua node tersebut seperti terlihat pada gambar 10. Setelah memilih node dsmp1 dan dsmp2, lanjutkan proses instalasi dengan mengklik tombol “Next”. Proses dilanjutkan dengan memilih “File Locations“ seperti terlihat pada gambar 11. Jangan lakukan perubahan apapun, karena Oracle langsung mendeteksi nilai yang kita setting pada .bash_ profile user Oracle. Jika Anda ingin melakukan perubahan seperti Name & Path, lakukan perubahan terlebih dahulu pada .bash_profile dan lakukan instalasi ulang. Untuk melakukan proses selanjutnya klik tombol “Next”.
Window berikutnya akan menawarkan 4 pilihan produk yang akan diinstal, yaitu Oracle9i Database 9.2.0.4.0, Oracle9i Client 9.2.0.4.0, Oracle9i Management and Integration 9.2.0.4.0, dan Oracle9i Cluster Manager 9.2.0.4.0. Pilihlah option “Oracle9i Database 9.2.0.4.0“, lalu klik tombol “Next”. Selanjutnya akan ada 3 pilihan tipe instalasi, yaitu Enterprise Edition (2.48GB), Standard Edition (2.74GB), dan Custom. Pilih Option “Enterprise Edition (2.48GB)”, kemudian lanjutkan dengan mengklik tombol “Next”. Kita akan membuat database setelah instalasi selesai. Oleh karena itu pilihlah option “Software Only” ketika layar “Database configuration” tampil seperti pada gambar 12. Lalu lanjutkan dengan mengklik tombol “Next”. Selanjutnya layar “Shared Configuration File Name” akan tampil seperti pada gambar 13, kemudian isikan Shared Configuration File Name dengan “/var/ opt/Oracle/oradata/orcl/SharedSrvctlConfigFile”, lalu klik tombol “Next”.
Gambar_11._File_Location_for_Source_and_Destination_Oracle_Database.
Gambar_12._Database_Configuration.
www.infolinux.web.id
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
TUTORIAL Oracle Cluster
Gambar_13._Shared_Configuration_File_Name.
Setelah semua informasi diisikan dengan benar, Oracle akan memberikan summary Installasi seperti pada gambar 14. Pada gambar tersebut terlihat ada 2 node yang akan diinstallasi oleh Oracle. Untuk memulai installasi, klik tombol “Install”.
Progress Installasi Oracle Setelah tombol “Install” di klik, Oracle akan memulai instalasi Oracle database di mesin dsmp1 dan dsmp2. Tunggu beberapa saat hingga proses instalasi selesai. Dalam salah satu proses instalasi akan ada tampilan yang memperlihatkan Oracle sedang melakukan “Remote Operation”, yaitu Oracle sedang melakukan copy installasi Oracle dari dsmp1 ke node RAC lainnya dalam hal ini adalah dsmp2. Proses ini harus terjadi karena jika Oracle tidak melakukan “Remote Operation”, installasi Oracle database dipastikan gagal. Pada gambar 15, Anda diminta untuk menjalankan script “root.sh” yang terdapat pada direktori “/u01/app/Oracle/ product/9.2” dengan menggunakan user root di dsmp1 dan dsmp2. Ini menunjukkan bahwa proses “Remote Operation” berjalan dengan lancar. Selanjutnya buka console baru di mesin 1 dan mesin 2 menggunakan user root dan jalankan perintah seperti di bawah ini pada semua RAC mesin / node: [root@dsmp1 root]# cd /u01/ app/Oracle/product/9.2 [root@dsmp1 9.2]# ./root.sh Running Oracle9 root.sh script... \nThe following environment variables are set as: ORACLE_OWNER= Oracle ORACLE_HOME= /u01/app/ Oracle/product/9.2
Gambar_14._Summary_Oracle_Database_Instalation_Information.
Enter the full pathname of the local bin directory: [/ usr/local/bin]: Copying dbhome to /usr/ local/bin ... Copying oraenv to /usr/ local/bin ... Copying coraenv to /usr/ local/bin ... \nCreating /etc/oratab file... Adding entry to /etc/oratab file... Entries will be added to the /etc/oratab file as needed by Database Configuration Assistant when a database is created Finished running generic part of root.sh script. Now product-specific root actions will be performed. [root@dsmp1 9.2]#
Setelah script “root.sh” kita jalankan di semua RAC mesin, klik tombol “OK” dan “Next”. Tunggu beberapa saat sehingga muncul window “End of Installation” sebagai tanda bahwa Oracle Database telah terinstal dengan baik.
Patches Oracle Database Enterprise Edition Setelah sukses melakukan instalasi, kita akan melanjutkan menginstall Oracle patches 9.2.0.6. Patches sangat diperlukan karena selain untuk memperbaiki bugs yang ada, patches juga dapat meningkatkan performansi database. Oracle Patches hanya bisa didapatkan jika Anda berlanggan ATS pada Oracle dan dapat di-download melalu site http://metalink.oracle.com.
www.infolinux.web.id
Gambar_15._Oracle_meminta_menjalankan_script_root.sh.
Oracle patches 9.2.0.6 source instalasi sama dengan source instalasi yang dilakukan untuk melakukan patches Oracle cluster manager.
Menjalankan instalasi patches Oracle Database Sebelum menjalankan “./runInstaller” pada source patches Oracle database untuk melakukan patches, kita harus menjalankan perintah di bawah ini: [Oracle@dsmp1 Disk1]$ cd $ORACLE_HOME/oui/bin [Oracle@dsmp1 bin]$ ./ runInstaller -updateNodeList -noClusterEnabled -local ORACLE_ HOME=$ORACLE_HOME CLUSTER_ NODES=dsmp1,dsmp2
Setelah itu jalankan “./runInstaller” pada source patches yang berlokasi sama dengan source Oracle cluster manager patches. [Oracle@dsmp1 Oracle]$ cd /u01/ source/patches/Disk1/ [Oracle@dsmp1 Disk1]$ ./ runInstaller
Proses Instalasi Patches Oracle Database Setelah “./runInstaller” dijalankan menggunakan user Oracle, ikutilah proses berikut untuk melakukan patches. Pada saat muncul “Welcome Screen”, lanjutkan dengan mengklik “Next”. Proses berikutnya adalah menentukan Name mana yang akan di patches. Jangan sampai salah pilih Name, isikan dengan “OraServer9i” sesuai dengan Name yang kita isikan waktu pertama instalasi, seperti tampak dalam gambar 16. Lanjutkan dengan mengklik tombol “Next”. Selanjutnya Oracle akan menampilkan “Selected Nodes” Screen yang menampilkan node dsmp1 dan dsmp2. Node inilah yang akan di-patches oleh Oracle.
INFOLINUX 12/2005
71
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Oracle Cluster
System (OCFS). Setelah menyiapkannya, lalu dimount ke folder “/u02”. setelah Anda menyiapkan partisi tersebut ikutilah langkah berikut ini: Jalankan command srvconfig – init dari user Oracle. Jalankan “dbca” dari user Oracle seperti di bawah ini.
Gambar_16._Specify_File_Location.
Gambar_17._Oracle_meminta_menjalankan_script_root.
Jika Anda memiliki lebih dari dua nodes, lakukanlah perubahan pada parameter CLUSTER_NODES. Klik tombol “Next” Selanjutnya Oracle akan meminta kita untuk menjalankan script “orainstRoot. sh” yang terdapat pada direktori “/u01/ app/oraInventory” di semua RAC Mesin. Untuk melakukannya Anda harus menggunakan user root.
cle akan melanjutkan “Linking” semua component yang dispatches. “Setting up” adalah proses berikutnya. Bagian yang cukup penting adalah saat Oracle melakukan “Remote Operation” dengan melakukan copy Patches dari mesin 1 ke semua mesin RAC lainnya, dan pada saat Oracle meminta kita untuk menjalakan script “root.sh” seperti dalam gambar 17. Untuk menjalankan script “root.sh” ikutilah langkah berikut:
[root@dsmp1 root]# cd /u01/ app/oraInventory/ [root@dsmp1 oraInventory]# ./orainstRoot.sh Creating the Oracle inventory pointer file (/etc/oraInst. loc) Changing groupname of /u01/ app/oraInventory to oinstall. [root@dsmp1 oraInventory]#
Setelah itu klik tombok “Continue” untuk melanjutkan proses instalasi patches. Proses selanjutnya, pilihlah option “Oracle 9iR2 Patchset 9.2.0.6” pada “Select a Product to Install”, lalu klik “Next”. Proses selanjutnya akan tampil “Available Product Component”. Tidak ada pilihan apa-apa pada layar ini cukup klik tombol “Next”. Seperti biasa sebelum memulai instalasi Oracle selalu memberikan “Summary”. Yakinkan pada menu “Global Settings |Cluster Nodes” terdapat semua RAC Node, dalam hal ini adalah dsmp1 dan dsmp2. Lanjutkan dengan mengklik tombol “Install”.
Progress Instalasi Patches Oracle Database Setelah mengklik tombol “Install”, Oracle akan memulai instalasi patches, yaitu diawali dengan “Copying Files”. Setelah proses “Copying” berhasil, Ora-
72
INFOLINUX 12/2005
[root@dsmp1 root]# cd /u01/ app/Oracle/product/9.2/ [root@dsmp1 9.2]# ./root.sh Running Oracle9 root.sh script... \nThe following environment variables are set as: ORACLE_HOME= /u01/app/ Oracle/product/9.2 Finished running generic part of root.sh script. Now product-specific root actions will be performed. [root@dsmp1 9.2]#
Klik “OK” dan “Next” serta tunggu hingga instalasi sukses yang ditandai dengan layar “End of Installation”.
Pembuatan database Setelah semua instalasi dari mulai OCFS, Oracle Cluster Manager dan Oracle database beserta Patchesnya terinstal dengan baik, inilah saat yang ditunggu-tunggu, karena kita akan membuat database menggunakan “Database Configuration Assistant” (DBCA). Untuk membuat database kita harus menyiapkan sebuah partisi baru yang terformat dengan Oracle Cluster File
www.infolinux.web.id
[Oracle@dsmp1 Oracle]$ dbca –datafileDestination /u02/ REALDSMP/oradata
Berikutnya akan tampil layar yang meminta Anda memilih antara Oracle cluster database atau Oracle single instance database. Pilih option “Oracle cluster database” lalu klik tombol “Next”. Selanjutnya pilih option “Create database” karena kita akan membuat database. Lanjutkan dengan mengklik tombol “Next”. Berikutnya akan tampil semua node untuk membuat cluster database. Klik tombol “Select All” untuk memilihnya. Dalam contoh ini ada 2 node, yaitu dsmp1 dan dsmp2. Lanjutkan dengan mengklik tombol “Next”. Berikutnya adalah memilih template database. Pilihlah option “Transaction Processing”. Tipe database ini bisa Anda sesuaikan dengan kebutuhan. Lanjutkan dengan mengklik tombol “Next”. Langkah selanjutnya adalah mengisikan “Global Database Name” untuk database yang akan dibuat. Dalam contoh ini Global Database Name dan SID Prefix berisi reald. Lanjutkan klik “Next”. Pilihan selanjutnya adalah Option “Dedicated Server mode” dan “Shared Server Mode”. Pemilihan ini baiknya disesuaikan dengan kebutuhan aplikasi yang ada, karena dengan memilih “Shared Server Mode” berarti connection ke Oracle dari client akan dilakukan pooling. Untuk lebih detailnya mengenai Dedicated dan Shared, bisa Anda dapatkan dalam dokumentasi Oracle. Kali ini kita pilih option “Dedicate server Mode”, lanjutkan dengan klik tombol “Next”. Untuk konfigurasi memory bisa dilakukan di awal atau nanti setelah database terbuat. Pengaturan parameter yang tepat memerlukan statistika yang tepat terlebih dahulu, seperti berapakah nilai “shared Pool”, “Buffer Chace” atau PGA
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Oracle Cluster
yang tepat? Anda dapat membacanya pada bagian “Tuning database” dokumentasi Oracle. Untuk melanjutkan konfigurasi database klik tombol “Next”. Untuk layar “Database Storage”, Anda tidak perlu melakukan perubahaan apapun, dan lanjutkan dengan klik tombol “Next”. Selanjutnya Oracle akan memulai instalasi. Tunggu hingga instalasi selesai. Selamat!! Anda telah berhasil melakukan konfigurasi Oracle cluster dengan baik.
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. SQL> conn / as sysdba Connected. SQL> select count(*) as count_instance from gv$instance; COUNT_INSTANCE --------------
SQL*Plus: Release 9.2.0.6.0 - Production on Thu Jul 14 08:53:35 2005 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. SQL> conn / as sysdba Connected. SQL> select count(*) as count_instance from gv$instance;
2
Startup, shutdown, dan status Oracle Database Cluster Setelah Oracle cluster berhasil diinstal, berikut ini adalah command untuk mengecek status, melakukan startup, dan shutdown database oracle. Check Status [oracle@dsmp1 oracle]# srvctl status database –d reald Instance reald1 is running on node dsmp1 Instance reald2 is running on node dsmp2 [oracle@dsmp1 oracle]# srvctl status instance –d reald –i reald1 Instance reald1 is running on node dsmp1 [oracle@dsmp1 oracle]# srvctl status instance –d reald –i reald2 Instance reald1 is running on node dsmp2 Shutdown [oracle@dsmp1 oracle]# srvctl stop database –d reald Startup [oracle@dsmp1 oracle]# srvctl start database –d reald
2. Lakukan Query berikut pada mesin 1 (dsmp1). [oracle@dsmp1 oracle]$ sqlplus system/manager@reald Connected to: Oracle9i Enterprise Edition Release 9.2.0.6.0 - Production With the Partitioning, Real Application Clusters, OLAP and Oracle Data Mining options JServer Release 9.2.0.6.0 Production SQL> select * from all_ objects;
3. Login ke mesin 2 (dsmp2) dan kita akan melakukan shutdown paksa (abort) pada mesin 2. [oracle@dsmp2 oracle]$ sqlplus /nolog Connected to: Oracle9i Enterprise Edition Release 9.2.0.6.0 - Production With the Partitioning, Real Application Clusters, OLAP and Oracle Data Mining options JServer Release 9.2.0.6.0 Production
Uji coba failed over & load balancer Sekarang kita akan mencoba untuk menguji coba kehandalannya. Untuk itu ikuti step berikut ini. 1. Yakinkan 2 Node dalam keadaan aktif dari mesin 1 (dsmp1). [oracle@dsmp1 oracle]$ sqlplus /nolog SQL*Plus: Release 9.2.0.6.0 - Production on Thu Jul 14 08:53:35 2005
SQL> conn / as sysdba Connected. SQL> shutdown abort
4. Setelah Oracle pada mesin 2 di-shutdown, check kembali jumlah node yang aktif dari mesin 1. [oracle@dsmp1 oracle]$ sqlplus /nolog
www.infolinux.web.id
COUNT_INSTANCE -------------1
Terlihat di atas jumlahnya 1, dikarenakan mesin 2 sudah kita shutdown. Lihat query yang masih berjalan pada mesin 1 (dsmp1) apakah terhenti ketika mesin 2 dishutdown? Query tidak akan berhenti walau ada salah satu mesin yang mati. 5. Bagaimana jika mesin 1 juga kita shutdown? apakah proses akan terhenti? [oracle@dsmp1 oracle]$ sqlplus /nolog Connected to: Oracle9i Enterprise Edition Release 9.2.0.6.0 - Production With the Partitioning, Real Application Clusters, OLAP and Oracle Data Mining options JServer Release 9.2.0.6.0 Production SQL> conn / as sysdba Connected. SQL> shutdown abort
Ketika semua mesin dalam keadaan offline, proses query akan terhenti dan menunggu sampai ada mesin yang kembali aktif dan proses query tersebut akan dilanjutkan, bukan diulang dari awal. 6. Startup kembali semua database, dan lihat proses query akan kembali berjalan. [oracle@dsmp1 Oracle]# srvctl start database –d reald
Dengan cluster ini sangat memungkinkan database Anda memiliki downtime yang sangat sangat kecil dan juga memberikan performansi yang sangat tinggi. Yahya Yanuar ([email protected])
INFOLINUX 12/2005
73
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Desknow Mail Server
Desknow Mail Server, Mudah dan Serbaguna Anda memiliki banyak pilihan mail server di Linux. Sayangnya, Sendmail dan Postfix yang biasa disertakan distro Linux kurang mudah pengelolaannya. Sebagai alternatif, Anda dapat mencoba Desknow mail server yang berbasis Java. ejak kali pertama diperkenalkan oleh seorang ilmuwan BBN Technologies, Ray Tomlinson, lebih dari tiga puluhan tahun yang lalu, teknologi electronic mail atau e-mail telah memprakarsai sebuah revolusi besar dalam sejarah komunikasi manusia. Kemudahan dalam mengaksesnya, kecepatan yang bisa diandalkan, serta hemat biaya, membuat suratsurat elektronik ini mampu mempengaruhi perilaku manusia dalam berkomunikasi. Tidak mengherankan jika dalam perkembangannya, aktivitas penggunaan e-mail menjadi sangat populer di kalangan pengguna teknologi jaringan komputer mulai dari Local Area Network (LAN), Wide Area Network (WAN) sampai dengan Internet. Mulai sekadar digunakan untuk berkomunikasi antarpribadi sampai urusan pekerjaan, bisnis, ataupun lainnya. Adanya layanan mail server, meskipun itu hanya digunakan di area jaringan komputer lokal, ternyata dirasakan sangat membantu komunikasi antarpengguna komputer, terutama jika hal tersebut dalam sebuah organisasi bisnis. Surat, laporan, presentasi, pengorganisasian tim kerja, pengumuman dan informasi lainnya dapat dengan cepat diko-
S
munikasikan menggunakan e-mail. Belum lagi jika mempertimbangkan arsitektur jaringan komputer yang ada. Adalah hal yang lumrah jika jaringan komputer yang ada tenyata saling berjauhan, di tempatkan dalam lantai yang berbeda, atau gedung yang berbeda. Apalagi jika cakupan jaringan komputer yang ada sudah mencapai jaringan komputer antarkota atau daerah. Karena itu, keberadaaan layanan mail server menjadi hal yang wajar dipertimbangkan untuk disediakan sebagai komponen pendukung layanan komunikasi yang murah, cepat, dan mudah digunakan. Dalam mengimplementasikan sebuah mail server, biasanya beberapa hal yang dipersiapkan dari sisi hardware, antara lain ketersediaan infrastruktur jaringan komputer dan tentu saja sebuah komputer high end yang memiliki spesifikasi cukup baik sebagai mail server meskipun hanya rakitan kita sendiri. Sedangkan dari sisi software, perlu dipertimbangkan pula Operating System yang digunakan. Platform Linux adalah sebuah pilihan yang tepat. Di samping kestabilan dan kehandalan yang ditawarkan, nilai plus lainnya dari Operating System Open Source ini adalah kemudahan dalam
Gambar 1. Layar pertama Desknow Configuration Wizard.
Gambar 2. Menentukan port dan alamat IP.
74
INFOLINUX 12/2005
www.infolinux.web.id
memperolehnya dengan budget yang tidak terlalu besar. Pilihan bisa kita jatuhkan pada nama Redhat, Fedora, Mandrake/Mandriva, Slackware, atau distro-distro terkenal lainnya. Setelah itu kita dihadapkan pada beberapa pilihan aplikasi mail server yang bisa digunakan di atas platform Linux, sebut saja Postfix, Qmail, Sendmail, Xmail, Desknow, atau lainnya. Masing-masing aplikasi tersebut memiliki keunggulan dan ciri khasnya tersendiri, dan juga memiliki para pendukung yang fanatik dalam menggunakan dan mengembangkannya. Beberapa hal yang mungkin jadi pertimbangan dalam memilih paket aplikasi mail server biasanya: Kemudahan dalam instalasi. Jangkauan penggunaan, apakah mail server tersebut akan digunakan untuk layanan e-mail di jaringan LAN, WAN atau Internet. Fitur keamanan yang ditawarkan. Kemudahan dalam pengelolaan dan perawatan. Fitur yang dapat dimanfaatkan. Kestabilan. Ataupun pertimbangan-pertimbangan lainnya.
Gambar 3. Mengaktifkan Instant Messaging.
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Desknow Mail Server
Gambar 4. Memilih jenis aplikasi.
Gambar 5. Menentukan alamat IP yang dizinkan relay.
Gambar 6. Menentukan nama domain utama.
Pada umumnya, paket aplikasi mail server yang berjalan di platform Linux merupakan paket aplikasi high end yang biasa digunakan untuk menangani layanan email dalam kapasitas besar dan menjangkau jaringan komputer yang sangat luas seperti Internet. Fitur keamanan pun demikian, paket aplikasi Postfix misalnya, menjanjikan sejumlah uang bagi mereka yang mampu menemukan kelemahan di sisi keamanan, demikian pula dengan kemampuan mengelola dan kestabilan dalam memproses email yang mengagumkan. Akan tetapi, kesemuanya itu berbanding terbalik dengan kemudahan dan kenyamanan saat instalasi. Untuk menginstal paket mail server sendmail misalnya, selain menginstal Sendmail sebagai SMTP server, kita pun perlu menginstal paket aplikasi POP3 dan IMAP. Proses konfigurasinya pun tidak mudah, diperlukan pengetahuan teknis yang cukup mengenai seluk-beluk protokol e-mail yang digunakan, konsep TCP/IP dan DNS yang cukup baik, teknik implementasi keamanan dan lainnya. Kerumitan bertambah jika kita ingin mengintegrasikannya dengan sebuah database server untuk menampung email yang diproses atau mengintegrasikannya dengan paket aplikasi webmail seperti Squirel Mail. Hal tersebut berbanding terbalik juga dengan masalah troubleshooting dan maintenance yang bia-
sanya tidak mudah. Memang sebuah harga yang pantas untuk mendapatkan sebuah mail server yang tangguh. Namun, jika kita mempertimbangkan sebuah aplikasi mail server untuk jangkauan sedang seperti hanya digunakan untuk menangani layanan e-mail dalam sebuah Wide Area Network yang tidak terlalu rumit ataupun Local Areal Network yang cukup besar dan mempertimbangkan beberapa hal seperti: Tersedianya protokol mail standar SMTP/POP3/IMAP. Kemudahan dalam instalasi, pengelolaan dan maintenance. Paket aplikasi database server dan webmail yang terintegrasi. User interface yang profesional dan mudah digunakan. Memiliki kestabilan dan kehandalan yang mencukupi.
integrasi dan lintas platform Operating System, antara lain: Proses instalasi yang sangat mudah dipandu Wizard GUI. Administrasi via web. Webmail dengan GUI yang sangat baik dan lengkap. Memungkinkan user untuk menggunakan mail client konvensional. Fitur kalender event baik personal maupun grup. Fitur sharing dokumen. Fitur Message Board dan Announcement yang dikelola Administrator. Fitur-fitur lainnya seperti Backup data, Multy Virtual Domain, SMTP Forwarding maupun Multy POP3.
Kita dapat menjajal kemampuan Desknow Mail Server Lite, sebuah aplikasi mail server produksi Ventia Ltd. yang dibuat di atas platform pemograman Java. Fiturfitur dari versi Lite Desknow Mail Server ini sudah dapat mencukupi keinginan kita untuk membangun sebuah mail server yang cukup baik, bahkan mungkin tergolong istimewa. Fitur-fitur unik yang ditawarkan selain fitur standar SMTP/POP3/IMAP ter-
Sedangkan fitur-fitur menarik versi Profesional yang dapat kita coba selama 30 hari antara lain fasilitas Instan Messaging, Anti Virus, Anti Spam, Content Filtering, Mail Filter, Mailing List, SMTP over SSL, POP3 over SSL, Web Folder dan lainnya. Namun fitur-fitur yang nonaktif setelah 30 hari tersebut bisa kita gantikan dengan paket aplikasi lainnya. Jika menginginkan fasilitas SSL kita bisa menggunakan aplikasi webmail Squirrelmail atau sejenis yang menyediakan layanan SSL. Antivirus, Anti-spam dan Mail Filter bisa kita setting di aplikasi mail client yang ada di komputer user. Demikian pula
Gambar 7. Mengatur setting waktu regional.
Gambar 8. Memilih database.
Gambar 9. Instalasi selesai menyimpan setting.
www.infolinux.web.id
INFOLINUX 12/2005
75
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Desknow Mail Server
Gambar 10. Menguji dengan telnet.
Gambar 11. Login untuk user admin.
yang lainnya, bisa kita gantikan dengan paket aplikasi lainnya.
Proses instalasi yang mudah
dress server (Default HTTP port adalah 80, namun untuk menghindari bentrok dengan port dari Apache Server sebaiknya diganti ke nomor yang lainnya. Demikian pula dengan port HTTPS). (Lihat gambar 2). Setting port instan messaging (Lihat gambar 3). Setting memilih jenis aplikasi Desknow Mail Server Lite (Lihat gambar 4). Setting akses IP yang diijinkan melakukan relay SMTP (Lihat gambar 5). Setting virtual domain pertama (Lihat gambar 6). Setting regional dan zona waktu (Lihat gambar 7). Setting sistem database, meskipun pada keterangan database McKoi idealnya digunakan untuk 20–30 user, namun penulis menggunakannya untuk 50–100 user dan sejak tiga tahun lalu tidak bermasalah. Desknow juga mensupport database lainnya seperti mySQL (Lihat gambar 8). Selesai (Lihat gambar 9).
Gambar 12. Menu admin melalui web.
layanan, pilih opsi “stop” dan untuk merestart “restart”). 11. Untuk menjalankan secara otomatis saat boot Linux edit file /etc/rc.d/rc.local lalu ketik dibaris terakhir service desknow start. 12. Restart Linux. 13. Cek menggunakan perintah telnet untuk memastikan layanan protokol SMTP dan POP3 aktif (Lihat gambar 10). 14. Untuk pengadministrasian awal, buka browser favorit dan ketik di address bar http://nama_host atau localhost atau IP address:port lalu login: (Lihat gambar 11). username : admin password : password 15. Ganti password username : admin. 16. Setting account email untuk user. 17. Selesai.
Hal yang paling mencolok dari Desknow Mail Server Lite ini jika dibandingkan dengan aplikasi mail server lainnya di lingkungan Linux adalah proses instalasi yang mudah, sekalipun untuk para pemula di dunia Linux. Jika digambarkan, urutan proses instalasi Desknow Mail Server Lite ini adalah sebagai berikut: 1. Instal Java SDK jika belum terinstal pada distro Linux yang digunakan. 2. Login sebagai super user atau root. 3. Ekstrak paket Desknow Mail Server Lite ke folder yang disukai. 4. Copy folder desknow ke /var. 5. Copy folder desknowdata ke /var. 6. Copy file etc/desknow.conf ke /etc. 7. Copy file etc/init.d/desknow ke /etc/init. 8. Edit file /etc/desknow.conf untuk setting lokasi aplikasi Java atau parameter JAVA HOME, biasanya ada di “/usr/java/ j2sdk1.4.2_??” (?? = tergantung nomor versi yang digunakan). 9. Jalankan GUI wizard untuk konfigurasi /var/desknow/bin/config.sh. Pada wizard ini kita akan dipandu untuk melakukan setting: (Lihat gambar 1). Setting port Http, Https dan IP ad-
10. Jalankan Desknow Mail Server Lite dengan mengetik perintah /etc/init.d/ desknow start atau ketik perintah service desknow start (Untuk mematikan
Artinya, dari manapun dan kapanpun, selama ada jaringan yang terkoneksi ke mail server yang telah kita buat maka, semua prose pengaturan mulai melakukan setting account mail user, pengaturan layanan, setting mail server, announcement sampai
Gambar 13. Admin membuat user baru.
Gambar 14. Tampilan webmail.
Gambar 15. Mengakses dengan Kmail.
76
INFOLINUX 12/2005
www.infolinux.web.id
Setelah proses instalasi selesai, maka Desknow Mail Server Lite dengan segala fiturnya ini telah siap digunakan oleh user.
Administrasi mail server via web
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Desknow Mail Server
Gambar 16. Aplikasi web kalender.
Gambar 17. Fitur file sharing.
Gambar 18. Fitur message boards.
melakukan setting message board dapat dilakukan secara remote melalui sebuah web browser baik yang berjalan di platform Linux maupun Operating System lainnya. (Lihat gambar 12 dan 13).
digunakan sebagai sarana berbagi dokumen-dokumen kerja kepada user-user lainnya. Dokumen-dokumen yang perlu mendapat tinjauan dari user lainnya dapat dengan mudah diakses oleh user dalam sistem jaringan yang sama. (Lihat gambar 17).
Fitur-fitur menarik lainnya
Webmail dengan GUI yang sangat baik dan lengkap Selain proses instalasi yang terbilang cukup singkat di platform Linux, hal lain yang juga dinilai baik adalah fasilitas webmail-nya. User Interface yang dimilikinya termasuk ‘good looking’ serta dapat di-customize sesuai selera user dan yang terpenting, sangat mudah dalam penggunaannya. Segala fitur yang disediakan oleh Desknow Mail Server Lite ini dapat dijangkau dengan mudah oleh user-nya. (Lihat gambar 14).
Memungkin user untuk menggunakan mail client konvensional Bagi user yang lebih suka menggunakan program e-mail client konvensional dapat seperti biasa melakukan setting seperti biasa pada mail client favoritnya seperti Evolution, Kontact maupun mail client platform lainnya seperti Outlook Express, Eudaoramail, Foxmail ataupun lainnya bila perlu, menggunakan fasilitas telnet sekalipun. (Lihat gambar 15).
Fitur message board dan announcement Fitur message board dan announcement ini sepenuhnya dikelola oleh seorang System Administrator (SysAdmin). Fitur message board dapat disetting hak aksesnya dan dibuat sesuai permintaan dari user baik itu untuk sekelompok user tertentu maupun untuk seluruh user yang ada. Sedangkan fitur announcement sepenuhnya menjadi hak System Administrator untuk menggunakannya, biasanya digunakan untuk mengumunkan hal-hal penting yang perlu disampaikan kepada semua user yang ada. (Lihat gambar 18).
Support multi domain virtual. Fitur ini memungkinkan kita membuat lebih dari satu domain virtual untuk memudahkan pembagian account user berdasarkan departemen, misalnya. Fasilitas backup database yang dapat disetting otomatis sesuai dengan keinginan kita, fitur tersebut sangat berguna untuk menjaga kemungkinan yang tidak diinginkan seperti kerusakkan database maupun program. Support akses ke beberapa POP3 server lainnya. Fitur ini memudahkan user dalam mengelola account email dari mail server POP3 lainnya. Memungkinkan user mengirimkan email ke mail server SMTP lain dengan menggunakan fasilitas relay yang dimiliki oleh Desknow Mail Server Lite ini. Logo pada tampilan awal bisa diubah dengan logo kita sendiri. Dindin Nugraha ([email protected])
Fitur kalender even, baik personal maupun grup Fitur yang cukup membantu untuk mengatur kegiatan sehari-hari ini men-support kalender even grup yang dapat digunakan sebagai sarana kolaborasi kerja dalam sebuah tim kerja. (Lihat gambar 16).
Fitur sharing dokumen Layaknya sebuah file sharing dalam sebuah sistem jaringan komputer, mail server ini menyediakan fitur file sharing untuk dapat
www.infolinux.web.id
INFOLINUX 12/2005
77