Post on 06-Mar-2019
IMPLEMENTASI SERVER E-MAIL
DENGAN MAIL CLIENT BERBASIS WEB
TUGAS AKHIR
Diajukan untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Sains
Program Studi Ilmu Komputer
Disusun oleh :
Nama : Iwan Hariyanto
NIM : 003124109
FAKULTAS MIPA
PROGRAM STUDI ILMU KOMPUTER
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2007
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN PERSEMBAHAN
Kupersembahkan Tugas Akhir ini buat orangtuaku yang telah
membiayai kuliahku sampe selesai, buat kakak & adikku beserta
keluarganya, buat yayangku Jelly Shinta, dan temen – temen ku semua
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PERNYATAAN KEASLIAN KARYA
Saya menyatakan dengan sesungguhnya bahwa tugas akhir yang saya tulis
ini tidak memuat karya atau bagian karya orang lain, kecuali yang telah
disebutkan dalam kutipan dan daftar pustaka sebagaimana layaknya karya ilmiah.
Yogyakarta, 15 September 2007
Penulis
Iwan Hariyanto
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ABSTRAK
Perkembangan teknologi informasi yang begitu pesat khususnya internet
telah memberikan perubahan cara manusia berkomunikasi. Salah satu aplikasi
internet yang popular saat ini adalah electronic mail ( e-mail ). Adanya aplikasi
internet yang satu ini, seseorang dapat berkomunikasi dengan orang lain tanpa
adanya lintas batas ruang dan waktu serta dengan biaya yang murah. Salah satu
komponen e-mail yang boleh dikatakan sangat signifikan adalah server e-mail.
server e-mail inilah yang sehari – hari bertugas menangani e-mail yang masuk dan
keluar.
Dalam Tugas Akhir ini penulis ingin memaparkan mengenai cara – cara
dan konfigurasi yang digunakan untuk membangun sebuah server e-mail dengan
media pengaksesan ( mail client ) berbasis web.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ABSTRACT
The fastly growth of information technology especially internet has given
a change the way of human to communicate. Recently, one of the popular internet
application is electronic mail (e-mail). The exist of this one internet application,
someone can communicate by the other without any limit of place and time also a
cheap cost. One of the e-mail component which may be said very significant is
server e-mail. This server e-mail usually handle up e-mail in and out.
Writer wants to describe about the way and configuration which is used to
build a server e-mail with mail client based of the web in this final report.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
KATA PENGANTAR
Segala puji bagi Alloh Swt, yang telah memberikan kekuatan, jalan,
petunjuk, dan tenaga sehingga penyusunan dan penulisan Tugas akhir dengan
judul Membangun E-Mail Server dengan Mail Client Berbasis Web dapat
dislesaikan penulis sebagai prasyarat kurikulum sarjana ( S-1 ) yang ada pada
Fakultas MIPA Program Studi Ilmu Komputer Universitas Sanata Dharma.
Penulis mengucapkan terimakasih kepada pihak – pihak yang telah
membantu, memberikan petunjuk dan bimbingan serta memberikan dukungan
baik secara langsung dan tidak langsung, antara lain :
1. Bapak dan Ibu tercinta yang telah memberikan dukungan, baik material
dan spiritual yang tak ternilai harganya kepada penulis.
2. Bapak Drs. Haris Sriwindono M.Komp. Selaku pembimbing I dalam
penulisan Tugas Akhir ini.
3. Ibu PH Prima Rosa S.Si., M.Sc. Selaku Kaprodi Ilmu Komputer,
trimakasih atas nasehat – nasehatnya.
4. Bapak Drs. Haris Sriwindono M.Komp. dan Bapak Iwan Binanto S.Si.
Selaku team penguji.
5. Bapak dan Ibu dosen dan staf karyawan Fakultas MIPA Universitas Sanata
Dharma, terimakasih atas ilmu yang telah diberikan dan fasilitas yang
disediakan.
6. Kakak-ku dan adik-ku serta keluarganya. Mas Bambang, Tri, Triwik, and
Barend Efensio, yang telah memberikan dukungan moral.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7. Jelly Shinta Sulandari, thanks atas cinta yang tulus dan dukungannya.
8. My best friend, Yosep and Rinto ( sukses selalu ).
9. Teman – teman kost-ku : Sebayang, Feri, Agus, Deny, Yoyok, Putra, dan
Heru serta Ibu kost dan keluarganya.
10. Teman – teman civitas dan teman – taman maen Thomas ( thanks atas
segala bantuannya ), sita, nyit-nyit, yulia, nisa, devi, pitri, diah, dan yang
lainnya yang ga bisa disebut satu –satu.
Yogyakarta, 15 Septmber 2007
Penulis
Iwan Hariyanto
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR ISI
HALAMAN JUDUL.............................................................................................. i
HALAMAN PERSETUJUAN PEMBIMBING..................................................... ii
HALAMAN PENGESAHAN.............................................................................. iii
HALAMAN PERSEMBAHAN............................................................................ iv
PERNYATAAN KEASLIAN KARYA................................................................ v
ABSTRAK............................................................................................................ vi
ABSTRACT.......................................................................................................... vii
KATA PENGANTAR......................................................................................... viii
DAFTAR ISI.......................................................................................................... x
DAFTAR TABEL................................................................................................ xv
DAFTAR GAMBAR.......................................................................................... xvi
BAB I PENDAHULUAN
1.1 Latar Belakang Masalah ............................................................................ 1
1.2 Tujuan ....................................................................................................... 2
1.3 Batasan Masalah ........................................................................................ 2
1.4 Spesifikasi Sistem ..................................................................................... 3
1.5 Metode Penelitian ...................................................................................... 3
1.6 Sistematika Penulisan ................................................................................ 3
BAB II DASAR TEORI
2.1 Server E-mail ............................................................................................ 5
2.2 E-mail di Dalam LAN .............................................................................. 6
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2.3 E-mail Dalam Jaringan Internet ................................................................ 7
2.4 Protokol Layanan E-mail .......................................................................... 8
2.5 Simple Mail Transfer Protocol ( SMTP ) ................................................. 8
2.6 Post Office Protocol version 3 ( POP3 ) ................................................. 10
2.7 Internet Mail Access Protocol version 4 ( IMAP4 ) ............................... 11
2.8 Peranan DNS Server dalam Layanan E-mail ......................................... 12
2.9 Proses Pengiriman E-mail ...................................................................... 13
2.10 Qmail .................................................................................................... 15
2.11 Web Server Apache ............................................................................... 17
2.12 PHP ........................................................................................................ 17
2.13 MySQL ................................................................................................. 18
2.14 Paket Pendukung Instalasi Qmail .......................................................... 19
2.14.1 Paket Utama .............................................................................. 19
2.14.2 Paket Patch ................................................................................ 22
BAB III PEMBAHASAN
3.1 Persiapan Instalasi................................................................................... 24
3.1.1 Konfigurasi Linux Fedora Core 2................................................... 24
3.1.1.a Apache................................................................................ 24
3.1.1.b MySQL............................................................................... 25
3.1.1.c Struktur Direktori.............................................................. 25
3.2 Instalasi dan Konfigurasi......................................................................... 27
3.2.1 Instalasi Daemontools..................................................................... 27
3.2.2 Instalasi UCSPI – TCP………………………………………….. 29
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3.2.3 Instalasi dan Konfigurasi Qmail………………………………… 30
3.2.3.a Instalasi…………………………………………………. 30
3.2.3.b Konfigurasi……………………………………………... 34
3.2.4 Instalasi Checkpassword Untuk Otentikasi POP3……………... 41
3.2.5 Pemilihan Format Mailbox…………………………………….. 42
3.2.6 Konfigurasi dan Instalasi Virtual Domain……………………... 43
3.2.6.a Keistimewaan dan Keunggulan Vpopmail ……………. 44
3.2.6.b Struktur Direktori……………………………………… 45
3.2.6.c Konfigurasi Vpopmail…………………………………. 46
3.2.6.d Installasi Vpopmail…………………………………….. 50
3.2.6.e Administrasi Mail Server dengan Vpopmail…………… 52
3.2.7 Instalasi Mailing List…………………………………………… 55
3.2.7.a Instalasi Ezmlm………………………………………... 56
3.2.7.b Administrasi Mailing List……………………………… 56
3.2.8 Autorespond……………………………………………………. 58
3.2.8.a Instalasi Autorespond………………………………….. 58
3.2.8.b Administrasi Autorespond…………………………….. 58
3.2.9 Qmailadmin……………………………………………………. 59
3.2.9.a Konfigurasi Qmailadmin………………………………. 59
3.2.9.b Instalasi Qmailadmin…………………………………... 61
3.2.9.c Administrasi Qmailadmin……………………………… 61
3.2.10 Sqwebmail…………………………………………………….. 66
3.2.10.a Konfigurasi Sqwebmail…………………………….. 66
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3.2.10.b Instalasi Sqwebmail………………………………….. 71
3.2.10.c Menggunakan Sqwebmail…………………………… 74
3.3 Persyaratan Membangun Server E-mail dengan Qmail………………... 78
3.3.1 Operating System………………………………………………... 78
3.3.2 Jaringan Komputer……………………………………………….. 79
3.3.2.a LAN……………………………………………………... 79
3.3.2.b MAN…………………………………………………….. 80
3.3.2.c WAN…………………………………………………….. 80
3.3.3 Peralatan Jaringan……………………………………………….. 80
3.3.3.a Server……………………………………………………. 81
3.3.3.b Workstation……………………………………………... 81
3.3.3.c NIC ( Network Interface Card )………………………… 81
3.3.3.d HUB……………………………………………………... 82
3.3.3.e Switch…………………………………………………… 84
3.3.3.f WAP ( Wireles Access Point )…………………………… 85
3.3.3.g Bridge………………………………………………….... 86
3.3.3.h Router………………………………………………….... 87
3.3.4 Topologi Jaringan………………………………………………... 88
3.3.4.a Topologi Bus Linier……………………………………… 89
3.3.4.b Topologi Ring…………………………………………… 90
3.3.4.c Topologi Star……………………………………………. 91
3.3.4.d Topologi Tree…………………………………………… 92
3.3.5 Alamat IP……………………………………………………….. 93
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3.3.5.a Kelas Alamat IP…………………………………………. 94
3.3.5.b Alamat IP Privat ( Non Routed )………………………… 98
3.3.6 Subnetting……………………………………………………….. 98
3.3.7 Router…………………………………………………………… 101
3.3.8 Firewall………………………………………………………… 103
3.3.9 Konfigurasi Jaringan…………………………………………… 105
3.3.10 Server DNS……………………………………………………..107
3.3.10.a Cara Kerja DNS……………………………………….. 108
3.3.10.b Konfigurasi DNS……………………………………….110
BAB IV PENUTUP
4.1 Kesimpulan............................................................................................ 118
4.2 Saran...................................................................................................... 118
DAFTAR PUSTAKA
LAMPIRAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR TABEL
Tabel 2.1 Perbandingan Antara Qmail dan Unix MTA Yang Lain……………. 16
Tabel 3.1 Kelas Alamat IP…………………………………………………….. 97
Table 3.2 Alamat IP Privat…………………………………………………….. 98
Table 3.3 Pembagian Subnet………………………………………………….. 101
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR GAMBAR
Gambar 2.1 Routing e-mail dalam LAN ............................................................... 6
Gambar 2.2 routing e-mail di Internet ................................................................... 8
Gambar 2.3 proses pengiriman e-mail ................................................................ 14
Gambar 3.1 Tampilan menu login....................................................................... 62
Gambar 3.2 Tampilan Main Menu....................................................................... 63
Gamabar 3.3 Tampilan New Email Account....................................................... 64
Gambar 3.4 Tampilan New Forward.................................................................. 65
Gambar 3.5 Tampilan New Mail Robot............................................................... 66
Gambar 3.6 Tampilan Menu Login...................................................................... 74
Gambar 3.7 Menu Folder...................................................................................... 75
Gambar 3.8 Menu Create Message....................................................................... 76
Gambar 3.9 Menu Preference............................................................................... 77
Gambar 3.9 Address Book.................................................................................... 78
Gambar 3.11 Kartu Ethernet................................................................................. 82
Gambar 3.11 Hub standalone dan Jaringan Dengan Hub Stanalone
Yang Terhubung Dengan Kabel Koaksial...................................... 83
Gambar 3.12 Hub Stackable dan Jaringan yang Terhubung
Menggunakan Port Stack............................................................... 84
Gambar 3.13 Switch dan Penggunaannya............................................................ 85
Gambar 3.14 WAP dan Jaringan Dengan WAP.................................................. 86
Gambar 3.15 Bridge dan Penggunaanya............................................................... 87
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 3.16 Router Buatan Pabrik dan Penggunaan Router............................... 88
Gambar 3.17 Topologi Bus Linier........................................................................ 90
Gambar 3.18 Toplogi Ring................................................................................... 91
Gambar 3.19 Topologi Star................................................................................... 92
Gambar 3.20 Topologi Tree................................................................................. 93
Gambar 3.21 Jaringan Komputer dengan Router.................................................102
Gambar 3.22 Proses Pada Paket Yang Melewati Firewall.................................. 104
Gambar 3.23 Jaringan dengan Satu Server Linux
Untuk Melayani semua Service Internet........................................ 106
Gambar 3.24 Proses DNS....................................................................................109
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB I
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PENDAHULUAN
1.1 Latar Belakang Masalah
Perkembangan teknologi informasi saat ini makin pesat, khususnya dalam
bidang teknologi komputer yang terhubung dalam jaringan Internasional atau
sering disebut Internet. Adanya Internet tersebut memungkinkan pemakai untuk
melakukan komunikasi yaitu berupa pertukaran data atau informasi secara cepat
antar komputer yang saling terkoneksi.
E-mail atau Electronic Mail merupakan salah satu jenis layanan pada
jaringan Internet yang mengalami perkembangan paling pesat. Pengiriman pesan
dengan e-mail memberikan nilai tambah yang efisien dibandingkan jika
menggunakan jasa kantor pos untuk pengiriman pesan. E-mail menampilkan
teknik pengiriman pesan dengan mudah dalam era perdagangan dan bisnis
modern.
E-mail merupakan salah satu layanan di Internet yang dapat dikatakan lalu
– lintasnya tersibuk kedua setelah web, bisa dilihat hampir semua domain di
Internet menyediakan service e-mail, saat ini layanan e-mail sudah menjadi
kebutuhan pokok dan penting bagi setiap pengguna Internet.
Salah satu komponen e-mail yang boleh dikatakan sangat signifikan dan
penting adalah server e-mail, server e-mail inilah yang sehari – hari bertugas
menangani pesan e-mail yang masuk dan keluar. Dalam penulisan tugas akhir ini
penulis akan membahas mengenai e-mail tersebut khususnya dalam pembangunan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
server e-mail, dalam makalah ini akan dibahas langkah – langkah dalam
membangun server e-mail berbasis web di Internet.
Komponen yang paling utama dalam membangun sebuah mail server adalah Mail
Transfer Agent ( MTA ), dalam makalah tugas akhir ini akan menggunakan Qmail
sebagai komponen MTA, Qmail merupakan MTA modern dan memiliki kinerja
yang lebih baik saat ini dibanding dengan MTA yang lain.
1.2 Tujuan
Adapun tujuan penulisan tugas akhir ini adalah :
o Membangun sebuah server e-mail berbasis web.
o Mengimplementasikan sebuah program e-mail untuk pengiriman dan
penerimaan pesan.
1.3 Batasan Masalah
Penulisan tugas akhir ini memiliki batasan – batasan masalah sebagai
berikut :
o Web yang akan dibuat hanya berupa service e-mail untuk pengiriman dan
penerimaan pesan.
o Mail Transfer Agent yang dipakai adalah Qmail.
o Penjelasan berupa tahap – tahap instalasi, konfigurasi dan administrasi.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1.4 Spesifikasi Sistem
Spesifikasi sistem dari tugas akhir ini sebagai berikut :
o Sistem operasi yang dipakai Linux Fedora Core 2.
o Database server menggunakan MySQL.
o SMTP server menggunakan Qmail.
o Implementasi mail client menggunakan sqwebmail.
o Protocol layanan e-mail menggunakan POP3.
1.5 Metode Penelitian
Adapun metode penelitian dalam tugas akhir ini adalah :
1. Literatur, yaitu pengumpulan sumber penulisan serta mempelajari
referensi yang berhubungan dengan server e-mail.
2. Internet, yaitu menggunakan referensi – referensi yang berasal dari
Internet sebagai penunjang penulisan Tugas Akhir ini.
1.6 Sistematika Penulisan
Sistematika penulisan tugas akhir ini sebagai berikut :
BAB I. Pendahuluan
Bab pertama ini meliputi latar belakang, tujuan, batasan masalah,
spesifikasi system, metodologi penulisan, dan sistematika penulisan tugas akhir
ini.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB II. Dasar Teori
Bab ini berisi tentang pengertian – pengertian yang berkaitan dengan
pembangunan server e-mail.
BAB III. Pembahasan
Pada bab ini akan dijelaskan tahap – tahap instalasi, konfigurasi server dan
administrasinya.
BAB IV. Penutup
Bab ini berisi kesimpulan dan saran dalam penulisan tugas akhir.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB II
DASAR TEORI
2.1 Server E-mail
Sebuah server adalah komputer yang dikhususkan untuk melayani
komputer – komputer lain dalam jaringan seperti internet, dengan layanan –
layanan tertentu. E-mail atau electronic-mail adalah suatu bentuk komunikasi
dengan menggunakan perangkat elektronik, terutama komputer.
E-mail server adalah komputer server yang mengurus segala keperluan dalam
kotak pos ( mail box ) untuk semua pengguna / clients yang telah terdaftar.
Server e-mail menjalankan sebuah aplikasi yang ditujukan untuk proses
pengiriman dan penerimaan e-mail, aplikasi tersebut biasa disebut MTA ( Mail
Transfer Agent ). Sedang aplikasi yang digunakan user untuk mengambil atau
menerima e-mail disebut Mail Client. Mail Client hanya dapat berkomunikasi
dengan Mail Transfer Agent, sedangkan Mail Transfer Agent dapat berkomunikasi
dengan Mail Transfer Agent lain. Proses pengiriman dan penerimaan e-mail dapat
dilakukan dengan Mail Client yang banyak tersebar di internet, seperti :
mailyahoo, hottmail, bolehmail, eudoramail, sqwebmail, squirrrelmail, dan masih
banyak lagi Mail Client yang bisa digunakan baik secara gratis maupun dengan
membayar.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2.2 E-mail di Dalam LAN
Penyediaan layanan e-mail di lingkungan LAN umumnya bertujuan untuk
memudahkan koordinasi antar bagian dalam suatu organisasi. Lingkup LAN
tersebut sebenarnya bisa diperluas dalam skala MAN maupun WAN, selama
jaringan itu masih bersifat privat bagi organisasi tersebut. Penerapan e-mail di
lingkungan ini sering disebut sebagai e-mail internal, karena tidak menggunakan
jaringan Internet.
Untuk memahami routing e-mail di lingkungan LAN, dimisalkan seorang
user yang akan mengirim e-mail ke user lain yang masih berada dalam satu
jaringan, e-mail tersebut akan dikirim ke mail server di jaringan tersebut. User di
alamat tujuan mendownload e-mail dengan menghubungkan diri ke mail server.
Peranan mail server dalam LAN dapat diandaikan sebagai ISP bagi para user-nya.
Mail server tersebut berfungsi sebagai SMTP dan POP3 bagi para user jaringan.
Gambar 2.1 Routing e-mail dalam LAN
Jenis aplikasi yang digunakan di sisi client dan server umumnya sama
dengan penyediaan e-mail di Internet. Perbedaannya terletak pada jaringan yang
digunakan, penyediaan e-mail dalam LAN tidak memerlukan ISP sebagai
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
penyedia koneksi Internet, karena ruang lingkup layanan ini bersifat internal maka
tidak perlu memiliki domain yang terdaftar resmi di Internet.
Layanan e-mail internal dapat pula dihubungkan dengan layanan e-mail eksternal.
Dengan demikian pengguna jaringan internal dapat berhubungan dengan
pengguna di Internet, untuk menyediakan layanan ini harus menggunakan domain
yang terdaftar resmi di Internet.
2.3 E-mail Dalam Jaringan Internet
Penyampaian e-mail di Internet menggunakan jaringan public atau
jaringan internet. E-mail akan melalui beberapa server sebelum akhirnya diterima
di alamat tujuan.
Perjalanan sebuah pesan dimulai ketika pengirim menggunakan client e-mail,
client e-mail akan menghubungkan dengan server SMTP yang telah ditentukan.
Server SMTP tersebut dapat berupa mail server di jaringan internal atau sebuah
server di Internet. Selanjutnya server SMTP akan memeriksa nama domain
alamat tujuan, mail server menghubungi server DNS yang ditetapkan untuk
mencari alamat host tujuan sebagai mana tertulis pada entri MX record di server
DNS. Apabila MX record alamat tujuan terdapat di server DNS tersebut, e-mail
segera dikirimkan ke host tujuan, apabila MX record tidak terdapat di server DNS,
maka server tersebut akan menghubungi server DNS lain untuk mendapatkan MX
record alamat yang dituju. Proses ini berjalan sampai informasi alamat host tujuan
didapat di salah satu server DNS, aturan routing antar server DNS tersebut
ditetapkan oleh ISP dan badan lain yang berwenang.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 2.2 routing e-mail di Internet
2.4 Protokol Layanan E-mail
Secara umum layanan e-mail berjalan pada protokol TCP/IP yang telah
menjadi standar komunikasi di Internet dan jaringan komputer saat ini. Protokol
TCP/IP sebenarnya merupakan kumpulan berbagai macam protokol dan kemudian
terangkum dalam satu set seperti yang dikenal saat ini. Terdapat dua protokol
utama yang sering digunakan dalam layanan e-mail :
• Simple Mail Transfer Protocol ( SMTP )
• Post Office Protocol Version 3 ( POP3 )
Selain kedua protokol tersebut juga dikenal Internet Mail Access Protocol ( IMAP
) yang fungsinya mirip POP3 dengan beberapa kelebihan.
2.5 Simple Mail Transfer Protocol ( SMTP )
Protokol SMTP merupakan metode standar yang digunakan untuk
pengiriman e-mail dalam jaringan berbasis TCP/IP.
Fungsi utama SMTP adalah menyampaikan e-mail dari suatu host ke host lain
dalam jaringan. Protokol ini tidak memiliki kemampuan untuk melakukan
penyimpanan dan pengambilan e-mail dari suatu mailbox. Service SMTP berjalan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
pada protokol TCP port 25, yang merupakan port standar service SMTP. Karena
SMTP tidak memiliki kemampuan menyimpan e-mail dalam mailbox, maka
diperlukan protokol lain untuk menjalankan fungsi tersebut yaitu POP3 dan
IMAP.
Ketika e-mail dikirim ke suatu alamat maka server DNS akan mencari host
tujuan berdasarkan informasi MX record yang telah didaftarkan. Host tujuan
tersebut merupakan server SMTP yang siap menerima koneksi dari host lain.
Setelah koneksi berhasil dilakukan maka e-mail akan didownload ke host tujuan
kemudian disimpan dalam mailbox pengguna untuk diambil menggunakan
protokol POP3.
Berikut beberapa perintah yang digunakan dalam proses pengiriman e-mail :
• Mail fr : memberitahukan identitas host pengirim kepada host
penerima.
• Rcpt to : memberitahukan identitas pengirim ke host tujuan, misal
iw4n@yahoo.com.
• Data : merupakan pesan yang dikirim dalam e-mail berupa text
ASCII.
• Quit : perintah penutup koneksi SMTP.
Dari sisi client e-mail, server SMTP merupakan sarana untuk melakukan outgoing
connection atau mengirimkan pesan. Sedangkan untuk incoming connection
digunakan protokol POP3.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2.6 Post Office Protocol version 3 ( POP3 )
Protokol POP yang banyak digunakan saat ini adalah versi 3 atau lebih
dikenal sebagai POP3. peran protokol ini adalah untuk mengambil e-mail yang
tersimpan dalam mailbox tiap user di mail server, yang biasanya sekaligus sebagai
SMTP server, telah dijelaskan sebelumnya bahwa SMTP tidak memiliki
mekanisme penyimpanan e-mail ke mailbox dan mendistribusikannya tiap user
sehingga protokol POP3 mengambil peran tersebut.
Server POP3 menyimpan sementara e-mail tiap user di dalam mailbox-nya
masing – masing sebelum akhirnya didownload oleh user bersangkutan
menggunakan client e-mail seperti Outlook atau yang lainnya. Dalam proses
pengambilan tersebut client e-mail terhubung ke mail server menggunakan
protokol POP3 yang berjalan pada TCP port 110.
Skenario pengambilan e-mail dengan POP3 ini dapat juga digunakan oleh
suatu mail server untuk mengambil e-mail dari mail server lain, jadi tidak terbatas
digunakan oleh client e-mail saja. Untuk berhubungan dengan server, client POP3
menggunakan beberapa perintah sebagai berikut :
• Stat : meminta informasi jumlah pesan yang tersedia.
• List : menentukan ukuran setiap pesan yang akan diambil.
• Retr : mengambil pesan yang terdapat dalam server.
• Quit : mengakhiri session POP3.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2.7 Internet Mail Access Protocol version 4 ( IMAP4 )
IMAP4 adalah standar protokol Internet yang digunakan dalam
penyimpanan dan pengambilan e-mail dari host SMTP. Pearanan IMAP4 hampir
sama dengan POP3 dengan beberapa kelebihan yang dimiliki. Sebuah server
IMAP4 menyimpan e-mail tiap user yang diterima oleh server SMTP, dan
mengirimkannya kepada client e-mail ketika user mendownload pesan tersebut
dengan client IMAP4.
Protokol IMAP4 memiliki beberapa fasilitas yang tidak dimiliki oleh
POP3 yaitu :
• Akses terhadap beberapa folder sekaligus, termasuk public folder.
• Penyimpanan pesan di server setelah dibaca oleh pengguna sehingga
seorang pengguna dapat membaca kembali e-mail tersebut pada waktu
maupun lokasi lain.
• Fasilitas pencarian pesan tertentu untuk didownload.
• Pembuatan hierarki folder untuk penyimpanan pesan di server.
• Pemilihan download suatu pesan sekaligus bersama lampiran ( attachment
) atau hanya mengambil lampirannya saja.
Untuk mengambil pesan dari server IMAP4, sebuah client IMAP4
menghubungkan diri ke server dan membentuk session TCP pada port 143. Client
tersebut menyampaikan beberapa perintah ke server untuk mengambil e-mail,
perintah tersebut diantaranya :
• List : mengambil daftar folder yang terdapat dalam mailbox.
• Select : memilih folder tertentu untuk mengakses pesan di dalamnya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
• Fetch : mengambil pesan tertentu untuk didownload.
• Logout : mengakhiri session IMAP4.
2.8 Peranan DNS Server dalam Layanan E-mail
Dalam jaringan Internet yang berbasis TCP/IP, server DNS ( Domain
Name Service ) memegang peranan sangat penting. Tugas utamanya adalah
menterjemahkan host name menjadi IP address yang dapat dimengerti oleh
komputer dan sebaliknya dari alamat IP ke host name yang disebut dengan
reverse-mapping.
Komputer mengenalai komputer lain dalam jaringan berdasarkan IP
address yang dimilikinya, sedangkan manusia terlalu susah menghafal IP address
tersebut. Karena manusia lebih mudah manghafalkan nama sutau domain maka
diperlukan server DNS sebagai penerjemahnya. Dalam layanan e-mail server
DNS berperan sebagai penunjuk jalan routing suatu e-mail. Apabila terdapat suatu
e-mail maka server DNS akan mengecek nama domain yang terdapat pada alamat
tujuan. Berdasarkan domain tujuan tersebut maka server DNS menunjukkan
informasi mail exchanger ( MX ) record suatu domain. Selanjutnya pesan akan
diteruskan ke host tujuan berdasarkan nama host yang terdapat dalam MX record,
di mana host tersebut adalah server SMTP dari alamat tujuan. Pesan tersebut
disimpan di mail server tujuan sampai pengguna mendownload e-mail.
Suatu domain yang memiliki alamat e-mail harus didefinisikan server
SMTP-nya. Informasi tersebut disimpan di dalam server DNS berupa entri MX
record. Misalkan untuk alamat iw4n@yahoo.com maka domain yahoo.com harus
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
didefinisikan MX record-nya sehingga server DNS dapat mencari mail server
untuk menyampaikan e-mail. Di dalam server DNS dibuat entri MX record yang
menunjukkan apabila terdapat e-mail yang ditujukan kepada suatu alamat di
yahoo.com maka pesan tersebut diteruskan kesuatu host bernama mail.yahoo.com,
yang merupakan server SMTP sekaligus mail server untuk yahoo.com. Jadi DNS
tidak hanya berfungsi untuk menterjemahkan IP address ke host name saja, juga
berfungsi mendefinisikan server SMTP suatu alamat e-mail dalam sebuah domain
yang akan disimpan di MX record DNS. Sehingga jika tidak ada DNS maka e-
mail tidak dapat bekerja, karena DNS tidak dapat mencari mail server alamat
tujuan. Sebuah domain dapat memiliki beberapa MX record sekaligus yang
masing – masing didefinisikan prioritasnya. Dengan demikian apabila server
utama mengalami gangguan maka dapat dikirim ke server berikutnya dengan
prioritas dibawahnya.
Apabila mendaftarkan domain untuk organisasi dan mendapatkan fasilitas
layanan e-mail maka domain tersebut akan didaftarkan MX record-nya ke server
DNS. Pengisian entri MX record tersebut menjadi tanggung jawab pengelola
domain tempat mendaftar, perlu dipastikan entri MX record serta alamat server
SMTP dan POP3 untuk domain, supaya apabila terjadi gangguan akan lebih
mudah melakukan perbaikan dan penelusuran sumber gangguan.
2.9 Proses Pengiriman E-mail
Proses pengiriman e-mail dimulai dengan melakukan koneksi ke protokol
TCP/IP dan koneksi ini akan dimulai ketika tombol send pada program client
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ditekan dan pada saat itu juga program client akan melakukan koneksi ke SMTP
server.
SMTP server akan mendistribusikan e-mail. Setelah menerima e-mail,
SMTP server akan memasukkan e-mail dalam antrian pengiriman e-mail. SMTP
server akan mengirimkan pesan jika e-mail masih berada di dalam antrian. SMTP
server akan berusaha mengirimkan e-mail tersebut sampai batas waktu maksimal.
Namun jika sudah berada dalam batas waktu yang ditentukan e-mail masih berada
di dalam antrian, SMTP server akan mengirimkan pesan kesalahan. Jika tidak ada
kesalahan, SMTP server akan langsung mengirimkan e-mail ke POP3 server
penerima.
Setelah e-mail sampai ke POP3 server penerima maka dapat diartikan
bahwa proses pengiriman e-mail sudah selesai.
Gambar 2.3 proses pengiriman e-mail
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2.10 Qmail
Aplikasi qmail adalah salah satu aplikasi server e-mail yang berjalan pada
platform Unix / Linux. Qmail diciptakan oleh Dan J. Bernstein seorang profesor
departemen matematika, statistik dan ilmu komputer Universitas Illinois,
Chicago.
Qmail merupakan MTA yang lebih modern sangat cocok untuk menggantikan
peran Sendmail. Sendmail merupakan MTA yang banyak mempunyai masalah
keamanan, di sendmail banyak sekali hole atau ekploitasi keamanan yang sangat
rawan terhadap penyerangan karena seorang penyerang dapat dengan mudah
mendapatkan akses root. MTA dengan menggunakan sendmail juga kurang baik
untuk menangani e-mail dalam jumlah besar, apalagi untuk layanan Mailing List.
Ada beberapa alasan mengapa harus menggunakan qmail :
• Security : salah satu alasan qmail dibuat adalah karena pembuatnya merasa
jengkel akan lubang keamanan pada sendmail. Qmail merupakan MTA
dengan tingkat security yang tinggi, hal ini didukung dengan hadiah uang
US$1000 dari para pendukung qmail bagi yang bisa menemukan lubang
keamanan qmail, pembuatnya juga menyediakan hadiah uang US$500
bagi yang menemukan lubang keamanan pada qmail.
• Performa yang baik : qmail berkemampuan untuk menangani jutaan
pengiriman pesan e-mail dalam satu harinya. Bahkan hanya menggunakan
komputer 486 saja dapat menangani pengiriman pesan e-mail sebanyak
100.000 pesan dalam satu harinya. Selain itu qmail juga dapat melakukan
pengiriman banyak pesan secara bersama – sama dalam satu waktu.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
• Kecil dan sederhana : dikatakan sederhana dan kecil karena qmail
memisahkan mekanisme untuk forwarding, aliasing, dan mailing list.
Selain itu MTA lain mempunyai beberapa mode pengiriman yaitu
fast+unsafe dan slow+queued, sedang qmail hanya mempunyai satu mode
pengiriman yaitu fast+queued, dimana pada mode ini program untuk
mengirimkan mail dipicu oleh adanya antrian baru.
• Pengganti sendmail : qmail mendukung user dan host masquerading, Full
Host Hidding, Virtual Domain, Null Clients, List Owner Rewriting, Relay
Control, Double Bounce Recording, Penjadwalan pesan secara
independent, dan lain sebagainya.
• Administrasi yang mudah : di internet banyak program – program yang
digunakan untuk mengadministrasikan Mail Server yang menggunakan
qmail, misal yang berbais web dan menggunakan otomasi script.
Tabel 2.1 perbandingan antara qmail dan Unix MTA yang lain
MTA Maturity Security Feature
Qmail Medium High High
Sendmail High Low High
Postfix Medium High Medium
Exim Medium Low High
Courier Low Medium High
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
MTA Performa Sendmailish Modular
Qmail High Add-ons Ya
Sendmail Low X Tidak
Postfix High Ya Ya
Exim Medium Ya Tidak
Courier Medium Tidak Ya
Tabel perbandingan antara qmail dan Unix MTA yang lain
2.11 Web Server Apache
Apache adalah paket aplikasi yang digunakan untuk web server yang
handal dan stabil. Apache masih menjadi andalan para webmaster jika
dibandingkan dengan web server yang lain. Perkembangan server ini sangat pesat
sehingga semua server web menggunakan Apache. Aplikasi ini dapat didownload
di http://www.apache.org. Aplikasi Apache dikenal dengan nama httpd. Di dalam
Linux aplikasi ini sudah tersedia dalam bentuk .RPM.
2.12 PHP
PHP ( Hypertext PreProcessor ) merupakan salah satu teknologi server-
side programming yang digunakan dalam pembuatan web dinamis di Internet.
Dengan PHP bisa dibuat halaman web yang lebih menarik, lebih dinamis, dan
lebih interaktif jika dibanding dengan hanya menggunakan HTML. Didalam
sebuah web mail, PHP mempunyai peran penting, yakni digunakan sebagai
interface dalam menjembatani antara user dengan mail server ( Imap server atau
POP3 server ). PHP mempunyai feature yang dapat digunakan untuk mengakses
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
IMAP server. Dalam PHP terdapat modul Imap untuk melakukan operasi –
operasi manipulasi e-mail seperti membaca e-mail, mengirim pesan, menghapus
e-mail, melihat header pesan dan lain sebagainya. Untuk mengaktifkan modul ini,
PHP membutuhkan file pendukung lain, diantaranya c-client, rfc822.h, mail.h. file
– file pendukung tersebut digunakan untuk berkomunikasi dengan Imap server.
Semua paket tersebut tersedia dalam paket Imap 200xx.tar.Z.
2.13 MySQL
MySQL adalah Relational Database Management System ( RDBMS ) yang
didistribusikan secara gratis dibawah lisensi GPL ( General Public License ).
MySQL merupakan turunan salah satu konsep utama dalam database sejak lama,
yaitu SQL ( Structured Query Language ). SQL sendiri merupakan sebuah konsep
pengoperasian database, terutama untuk pemilihan atau seleksi dan pemasukan
data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara
otomatis. Sebagai database server, MySQL lebih unggul dibandingkan dengan
database server lainnya dalam query data, terbukti untuk query yang dilakukan
oleh single user kecepatan query MySQL sepuluh kali lebih cepat dari PostgreSQL
dan lima kali lebih cepat dari interbase.
Untuk menginstal MySQL, pihak MySQL menyarankan untuk memakai versi
binary yang bisa didapat di http://www.mysql.com yang telah dites untuk berbagai
macam kondisi dan disesuaikan dengan kebutuhan umum server.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2.14 Paket Pendukung Instalasi Qmail
Untuk menginstal qmail, diperlukan beberapa paket yang harus
dipersiapkan terlebih dahulu. Paket – paket tersebut dintaranya adalah :
2.14.1 Paket Utama
• Qmail, merupakan paket inti dari mail server dan merupakan aplikasi
untuk pengiriman mail ( MTA ). Paket ini dapat di-download di
http://www.qmail.org.
• Ucspi-tcp, adalah aplikasi untuk tcpserver, paket yang digunakan
sebagai utility untuk koneksi client server yang menggunakan
protokol TCP. Paket ini bisa diperoleh di alamat http://cr.yp.to/ucspi-
tcp/ucspi-tcp-0.88.tar.gz.
• Daemon-tool, adalah daemon untuk mengelola aplikasi – aplikasi
pendukung utility yang digunakan oleh sistem operasi untuk
mengatur segala proses yang berjalan seperti qmail dan paket
tambahan yang lain. Daemon akan melakukan starting service dan
me-restart apabila service ada yang mati. Daemon-tool bisa di-
download di alamat http://cr.yp/daemontools/daemontools-
0.76.tar.gz.
• Ezmlm, digunakan untuk program mailing list, yang bisa di-
download di http://cr.yp/software/ezmlm-053.tar.gz.
• Autoresponder, digunakan untuk merespon e-mail yang masuk secara
otomatis. Paket ini bisa di-download di alamat http://untroubled.org.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
• Qmailanalog, paket ini digunakan untuk menganalisa proses
pengiriman dan penerimaan e-mail dan digunakan juga untuk melihat
e-mail yang tidak masuk dan yang tidak bisa keluar.
• Vpopmail, adalah POP3 server, yaitu paket tambahan dari qmail
untuk menangani virtual e-mail domain dalam satu mail server, hal
ini untuk memudahkan dalam penanganan atau administrasi sistem
yang baik dan juga memiliki keamanan yang handal serta sangat
efisien karena tidak harus menggunakan server dalam beberapa
domain. Cukup satu instalasi untuk beberapa domain maupun
subdomain. Perintah – perintah di vpopmail akan otomatis melakukan
proses ke dalam file – file di qmail sehingga tidak perlu lagi
menggunakan perintah manual di qmail. Paket ini dapat di-download
di alamat www.inter7.com/vpopmail.
• Vqadmin, adalah domain manager berbasis web yang digunakan
untuk mengelola e-mail, baik penambahan, penghapusan alamat e-
mail, penambahan maupun penghapusan mailing list, dan juga
penambahan maupun penghapusan domain. Vqadmin juga
memberikan informasi tentang user untuk diizinkan untuk mengelola
suatu domain. Paket ini dapat diperoleh di alamat
www.inter7.com/vqadmin.
• Maildrop, digunakan untuk memfilter e-mail yang masuk. Program
ini dugunakan secara bersamaan pada qmailscanner. Paketnya bisa
didownload di alamat http://www.courier-mta.org.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
• Qmailadmin, merupakan aplikasi berbasis web yang digunakan untuk
mengelola user pada tiap domain. Paket ini dapa didownload di
alamat http://flow.dl.sourceforge.net/sourceforge/qmailadmin.
• Courier-Imap, adalah program yang membantu pengaksesan IMAP
ke maildir. Maildir adalah format mail yang dimiliki qmail. Dalam
instalasi ini, yang menggunakan Courier-imap adalah Squirrelmail.
Program ini dapat di-download di alamat http://www.courier-mta.org.
• Squirrelmail, merupakan webmail client, yaitu aplikasi yang
digunakan untuk mengakses mail server. Web mail yang fungsinya
membantu user untuk mengelola e-mail user berbasis web.
Pengelolaan ini berupa mengirim e-mail, baik yang menggunakan
attachment maupun tidak, serta melihat kiriman e-mail dari
seseorang. Paket ini dapat di-download di alamat
http://www.squirrelmail.org/
• Qmail-scanner, adalah program tambahan qmail yang digunakan
untuk melakukan scanning e-mail menggunakan karakteristik
tertentu, khususnya digunakan untuk scanning virus atau proteksi
antivirus. Program ini juga digunakan untuk scanning header atau file
attachment. Paket program ini dapat diperoleh di alamat http://qmail-
scanner.sourceforge.net.
• Spamassassin, merupakan program untuk mendeteksi e-mail yang
masuk, apakah mail tersebut termasuk spam atau bukan. Program ini
dapat di-download di alamat http://www.spamassassin.org.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
• Clamav Antivirus, merupakan aplikasi untuk mendeteksi e-mail yang
masuk, apakah mail tersebut mengandung virus atau tidak. Program
ini dapat diperoleh di alamat http://www.openantivirus.org.
• Qtrap, digunakan untuk mendeteksi e-mail yang masuk, dalam
aplikasi ini yang akan dideteksi adalah kata – kata dalam e-mail
tersebut.
• Isoqlog, digunakan untuk melihat aktivitas e-mail secara detail ( log
mail ). Paket program ini dapat di-download pada alamat
http://www.enderunix.org/isoqlog/.
• Qmailmrtg, aplikasi ini digunakan untuk melihat aktivitas e-mail
dalam bentuk grafis. Paket ini dapat di-download pada alamat
http://www.inter7.com/qmailmrtg7/qmailmrtg7-3.4.tar.gz.
• Sqwebmail, merupakan fasilitas tambahan berbasis web untuk
mengakses mail dari qmail dan vpopmail. Sqwebmail merupakan
program CGI sehingga dalam pengaksesan menggunakan direktori
cgi-bin. Program ini hanya digunakan untuk format maildir dan tidak
dapat digunakan untuk format mailbox. Program ini dapat di-
download di alamat http://www.inter7.com/sqwebmail.
2.14.2 Paket Patch
Selain paket – paket di atas juga masih terdapat beberapa paket
tambahan yang dikenal dengan patch untuk mengembangkan mail server
sesuai dengan kebutuhan masing – masing, paket – paket tersebut
diantaranya adalah :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
• Qmailqueue-patch, patch ini digunakan supaya dapat ditambahkan
aplikasi lain ke dalam aplikasi ini.
• Qmail-maildir++.patch, patch ini akan membuat qmail-local dan
qmail-pop3d kompatibel dengan maildir++ quota. Sistem ini akan
menggunakan vpopmail dan courier-imap.
• Qmail-date-localtime.patch, digunakan untuk local timestamp, ini
akan membuat localtime tertulis di header e-mail.
• Qmail-badmailfrom-badrcptto.patch, patch ini digunakan untuk
dukungan “badmailfrom logging” dan untuk dukungan fungsi
badrcptto dan login.
• Qmail-limit-bounce-size.patch, digunakan untuk membatasi bounce
message yang dilakukan oleh server. Patch ini akan membatasi
ukuran file yang akan di-bounce, ukuran tersebut dapat diatur dengan
mengubah nilai di file/var/qmail/control/bouncemaxbyte.
• Qmail-smtpd-esmtp-size.diff, patch ini akan menambahkan ukuran
ESMTP agar dapat mendukung qmail-smtpd, ini akan membantu
server untuk melakukan penolakan untuk ukuran yang besar.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB III
PEMBAHASAN
3.1 Persiapan Instlasi
Dalam implementasi server e-mail ini, penulis menggunakan sistem
operasi Linux Fedora Core 2.
3.1.1 Konfigurasi Linux Fedora Core 2
3.1.1.a Apache
Program yang akan diinstal akan menggunakan web sebagai
interface, tentunya server yang akan diinstal harus memiliki service web.
Biasanya apache sudah terinstal dalam Linux dalam bentuk .RPM, untuk
mengecek apakah aplikasi ini sudah terinstal gunakan perintah berikut :
[root@jellyfishfish iwan]# rpm -qa | grep httpd
Jika web server sudah terinstal maka minimal akan muncul hasil sebagai
berikut :
system-config-httpd-1.2.0-3 httpd-manual-2.0.49-4 httpd-2.0.49-4
Dari perintah di atas terlihat bahwa aplikasi apache sudah terinstal dan
konfigurasinya menggunakan httpd versi 2.0.49-4
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3.1.1.b MySQL
Paket program yang berikutnya harus diinstal adalah MySQL,
sebuah server SQL yang nantinya akan digunakan untuk menyimpan
autentifikasi dari user – user yang menggunakan server e-mail tersebut,
linux Fedora Core 2 biasanya sudah mendukung paket MySQL. Untuk
mengecek apakah aplikasi ini sudah terinstal gunakan perintah :
[root@jellyfishfish iwan]# rpm -qa | grep mysql
Jika paket sudah terinstal akan nampak hasil sebagai berikut :
mysql-server-3.23.58-9 mysql-bench-3.23.58-9
php-mysql-4.3.4-11 mysql-3.23.58-9
3.1.1.c Struktur Direktori
Untuk instalasi server e-mail dengan Qmail dan beberapa paket
pendukungnya, ada beberapa direktori khusus yang akan digunakan
digunakan untuk instalasi paket – paket Qmail. Direktori – direktori
tersebut adalah :
/usr/local/src
Digunakan untuk meletakkan semua paket – paket .tar.gz yang
telah di-download. Jadi semua instalasi akan dilakukan dalam
direktori ini.
/usr/local/bin
Direktori ini digunakan untuk instalasi Autorespond.
/var/qmail
Direktori ini oleh Qmail setelah kita menginstal paketnya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
/home
Digunakan untuk instalasi vpopmail, di mana vpopmail iniakan
digunakan untuk menampung alamt e-mail dan yang diterima oleh
user.
/var/www/cgi-bin/
Direktori ini digunakan untuk instalasi qmailadmin dan sqwebmail.
/usr/local/src/qmailadmin, /www/cgi-bin, /www/html
Digunakan sebagai ruang konfigurasi sistem qmailadmin.
Setelah paket – paket dasar di atas sudah terinstal dan direktori – direktori
yang dibutuhkan sudah tersedia, langkah selanjutnya hapuslah paket yang tidak
digunakan dalam instalasi Qmail. Biasanya sistem operasi RedHat dan Fedora
masih menggunakan Sendmail sebagai standar mail saat instalasi sistem operasi,
sehingga perlu menonaktifkan paket tersebut atau menghapusnya. Untuk
menghapus paket Sendmail gunakan perintah ;
[root@jellyfishfish iwan]# rpm -e --nodeps sendmail-8.12.11-4.6
Sendmail memiliki dependensasi atau ketergantungan dengan beberapa file, antara
lain mdadm-1.5.0-3, fetchmail-6.2.5-2, dan mutt-1.4.1-6 sehingga ketika
menghapus paket tersebut perlu ditambahkan perintah --nodeps agar sendmail
tersebut dapat terhapus.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3.2 Instalasi dan Konfigurasi
Sebelum melakukan instalasi paket – paket utama, pastikan terlebih dahulu
semua paket pendukung instalasi sudah tersedia, dan semua paket source code
yang berhubungan dengan instalasi Qmail disimpan di direktori /usr/local/src
sehingga semua instalasi dilakukan di direktori tersebut. Dianjurkan saat
melakukan perintah – perintah penginstalan ini berjalan sebagai root. Instalasi
pada sistem operasi Linux yang menggunakan compiler libc.2-3 memiliki
konfigurasi yang berbeda sehingga membutuhkan paket ( patch ) tambahan.
3.2.1 Instalasi Daemontools
Daemontools merupakan paket yang berisi utility yang digunakan
untuk mengatur dan memonitor service yang akan digunakan oleh Qmail.
Daemontools akan melakukan starting service dan melakukan restart
apabila ada service yang mati.
Instalasi Demontools sangat berbeda dengan paket yang lain, paket ini
tidak dapat dikonfigurasi ulang atau di-make ulang. Jika paket ini sudah
terinstal maka selamanya akan tetap terinstal, direktorinya dibuat oleh root
dan semua file bekerja pada direktori tersebut.
Berikut langkah – langkah penginstalannya :
Pertama masuk ke direktori Daemontools
[root@jellyfishfish src]# cd daemontools-0.76
Selanjutnya melakukan penambahan patch
[root@jellyfishfish daemontools-0.76]# patch -p1 < ../../daemontools-0.76.errno.patch
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Hasil dari perintah diatas sebagai berikut :
(Stripping trailing CRs from patch.) patching file src/error.h
Untuk menginstal Daemontools gunakan perintah berikut :
[root@jellyfishfish daemontools-0.76]# ./package/install
Instalasi akan membuat direktori /command, /service, dan service
scscanboot yang digunakan untuk starting.
Potongan hasil instalasi terlihat seperti di bawah ini :
Copying commands into ./command... Creating symlink daemontools -> daemontools-0.76... Making command links in /command... Making compatibility links in /usr/local/bin... Creating /service... Adding svscanboot to inittab... init should start svscan now.
Dengan melihat potongan instalasi diatas maka proses instalasi telah
berhasil. Untuk memeriksa apakah Daemontools sudah berjalan gunakan
perintah ps
[root@jellyfishfish daemontools-0.76]# ps ax | grep read 6820 ? S 0:00 readproctitle service errors: ................................................................................................................................................................................................................................................................................................................................................................................................................ 6822 pts/2 S 0:00 grep read
Langkah berikutnya pindahkan perintah di direktori
/daemontools/command/ ke direktori /command yang berada di root
dengan perintah :
[root@jellyfishfish daemontools-0.76]# rm -rf /command/
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
[root@jellyfishfish daemontools-0.76]# mv command/ /
Untuk memeriksa apakah Daemontools-nya ( svscan ) sudah berjalan
gunakan perintah :
[root@jellyfish daemontools-0.76]# ps -ef | grep svscan
Jika telah berjalan akan tampak hasil sebagai berikut :
root 6817 1 0 20:50 ? 00:00:00 /bin/sh /command/svscanboot root 6819 6817 0 20:50 ? 00:00:00 svscan /service root 6826 2781 0 20:53 pts/2 00:00:00 grep svscan
3.2.2 Instalasi UCSPI – TCP
Ucspi – tcp adalah paket yang digunakan sebagai utility koneksi client –
server yang menggunakan protocol TCP. Layanan yang dijalankan
menggunakan ucspi – tcp adalah inetd, xinetd, mconnect client, program
socket, faucet, dan hose yang merupakan bagian dari netpipe. Yang
dibutuhkan dalam koneksi tersebut adalah host name, alamat IP, dan port
number.
Langkah – langkah instalasi ucspi – tcp :
Pertama masuk ke direktori ucspi
[root@jellyfish src]# cd ucspi-tcp-0.88
Menambahkan patch
[root@jellyfish ucspi-tcp-0.88]# patch -p1 < ../ucspi-tcp-
0.88.errno.patch
Akan tampak hasil sebagai berikut :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
(Stripping trailing CRs from patch.) patching file error.h
Melakukan perintah make setup check untuk instalasi
[root@jellyfish ucspi-tcp-0.88]# make setup check
Setelah perintah make maka ucspi akan secara otomatis melakukan
konfigurasi, berikut potongan hasil akhir dari perintah di atas :
./auto-str auto_home `head -1 conf-home` > auto_home.c
./compile auto_home.c
./load install hier.o auto_home.o unix.a byte.a
./compile instcheck.c
./load instcheck hier.o auto_home.o unix.a byte.a
./install
./instcheck
3.2.3 Instalasi dan Konfigurasi Qmail
3.2.3.a Instalasi
Untuk melakukan instalsi qmail harus ditentukan dahulu letak
direktori qmail, berikut adalah langkah – langkah instalasi qmail :
Buat home direktori qmail
[root@jellyfish iwan]# mkdir /var/qmail
Buat group dan user yang menjalankan modul qmail. Qmail adalah
program yang bersifat modular, yaitu terdiri atas beberapa program yang
menjalankan fungsi yang berbeda – beda. Modul – modul yang dimiliki
qmail adalah sebagai berikut :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
• Qmailsmtpd, berfungsi untuk proses penerimaan / penolakan
melalui SMTP.
• Qmail.inject, berfungsi untuk memasukkan e-mail ke antrian
lokal.
• Qmail.rspawn / qmail.remote, menangani pengiriman e-mail
keluar.
• Qmail.lspawn / qmail.local, menangani pengiriman e-mail lokal.
• Qmail.send, memproses antrian e-mail.
• Qmail.clean, berfungsi mengosongkan antrian e-mail.
Program qmail dijalankan dengan user yang berbeda – beda, hal ini
dimaksudkan agar lebih aman. Berikut cara menambahkan user dan group
yang menjalankan qmail :
[root@jellyfish iwan]# /usr/sbin/groupadd nofiles [root@jellyfish iwan]# /usr/sbin/useradd -g nofiles -d /var/qmail/alias alias -s /bin/false [root@jellyfish iwan]# /usr/sbin/useradd -g nofiles -d /var/qmail qmail -s /bin/false [root@jellyfish iwan]# /usr/sbin/useradd -g nofiles -d /var/qmail qmaild -s /bin/false [root@jellyfish iwan]# /usr/sbin/useradd -g nofiles -d /var/qmail qmaill -s /bin/false [root@jellyfish iwan]# /usr/sbin/useradd -g nofiles -d /var/qmail qmailp -s /bin/false [root@jellyfish iwan]# /usr/sbin/groupadd qmail [root@jellyfish iwan]# /usr/sbin/useradd -g qmail -d /var/qmail qmailq -s /bin/false [root@jellyfish iwan]# /usr/sbin/useradd -g qmail -d /var/qmail qmailr -s /bin/false [root@jellyfish iwan]# /usr/sbin/useradd -g qmail -d /var/qmail qmails -s /bin/false
Langkah selanjutnya adalah menambahkan aplikasi patch yang digunakan
untuk program – program tambahan. Patch – patch tersebut diantaranya :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
• Qmail-1.03.errno.patch, digunakan sebagai tambahan pada
qmail.
• Qmailqueue.patch, digunakan untuk mengelola antrian mail.
• Tarpit.patch, digunakan untuk delay untuk SMTP.
• Qmail-bouncecontrol-1.03.patch, digunakan untuk mengontrol
bounce e-mail yang tidak memiliki alamat jelas.
• Qmail-date-localtime.patch.txt, digunakan untuk mengonversi
waktu setempat.
• Qmail-maildir++.patch, digunakan untuk mendukung sistem
direktori, khususnya pembagian quota mail pada domain maupun
quota mail pada tiap user.
Untuk menambahkan patch tersebut masuklah terlebih dahulu ke direktori
qmail-1.03
[root@jellyfish src]# cd qmail-1.03
Berikut adalah langkah – langkah penambahan patch dan hasil dari
perintah – perintah penambahan patch :
[root@jellyfish qmail-1.03]# patch < ../qmail-1.03.errno.patch (Stripping trailing CRs from patch.) patching file cdb_seek.c (Stripping trailing CRs from patch.) patching file dns.c (Stripping trailing CRs from patch.) patching file error.3 (Stripping trailing CRs from patch.) patching file error.h
[root@jellyfish qmail-1.03]# patch < ../qmailqueue.patch (Stripping trailing CRs from patch.) patching file Makefile (Stripping trailing CRs from patch.)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
patching file qmail.c [root@jellyfish qmail-1.03]# patch < ../tarpit.patch patching file qmail-smtpd.c
[root@jellyfish qmail-1.03]# patch < ../qmail-bouncecontrol-1.03.patch patching file control.c patching file control.h patching file qmail-send.c
[root@jellyfish qmail-1.03]# patch < ../qmail-date-localtime.patch.txt patching file date822fmt.c
[root@jellyfish qmail-1.03]# patch < ../qmail-maildir++.patch patching file Makefile patching file TARGETS patching file maildirflags.c patching file maildirgetquota.c patching file maildirgetquota.h patching file maildirmisc.h patching file maildiropen.c patching file maildirparsequota.c patching file maildirquota.c patching file maildirquota.h patching file numlib.h patching file overmaildirquota.c patching file qmail-local.c patching file qmail-pop3d.c patching file strpidt.c patching file strtimet.c
Setelah menambahkan patch ke dalam program qmail, tahap selanjutnya
adalah melakukn kompilasi.
[root@jellyfish qmail-1.03]# make setup check
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Dari perintah make di atas sistem akan melakukan konfigurasi otomatis
menuju direktori – direktori masing – masing. Berikut adalah potongan
akhir hasil kompilasi :
nroff -man maildir.5 > maildir.0 nroff -man mbox.5 > mbox.0 nroff -man addresses.5 > addresses.0 nroff -man envelopes.5 > envelopes.0 nroff -man forgeries.7 > forgeries.0 ./install ./instcheck
Tahap selanjutnya melakukan konfigurasi domain.
[root@jellyfish qmail-1.03]# ./config-fast mail.jelly.co.id
Nama mail.jelly.co.id adalah nama subdomain untuk mail. Biasanya satu
domain dibagi menjadi beberapa subdomain, misalnya www.jelly.co.id
mail.jelly.co.id dan lain – lain.
Potongan hail konfigurasi tersebut sebagai berikut :
Your fully qualified host name is mail.jellyfish.ac.id. Putting mail.jellyfish.ac.id into control/me... Putting jellyfish.ac.id into control/defaultdomain... Putting ac.id into control/plusdomain... Putting mail.jellyfish.ac.id into control/locals... Putting mail.jellyfish.ac.id into control/rcpthosts... Now qmail will refuse to accept SMTP messages except to mail.jellyfish.ac.id. Make sure to change rcpthosts if you add hosts to locals or virtualdomains!
3.2.3.b Konfigurasi
Setelah melakukan proses instalasi, langkah selanjutnya adalah
melakukan konfigurasi agar qmail yang diinstal tadi dapat berjalan.
Langkah – langkah konfigurasi sebagai berikut :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Membuat script yang akan digunakan untuk menjalankan qmail. Script
ini digunakan untuk menjalankan smtp, send, pop3, beserta log-nya.
Disarankan untuk mengurangi kegagalan akibat kesalahan penulisan
script yang panjang, sebaiknya script ini didownload pada alamat URL
: www.lifewithqmail.org/.
Buat script /var/qmail/rc
[root@jellyfish iwan]# vi var/qmail/rc
Kemudian simpan dan beri izin eksekusi, juga dibuatkan direktori log-
nya.
[root@jellyfish iwan]# chmod 755 /var/qmail/rc [root@jellyfish iwan]# mkdir -p /var/log/qmail
Selanjutnya menentukan mode penyimpanan mail yang akan
dipergunakan oleh qmail, di sini penulis menggunakan mode
penyimpanan Maildir.
[root@jellyfish iwan]# echo ./Maildir/ >/var/qmail/control/defaultdelivery
Langkah berikutnya membuat script yang digunakan untuk
menjalankan qmail setiap kali komputer booting, script ini juga untuk
mengontrol proses qmail, script dibuat di direktori
/var/qmail/bin/qmailctl.
[root@jellyfish iwan]# vi /var/qmail/bin/qmailctl
Agar file qmailctl dabat dijalankan, maka script harus dibuat
executable.
[root@jellyfish iwan]# chmod 755 /var/qmail/bin/qmailctl [root@jellyfish iwan]# ln –s /var/qmail/bin/qmailctl /usr/bin/
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Agar qmail dapat berjalan saat system operasi djalankan maka perlu
dibuat link qmailctl.
[root@jellyfish iwan]# ln -s /var/qmail/bin/qmailctl /etc/rc.d/init.d/qmail [root@jellyfish iwan]# ln -s /etc/rc.d/init.d/qmail /etc/rc.d/rc0.d/K30qmail [root@jellyfish iwan]# ln -s /etc/rc.d/init.d/qmail /etc/rc.d/rc1.d/K30qmail [root@jellyfish iwan]# ln -s /etc/rc.d/init.d/qmail /etc/rc.d/rc2.d/S80qmail [root@jellyfish iwan]# ln -s /etc/rc.d/init.d/qmail /etc/rc.d/rc3.d/S80qmail [root@jellyfish iwan]# ln -s /etc/rc.d/init.d/qmail /etc/rc.d/rc4.d/S80qmail [root@jellyfish iwan]# ln -s /etc/rc.d/init.d/qmail /etc/rc.d/rc5.d/S80qmail [root@jellyfish iwan]# ln -s /etc/rc.d/init.d/qmail /etc/rc.d/rc6.d/K30qmail
Script supervise
Script supervise merupakan script yang digunakan untuk menjalankan
beberapa service pada qmail. Service tersebut adalah smtpd, pop3d,
dan log pada qmail.
Sintak untuk membuat direktori qmail di script supervise :
[root@jellyfish iwan]# mkdir -p /var/qmail/supervise/qmail-send [root@jellyfish iwan]# mkdir -p /var/qmail/supervise/qmail-send/log [root@jellyfish iwan]# mkdir -p /var/qmail/supervise/qmail-smtpd [root@jellyfish iwan]# mkdir -p /var/qmail/supervise/qmail-smtpd/log [root@jellyfish iwan]# mkdir /var/qmail/supervise/qmail-pop3d [root@jellyfish iwan]# mkdir /var/qmail/supervise/qmail-pop3d/log [root@jellyfish iwan]# mkdir /var/qmail/supervise/qmail-pop3ds [root@jellyfish iwan]# mkdir /var/qmail/supervise/qmail-pop3ds/log
Langkah berikutnya buat script untuk masing – masing direktori yang
dibuat di atas.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Sintak untuk membuat script :
[root@jellyfish iwan]# vi /var/qmail/supervise/qmail-send/run [root@jellyfish iwan]# vi /var/qmail/supervise/qmail-send/log/run [root@jellyfish iwan]# vi /var/qmail/supervise/qmail-smtpd/run [root@jellyfish iwan]# vi /var/qmail/supervise/qmail-smtpd/log/run [root@jellyfish iwan]# vi /var/qmail/supervise/qmail-pop3d/run [root@jellyfish iwan]# vi /var/qmail/supervise/qmail-pop3d/log/run [root@jellyfish iwan]# vi /var/qmail/supervise/qmail-pop3ds/run [root@jellyfish iwan]# vi /var/qmail/supervise/qmail-pop3ds/log/run
Kemudian buat file kontrol concurrencyincoming
[root@jellyfish iwan]# echo 100 /var/qmail/control/concurrencyincoming [root@jellyfish iwan]# cd /var/qmail/control/ [root@jellyfish iwan]# chmod 644 /var/qmail/control/concurrencyincoming
File dan script yang dibuat harus executable, maka perlu ditambahkan
perintah :
[root@jellyfish iwan]# chmod 755 /var/qmail/supervise/qmail-send/run [root@jellyfish iwan]# chmod 755 /var/qmail/supervise/qmail-send/log/run [root@jellyfish iwan]# chmod 755 /var/qmail/supervise/qmail-smtpd/run [root@jellyfish iwan]# chmod 755 /var/qmail/supervise/qmail-smtpd/log/run [root@jellyfish iwan]# chmod 755 /var/qmail/supervise/qmail-pop3d/run [root@jellyfish iwan]# chmod 755 /var/qmail/supervise/qmail-pop3d/log/run [root@jellyfish iwan]# chmod 755 /var/qmail/supervise/qmail-pop3ds/run [root@jellyfish iwan]# chmod 755 /var/qmail/supervise/qmail-pop3ds/log/run
Selanjutnya akan dibuat direktori yang akan digunakan untuk loging.
[root@jellyfish iwan]# mkdir -p /var/log/qmail
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
[root@jellyfish iwan]# mkdir -p /var/log/qmail/smtpd [root@jellyfish iwan]# mkdir -p /var/log/qmail/pop3d [root@jellyfish iwan]# mkdir -p /var/log/qmail/pop3ds
Kemudian direktori diubah agar dimiliki user qmail.
[root@jellyfish iwan]# chown qmaill /var/log/qmail [root@jellyfish iwan]# chown qmaill /var/log/qmail/smtpd [root@jellyfish iwan]# chown qmaill /var/log/qmail/pop3d [root@jellyfish iwan]# chown qmaill /var/log/qmail/pop3ds
Yang terakhir membuat symbolic link dari direktori supervise ke
/service. Hal ini dilakukan supaya daemontools dapat menjalankan
qmail.
[root@jellyfish iwan]# ln -s /var/qmail/supervise/qmail-send /service [root@jellyfish iwan]# ln -s /var/qmail/supervise/qmail-smtpd /service [root@jellyfish iwan]# ln -s /var/qmail/supervise/qmail-pop3d /service [root@jellyfish iwan]# ln -s /var/qmail/supervise/qmail-pop3ds /service
Dari langkah – langkah di atas, qmail akan secara otomatis langsung
berjalan. Apabila qmail belum akan dijalankan, lakukan perintah
berikut :
[root@jellyfish /]# qmailctl stop Stopping qmail... qmail-smtpd qmail-send qmail-pop3d
Untuk melakukan test running menggunakan perintah :
[root@jellyfish /]# qmailctl start Starting qmail
[root@jellyfish /]# qmailctl stat /service/qmail-send: up (pid 23786) 3 seconds /service/qmail-send/log: up (pid 23816) 1 seconds
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
/service/qmail-smtpd: up (pid 23817) 1 seconds /service/qmail-smtpd/log: up (pid 23820) 1 seconds /service/qmail-pop3d: up (pid 23821) 1 seconds /service/qmail-pop3d/log: up (pid 23824) 1 seconds messages in queue: 0 messages in queue but not yet preprocessed: 0
Keenam proses di atas harus berstatus "up" lebih dari satu second, jika
tidak maka ada beberapa masalah pada instalasi qmail. Instalasi qmail
yang sukses minimal akan menghasilkan empat proses berikut :
• Qmail-send dijalankan user qmails.
• Qmail-clean dijalankan user qmailq.
• Qmail-rspawn dijalankan user qmailr.
• Qmail-lspawn dijalankan user root.
Untuk melakukan pengontrolan proses yang menggunakan SMTP,
perlu dibuatkan smtp access control, penambahan access ini
mengizinkan localhost untukmelakukan injeksi menggunakan SMTP.
Akses kontrol mengatur IP/Network mana saja yang menggunakan
SMTP ini.
Perlu diperhatikan bahwa penambahan banyak IP akan membahayakan
keamanan server itu sendiri karena sangat mungkin dimanfaatkan
pihak luar untuk mengirim e-mail ke server lain tanpa melakukan
otentikasi. Proses ini disebut dengan spam.
Perintah untuk mengizinkan alamat 127.0.0.1 yang notabene adalah
localhost untuk melakukan open relay SMTP :
[root@jellyfish iwan]# echo ‘127.0.0.1:allow,RELAYCLIENT=””’ >>/etc/tcp.smtp
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Perintah untuk mengizinkan IP 192.10.10.0 sampai 192.10.10.255
unuk melakukan open relay SMTP. IP tersebut adalah IP local ( LAN
).
[root@jellyfish iwan]# echo ‘192.10.10.:allow,RELAYCLIENT=””’ >>/etc/tcp.smtp
Me – refresh database SMTP :
[root@jellyfish /]# qmailctl cdb Reloaded /etc/tcp.smtp.
Untuk mengelola e-mail secara menyeluruh perlu adanya alias
administrator. Alamat e-mail ini digunakan untuk mengirimkan
laporan server atas kejadian – kejadian yang ada di server, misalnya
adanya kesalahan penulisan alamat pengiriman, atau ada pengiriman e-
mail dari luar namun tidak ada alamat tersebut pada server kita atau
atau dikenal dengan e-mail bouce.
[root@jellyfish /]# echo iwan@jellyfish.co.id > /var/qmail/alias/.qmail-mailer-daemon [root@jellyfish /]# echo iwan@jellyfish.co.id > /var/qmail/alias/.qmail-postmaster [root@jellyfish /]# echo iwan@jellyfish.co.id > /var/qmail/alias/.qmail-root
Mengubah hak akses administrator :
[root@jellyfish /]# chmod 644 /var/qmail/alias/.qmail-postmaster [root@jellyfish /]# chmod 644 /var/qmail/alias/.qmail-root [root@jellyfish /]# chmod 644 /var/qmail/alias/.qmail-mailer-daemon
Mengecek apakah supervise sudah berjalan dengan baik :
[root@jellyfish /]# ps ax | grep qmail
Hasil dari perintah di atas jika supervise sudah berjalan dengan baik :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
17404 ? S 0:00 supervise qmail-send 19975 ? S 0:00 supervise qmail-smtpd 21969 ? S 0:00 supervise qmail-pop3d 23492 ? S 0:00 supervise qmail-pop3ds 13286 pts/2 S 0:00 grep qmail
3.2.4 Instalasi Checkpassword Untuk Otentikasi POP3
Checkpassword adalah fasilitas sederhana untuk melakukan
pengecekan password untuk semua aplikasi root. Program ini cocok
digunakan untuk aplikasi yang menggunakan login, ftpd, dan pop3d.
Tool ini mendukung alternative database password, login name yang
rahasia, password yang panjang, subaccounts, waktu password, dan
fasilitas lainnya.
[root@jellyfish checkpassword-0.90]# patch -p1 < ../checkpassword-0.90.errno.patch patching file error.h
Melakukan konfigurasi :
[root@jellyfish checkpassword-0.90]# make setup check ./compile auto_home.c ./load install hier.o auto_home.o unix.a byte.a ./compile instcheck.c ./load instcheck hier.o auto_home.o unix.a byte.a ./install ./instcheck
Sampai di sini proses instalasi qmail dan paket – paket standar
yang dibutuhkan telah selesai, qmail sudah dapat digunkan untuk
melakukan pengiriman e-mail.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3.2.5 Pemilihan Format Mailbox
Dalam sebuah Unix Mail Transfer Agent, secara garis besar format
pemilihan Mailbox dapat dibagi menjadi dua bagian besar. Masing –
masing format memiliki kelebihan dan kekurangan.
Format Mbox
Format ini merupakan format mailbox yang paling sering
digunakan. Di dalam format Mbox sebuah e-mail disimpan dalam
sebuah file besar. Sehingga apabila ada e-mail yang masuk atau e-mail
yang keluar, akan ditambahkan di dalam file penyimpan. Dengan
demikian, setiap kali ada penambahan e-mail, ukuran file ini akan
semakin bertambah besar. Selain hal tersebut di atas, jika file
mengalami corrupt, semua pesan yang ada akan rusak.
Mail Transfer Agent yang menggunakan format mbox ini, file
tersebut biasanya diletakkan dalam /var/spool/mail/username. Dilihat
dari penempatan file-nya, mode seperti ini termasuk dalam jenis Unix
Tradotional Mailbox ( format ini bias any digunkan oleh Sendmail ).
File mbox yang sudah menerapkan sistem yang lebih modern file
tersebut diletakkan di direktori /home/username/Mailbox. Format ini
paling sering digunakan, di mana bekerja dengan hamper semua Mail
Transfer Agent.
Kelemahan format mbox ini, jika pada saat download e-mail ada
gangguan, pada sesi berikutnya Mail User Agent akan mencoba untuk
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
melakukan download lagi, sesi sebelumnya dianggap mengalami
kegagalan. Selain hal tersebut, kemungkinan besar format mbox akan
rusak.
Format Maildir
Maildir adalah sebuah format Mailbox yang lebih realibel (
andal ) dan tahan crash disbanding dengan Mbox, karena tiap pesan
diletakkan pada file yang berbeda. Namun masih sedikit Mail User
Agent yang mendukung format ini. File pesan e-mail yang masuk
maupun keluar diletakkan dalam direktori /home/username/Maildir.
Direktori Maildir ini juga memiliki tiga buah subdiorektori, yaitu new,
cur, dan tmp. Masing – masing pesan e-mail dipisahkan di dalam salah
satu subdirektori tersebut, tergantung pada kondisi status pesan.
Direktori new dipergunakan untuk pesan baru yang belum dibaca, cur
untuk pesan yang sudah dibaca, sedangkan tmp untuk pesan yang
sedang dikirimkan.
3.2.6 Konfigurasi dan Instalasi Virtual Domain
Virtual domain adalah program yang digunakan untuk mengatur
domain pada e-mail secara virtual dan user account e-mail tetapi tidak
menggunakan proses authentifikasi berdasar file /etc/passwd.
Dengan menggunakan virtual domain, di dalam satu mesin bisa
menangani ribuan bahkan sampai jutaan alamat e-mail.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Vpopmail merupakan virtual domain yang digunakan sebagai paket
tambahan untuk qmail supaya qmail dapat mendukung virtual e-mail
domain dalam sebuah server. Dengan vpopmail sebuah server e-mail dapat
menampung banyak nama domain untuk e-mail sekaligus.
Vpopmail merupakan sekumpulan program yang melakukan outomatisasi
pembuatan dan perawatan account virtual domain dan pop untuk qmail.
3.2.6.a Keistimewaan dan Keunggulan Vpopmail
o Seorang administrator mailserver dapat dengan mudah dan cepat
melakukan penambahan dan perawatan mail account dengan
memanfaatkan program-program vpoopmail tanpa harus
mengakses langsung file-file kontrol qmail.
o Tidak perlu mempunyai ratusan file .qmail untuk virtual domain.
Setiap domain mempunyai direktori sendiri di bawah user
vpopmail dengan file password yang terpisah untuk setiap
domainnya.
o Dapat menggunakan MySQL, /etc/passwd, /etc/shadow, cdb
vpasswd, Ldap, Sybase, Oracle, dan PostgresSQL untuk proses
penyimpanan authentifikasi user.
o Hanya memerlukan 1 user dalam /etc/passwd, dan semuanya
berjalan dengan menggunakan satu UID/GID.
o Mengantarkan langsung ke Maildir dengan menggunakan qmail-
pop3d, file .qmail atau program Maildir lainnya.
o Konfigurasi dasar log sesuai dengan yang diperlukan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
o Dukungan untuk named dan IP based virtual domain.
o Pembuatan subdirektori yang dinamik untuk 1 sampai 23 juta user.
o Secara otomatis seluruh modifikasi file qmail dalam program
command line.
o Semua fungsi tersedia dalam dokumen API ke C. library.3.4.12
mempunyai object library yang bisa digunakan untuk modul PHP.
o Mendukung authentifikasi relay control pada Qmail Smtp server.
o Bisa digunakan dengan qmailadmin, sqwebmail, dan courier-imap.
o Keamanannya menggunakan tcpserver. Apabila semua alamat e-
mail menggunakan virtual domain, dapat menggunakan keamanan
yang tinggi menggunakan tcpserver melalui uid / gid, yaitu
vpopmail / vchkpw.
3.2.6.b Struktur Direktori
Semua vpopmail mempunyai struktur direktori yang sama,
biasanya vpopmail diinstal pada partisi /home.
Direktori vpopmail terdiri dari :
o bin yang berisi semua file binary
o lib yang berisi file library libvpopmail.a
o include yang berisi semua file C header file
o users yang digunakan untuk backward compatibility di mana user
menggunakan /etc/passwd
o domain yang berisi domain local dan virtual domain
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Dalam satu direktori, vpopmail mampu membuat 100 user atau
direktori. Secara default sistem akan memiliki 62 direktori dalam 3 level
dan 100 user direktori tiap direktori sehingga totalnya akan berjumlah
lebih dari 24 juta user direktori ( 100 + ( 62*100 ) + ( 62*62*100 ) + (
62*62*62*100 ) ).
Vpopmail akan secara otomatis membuat direktori dan
subdirektori. Apabila 100 user atau direktori sudah terpenuhi maka
vpopmail akan secara otomatis membuat direktori dan subdirektori baru.
3.2.6.c Konfigurasi Vpopmail
Pada saat menjalankan script ./configure, ada beberapa options
instalasi yang dapat dilakukan untuk mengatur konfigurasi dengan
program yang lain.
--enable-clear-passwd=y
Perintah ini akan memberikan password yang asli tanpa mengalami
enkripsi. Opsi ini digunakan administrator dalam mengakses password
user. Hal ini untuk membantu user apabila tidak ingat password-nya.
--enable-valias=y
Perintah ini akan mengaktifkan alias Vpopmail yang sebagian besar
menggunakan modul MySQL. Perintah ini mengizinkan alias / forward
disimpan dalam database MySQL.
--enable-mysql-replication=y
Opsi ini digunakan apabila terdapat dua server MySQL yang berbeda.
MySQL server memiliki pusat MySQL server untuk meng-update
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
pengubahan informasi yang ada di salah satu server. Vpopmail melakukan
read-only MySQL server dan akan mengirim semua transaksi yang
dilakukan seperti penambahan user, pengubahan password, dan
penghapusan domain ke server central database MySQL.
--enable-roaming-users=n|y
Perintah ini mengizinkan atau menutup penggunaan open relay untuk
otentifikasi POP. Setting ini secara default adalah n atau tidak
mengaktifkan roaming.
--enable-hardquota=#y|n
Perintah ini akan memberikan izin untuk mengeset hard quota. Secara
default opsi yang digunakan y maka jumlah maksimal pesan 50, apabila
lebih dari itu server akan melakukan bounce.
Untuk mengnonaktifkan quota tersebut gunakan opsi NOQUOTA.
--enable-default-domain=nama domain
Default domain name adalah null, maka diharuskan untuk mengisi default
domain virtual domain sehingga user hanya dapat melakukan otentifikasi
pada domain tersebut.
--enable-ip-alias-domains=y|n
Virtual domain akan melakukan lookup menggunakan alamat IP.
--enable-relay-clear-minutes=360
Perintah ini akan memberikan izin untuk melakukan relay dengan waktu
roaming user selama 360 menit. Jika opsi –enable-roaming-users=y aktif,
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
maka opsi –enable-relay-clear-minutes=360 juga akan mengeset lamanya
clearopensmtp.
--enable-mysql=n|y
Perintah ini menggunakan MySQL untuk melakukan otentifikasi,
perhatikan bahwa servername atau IP address user password MySQL
sudah ada dan tabel vpopmail di MySQL sudah dibuat.
--enable-sqlincdir=
Perintah ini menentukan di mana direktori sql include berada. Secara
default direktori tersebut berada di /usr/local/mysql.
--enable-sqllibdir=/usr/lib/mysql
Perintah ini menentukan di mana direktori sql libs berada. Opsi ini
mencari file libmysqlclient.a yang secara default berada di /usr/lib/mysql.
--enable-sqllibs=mysqlclient
Perintah ini menentukan library yang digunakan untuk link sql. Secara
default file tersebut adalah libmysqlclient.
--enable-large-site=n|y
Opsi ini akan melakukan konfigurasi mengenai banyaknya user pada
setiap domain-nya. Metode ini sangat efisien, karena jika sebuah server
memiliki user yang sangat banyak, maka dengan mengaktifkan opsi ini
dan vpopmail akan membuat tabel untuk virtual doamin. Secara standar
MySQL dapat menyimapn 500.000 user, apabila opsi ini diaktifkan, maka
MySQL akan menaikikan perfomanya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
--enable-ucspi-dir=dir
Perintah ini akan menentukan direktori untuk instalasi paket ucspi.
--enable-logging=e|y|n
Opsi ini akan memberikan izin login melalui POP3. Log otentifikasi
POP3 yang bermasalah akan disimpan di syslog ( /var/log/maillog ).
--enable-log-name=vpopmail
Opsi ini akan membuat file log/syslog.
--enable-vpopuser=vpopmail
Secara default, vpopmail akan menggunakan user vchkpw.
--enable-vpopgroup=vchkpw:
Secara default, vpopmail akan menggunakan group vchkpw.
--enable-admin-email=
Sintaks ini berfungsi untuk memasukkan alamat e-mail administrator,
yang digunakan sebagai laporan atas kejadian yang ada di vpopmail.
--enable-tcpserver-file=/etc/tcp.smtp
Sintaks ini menentukan di mana file tcpserver ditempatkan, juga
digunakan untuk relay. Secara default, direktori ini berada di /etc dan juga
di /etc/tcprules.d.
--enable-qmaildir=dir
Perintah ini untuk menentukan di mana qmail terinstal, biasanya di
direktori /var/qmail.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
--enable-tcprules-prog=/usr/local/bin/tcprules
Sintaks ini untuk menentukan lokasi program tcprules. Biasanya di
direktori /usr/local/bin.
--enable-apop-file=/etc/apop-secrets
Untuk menyatakan direktori di mana file apop berada.
--enable-apop=y|n
Otentifikasi apop.
--enable-passwd=y|n
Menggunakan direktori /etc/passwd untuk melakukan otentifikasi
password. Virtual domain atau vpopmail tidak menggunakan otentifikasi
password dengan /etc/passwd, namun menggunakan otentifikasi vpopmail
user.
3.2.6.d Installasi Vpopmail
Untuk menginstal vpopmail, ada beberapa hal yang harus
dipersiapkan.
• Fungsi compiler C yang lengkap.
• Qmail harus sudah terinstal.
Setelah hal tersebut terpenuhi, selanjutnya vpopmail dapat mulai diinstal.
Mempersiapkan user dan group yang akan digunakan oleh vpopmail.
[root@jellyfish vpopmail-5.4.13]# /usr/sbin/groupadd -g 89 vchkpw [root@jellyfish vpopmail-5.4.13]# /usr/sbin/useradd -g vchkpw -u 89 -d /home/vpopmail/ vpopmail.
Mengkonfigurasikan vpopmail.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
[root@jellyfish vpopmail-5.4.13]# ./configure --disable-roaming-users --enable-logging-p --disable-ip-alias-domains --disable-passwd --enable-clear-passwd --disable-domain-quotas --enable-auth-module=mysql --disable-many-domains --enable-auth-logging --enable-sql-logging --enable-valias --disable-mysql-limits --enable-admin-email=iwan-master@jelly.co.id --enable-sqwebmail-pass=n --enable-vpopuser=vpopmail --enable-qmaildir=/var/qmail –enable-incdir=/usr/lib/mysql.
Dari perintah konfigurasi akan didapat hasil sebagai berikut :
vpopmail 5.4.13 Current settings
---------------------------------------
vpopmail directory = /home/vpopmail/ uid = 89 gid = 89 roaming users = OFF --disable-roaming-users (default) password learning = OFF --disable-learn-passwords (default) md5 passwords = ON --enable-md5-passwords (default) file locking = ON --enable-file-locking (default) vdelivermail fsync = OFF --disable-file-sync (default) make seekable = ON --enable-make-seekable (default) clear passwd = ON --enable-clear-passwd (default) user dir hashing = ON --enable-users-big-dir (default) address extensions = OFF --disable-qmail-ext (default) ip alias = OFF --disable-ip-alias-domains (default) auth module = mysql --enable-auth-module=mysql mysql replication = OFF --disable-mysql-replication (default) sql logging = ON --enable-sql-logging mysql limits = OFF --disable-mysql-limits (default) MySQL valias = ON --enable-valias auth inc = -I/usr/lib/mysql auth lib = -L/usr/lib/mysql -lmysqlclient -lz -lm system passwords = OFF --disable-passwd (default) pop syslog = show only failed attempts --enable-logging=e (default) auth logging = ON --enable-auth-logging (default) one domain per SQL table = --disable-many-domains
Langkah selanjutnya melakukan instalasi.
[root@jellyfish vpopmail-5.4.13]#make [root@jellyfish vpopmail-5.4.13]#make install-strip
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Apabila tidak ada pesan error maka proses instalasi sudah berhasil.
3.2.6.e Administrasi Mail Server dengan Vpopmail.
Administrasi mail server dengan menggunakan vpopmail
digunakan untuk kebutuhan administrasi mail yang dilakukan
administrator, adapun aplikasi – aplikasi yang difungsikan yaitu :
• Menambah atau membuat virtual domain
[root@jellyfish bin]#./vaddomain iwan.jellyfish.co.id Please enter password for postmaster:klaten enter password again:klaten
Vaddomain akan memodifikasi file – file qmail, diantaranya :
o /var/qmail/control/locals
o /var/qmail/control/rcpthosts
o /var/qmail/control/morercpthosts ( jika rcpthosts > lebih
dari 50 baris ).
o /var/qmail/users/assign
o /var/qmail/users/cdb
Juga akan menambahkan beberapa direktori berikut :
o ~vpopmail/domains/namadomain
o ~vpopmail/domains/namadomain/postmaster/Maildir
o ~vpopmail/domains/namadomain/vpasswd
o ~vpopmail/domains/namadomain/vpasswd.cdb
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
• Menambah user untuk tiap virtual domain
Dalam pembuatan user dapat menggunakan opsi yang bias dilihat
dengan menggunakan perintah :
[root@jellyfish bin]#./vadduser
Contoh penambahan user dengan opsi :
[root@jellyfish bin]#./vadduser iwan@jellyfish.co.id -n -q 10M -c mail pribadi
Sintaks tersebut akan membuat user iwan@jellyfish.co.id tanpa
menggunakan password (-n) dengan kuota 10M (-q) dengan
keterangan e-mail pribadi (-c).
Contoh tanpa opsi :
[root@jellyfish bin]#./vadduser iwan@jellyfish.co.idPlease enter password for iwan@jellyfish.co.id:usd
enter password again:usd
• Melihat informasi domain
Dalam vpopmail dapat dilihat informasi tentang virtual domain,
iformasi tersebut antara lain nama domain, letak direktori virtual
domain, dan jumlah user.
[root@jellyfishfish bin]# ./vdominfo domain: jellyfish.co.id uid: 89 gid: 89 dir: /home/vpopmail//domains/jellyfish.co.id users: 3 domain: iwan.jellyfish.co.id uid: 89 gid: 89
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
dir: /home/vpopmail//domains/iwan.jellyfish.co.id users: 1
• Melihat informasi user
Informasi yang bias dilihat pada user antara lain penggunaan quota,
nama virtual domain, direktori dari user dan lainnya.
[root@jellyfishfish bin]# ./vuserinfo iwan@jellyfish.co.id name: iwan passwd: $1$VBt3R0Yu$KZhmi.r/P0tEmlgdMdg4M0 clear passwd: usd comment/gecos: iwan uid: 1 gid: 0 flags: 0 gecos: iwan limits: No user limits set. dir: /home/vpopmail//domains/jellyfish.co.id/iwan quota: NOQUOTA usage: NOQUOTA account created: Thu Apr 6 18:49:15 2006 last auth: Never logged in
• Menghapus virtual domain
Jika ingin menghapus salah satu virtual domain, dapat digunakan
perintah berikut :
[root@jellyfishfish bin]# ./vdeldomain [nama domain]
• Menghapus user
Perintah yang digunakan untuk menghapus user.
[root@jellyfishfish bin]# ./vdeuser [user@namadomain]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
• Mengganti password user
[root@jellyfishfish bin]# ./vpasswd [user@namadomain] [password baru]
• Memberikan quota user
[root@jellyfishfish bin]# ./vsetuserquota [user@namadomain] [quota dalam byte]
• Mengirim e-mail ke semua alamat
[root@jellyfishfish bin]# ./vpopbull -f [file pesan] [virtual domain]
Pengiriman e-mail dengan fasilitas vpopbull memiliki kterbatasan
karena harus ditulis secara manual.
• Membuat file e-mail
[root@jellyfishfish bin]# vi [nama file pesan]
Dalam menulis e-mail, perhatikan perlu diperhatikan penulisan
header dari masing – masing topik, yaitu Date, Subject, From, dan
Reply-to.
3.2.7 Instalasi Mailing List
Mailing List adalah sekumpulan daftar e-mail yang tergabung
dalam kelompok tertentu dan memiliki tujuan tertentu. Setiap alamat e-
mail dapat saling mengirimkan pesan kepada kelompok tersebut sesuai
dengan fungsi kelompok tersebut.
Dalam penulisan Tugas Akhir ini, program mailing list yang
digunakan adalah ezmlm.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Ezmlm adalah program yang digunakan untuk mengelola mailing list yang
menggunakan Mail Transfer Agent Qmail.
3.2.7.a Instalasi Ezmlm
Langkah pertama untuk melakukan instalasi, terlebih dahulu
source code-nya diletakkan di direktori /usr/local/src. Disarankan untuk
menggunakan ezmlm-0.53-idx-0.41.tar.gz, sehingga tidak perlu melakukan
patching, karena file ini gabungan dari dua file ezmlm dan ezmlm-idx.
Langkah instalasi :
[root@jellyfishfish ezmlm-0.53-idx-0.42]# make [root@jellyfishfish ezmlm-0.53-idx-0.42]# make setup
Jika dalam instalasi tidak ada pesan error maka instalasi telah berhasil.
3.2.7.b Administrasi Mailing List
• Membuat Mailing List
Untuk membuat mailing list perlu dipersiapkan:
o Nama domain ( jellyfish.co.id ).
o Nama mailing list ( milis-pribadi ).
o Direktori untuk meletakkan mailing list (
/home/vpopmail/domains/jellyfish.co.id/milis-pribadi ).
Untuk membuatnya menggunakan perintah ezmlm-make.
[root@jellyfishfish /]# /usr/local/bin/ezmlm/ezmlm-make/ [direktori milis] [direktori alias] [nama milis] [nama domain].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
• Melakukan Subscribe
Subscribe adalah proses mendaftar menjadi anggota milis, proses ini
dapat dilakukan oleh administrator dan oleh user.
o Dilakukan oleh administrator :
[root@jellyfishfish /]# /usr/local/bin/ezmlm/ezmlm-sub/ [direktori milis] [nama e-mail]
o Dilakukan oleh client :
Cara ini sering digunakan oleh user untuk menjadi anggota milis,
untuk mendaftar bisanya digunakan fasilitas e-mail masing –
masing.
• Melakukan Unsubscribe
Unsubscribe merupakan proses pembatalan keanggotaan milis. Seperti
proses subscribe, proses ini juga dapat dilakukan oleh administrator
dan oleh user.
o Dilakukan oleh administrator :
[root@jellyfishfish /]# /usr/local/bin/ezmlm/ezmlm-unsub/ [direktori milis] [nama e-mail]
o Dilakukan oleh user :
Seperti pada proses subscribe, pembatalan keanggotaan milis
oleh user dilakukan dengan fasilitas e-mail.
• Melihat Anggota Mailing List
Untuk melihat anggota milis, menggunakan perintah ezmlm-list.
[root@jellyfishfish /]# /usr/local/bin/ezmlm/ezmlm-list/ [direktori milis]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3.2.8 Autorespond
Autorespond juga disebut sebagai mail robot, merupakan program
tambahan untuk membantu qmail dalam pengelolaan mail. Yaitu untuk
merespon secara otomatis segala e-mail yang masuk ke server, dengan
mengirim pesan balasan ke pengirim.
Autorespond juga digunakan jika ada kesalahan pengiriman sehingga
server harus mengirim pesan ke pengirim tersebut. Proses ini biasa dikirim
oleh mailer-daemoni, empty envelope sender, atau bulk.
3.2.8.a Instalasi Autorespond
Program autorespon biasanya akan diinstal di direktori
/usr/local/bin.
Masuk ke direktori autorespond dan melukan make dan make install.
[root@jellyfish autorespond-2.0.5]# make [root@jellyfish autorespond-2.0.5]# make install
Jika tidak terdapat pesan error maka proses instalasi telah berhasil.
3.2.8.b Administrasi Autorespond
Untuk membuat autorespond, terlebih dahulu harus dibuat alias
qmail pada masing – masing direktori domain.
Membuat file alias qmail :
[root@jellyfishfish /]# vi /home/vpopmail/domains/[nama domain]/[file alias]
Sintaks penulisan file :
Autorespond time num message dir [flag arsender]
o Time : banyaknya waktu dalam hitungan detik.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
o Num : jumlah pesan maksimum yang diizinkan dalam
waktu
tersebut.
o Message : nama file yang akan dikirimkan oleh server.
o Dir : direktori untuk menampung log pesan.
o Flag : mengelola pesan yang akan dikirim.
0 adalah pesan yang asli tidak di sertakan.
1 adalah pesan asli yang disertakan kecuali
attachment.
o Arsender : alamat from pengirim pesan.
+ from akan kosong.
$ from akan diisi dengan alamat dari pesan.
3.2.9 Qmailadmin
Qmailadmin merupakan fasilitas pendukung qmail dan vpopmail
untuk mengelola domain dan user berbasis web, sehingga semua kegiatan
yang berhubungan dengan vpopmail ( penambahan dan penghapusan user,
mailing list dan lain – lain ) dapat dilakukan dengan mudah menggunakan
qmailadmin.
3.2.9.a Konfigurasi Qmailadmin
Sebelum melakukan instalasi, qmailadmin terlebih dahulu harus
dikonfigurasikan. Berikut adalah opsi yang digunakan dalam konfigurasi
qmailadmin :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
--enable-cgibindir={dir}
Qmailadmin menggunakan HTTP server dengan direktori cgi-bin.
--enable-htmllibdir={dir}
Qmailadmin menggunakan HTTP server dengan direktori html.
--enable-qmaildir={dir}
Qmailadmin menggunakan direktori di mana qmail terinstal.
--enable-cgipath={/cgi-bin/qmailadmin}
Qmailadmin menggunakan path untuk qmailadmin yang biasanya terdapat
di /cgi-bin/qmailadmin.
--enable-vpopuser={vpopuser}
Qmailadmin menggunakan user vchkpw untuk koneksi ke vpopmail.
--enable-vpopgroup={vchkpw}
Qmailadmin menggunakan user group vchkpw untuk koneksi ke vpopmail.
--enable-autoresponder-bin={path}
Qmailadmin membutuhkan path untuk mencari binary autoresponder.
--enable-ezmlmdir={dir}
Qmailadmin membutuhkan path direktori ezmlm.
--enable-modify-spam=y
Qmailadmin memberikan izin konfigurasi spam.
--enable-domain-autofill
Konfigurasi ini dibutuhkan apabila memiliki domain yang berbeda tetapi
menggunakan qmailadmin yang sama.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3.2.9.b Instalasi Qmailadmin
User yang digunakan saat konfigurasi dan instalasi qmailadmin
haruslah sebagai root, karena vpopmail memprotreksi library yang
berhubungan dengan qmailadmin dari user regular sementara qmailadmin
membutuhkan library tersebut.
Qmailadmin juga membutuhkan ruang untuk konfigurasi system di
direktori /usr/local/src/qmailadmin, web server di direktori /www/cgi-bin,
dan html di direktori /www/html.
Untuk mengkompilasi source code qmailadmin, terlebih dahulu
melakukan konfigurasi.
[root@jellyfishfish qmailadmin-1.2.10]# ./configure --enable-cgibindir=/var/www/cgi-bin/ --enable-autoresponder-bin=/usr/local/bin/ --enable-ezmlmdir=/usr/local/bin/ezmlm/ --enable-vpopmaildir=/home/vpopmail/ --enable-vpopuser=vpopmail --enable-htmldir=/var/www/html/ --enable-modify-spam=Y
Selanjutnya melakukan kompilasi.
[root@jellyfishfish qmailadmin-1.2.10]# make
Setelah proses make selesai, kemudian melakukan instalasi.
[root@jellyfishfish qmailadmin-1.2.10]# make install-strip
3.2.9.c Administrasi Qmailadmin
Setelah instalasi berjalan dengan baik, selanjutnya bisa dilakukan
administasi e-mail dengan qmailadmin.
Untuk menjalankan qmailadmin pada web browser dengan
menggunakan alamat http://localhost/cgi-bin/qmailadmin.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 3.1 Tampilan menu login
Untuk melakukan login, diharuskan untuk mengisi kolom – kolom
pada menu login. User account menggunakan postmaster, domain name
masukkan domain name yang di-handle oleh postmaster beserta
password-nya. Account postmaster dan domain namedomain name
tersebut merupakan yang dibuat dengan vpopmain saat menjalankan
perintah vadddomain.
Jika login diterima oleh sistem, selanjutnya akan masuk ke main
menu. Fasilitas – fasilitas yang terdapat pada main menu adalah :
• Main Menu.
o Email Account ( untuk melihat e-mail account ).
o Forward ( untuk forward ).
o Mail Robot ( menampilkan mail robot ).
o Mailing List ( menampilkan mailing list ).
• Quick Links.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
o New Email Account ( membuat alamat e-mail baru ).
o New Forward ( membuat mail forward baru ).
o New Mail Roboti ( membuat mail jawaban otomatis oleh
system ).
o New Mailing List ( membuat group / kelompok alamat e-
mail ).
• Refresh Menu.
• Logout.
Gambar 3.2 Tampilan Main Menu
Membuat user e-mail
Untuk membuat alamat e-mail baru, pada Main Menu klik bagian New
Email Account, maka sistem akan meminta user untuk memasukkan
data – data seperti email account, password, nama user, dan lainnya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Pendaftaran alamat baru ini langsung dapat sekaligus dimasukkan
dalam keanggotaan mailing list.
Gamabar 3.3 Tampilan New Email Account
Membuat forward
Forward mail digunakan untuk meneruskan pengiriman e-mail apabila
alamat e-mail yang dituju tidak ada atau salah penulisan alamat.
Sebagai contoh, saya memiliki alamat e-mail
iwan_klaten@jellyfish.co.id, ada teman yang akan mengirim e-mail
sedangkan dia lupa alamat e-mail yang saya miliki dan cuma ingat
nama iwan, dan mengirimnya ke alamat iwan@jellyfish.co.id. Dengan
fasilitas forward, kesalahan penulisan alamat dapat diatasi, yaitu
dengan memasukkan nama iwan ke dalam daftar forward maka alamat
e-mail iwan@jellyfish.co.id akan di-forward ke
iwan_klaten@jellyfish.co.id.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 3.4 Tampilan New Forward
Membuat mail robot
Mail Robot merupakan fasilitas bantu untuk mempermudah
pengelolaan program autorespond. Fungsi mail robot yang dibuat di
qmailadmin ini tidak berbeda dengan yang dibuat dalam program
autorespond.
Dalam qmailadmin pembutan mail robot lebih mudah, untuk
membuatnya klik New Mail Robot pada Main Menu, selanjutnya
tinggal mengisi form yang yang ada.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 3.5 Tampilan New Mail Robot
3.2.10 Sqwebmail
Sqwebmail merupakan program berbasis web untuk mengakses e-
mail dari qmail dan vpopmail. Sqwemail merupakan program CGI dan
hanya digunakan untuk format maildir dan tidak dapat digunakan untuk
format mailbox
3.2.10.a Konfigurasi Sqwebmail
Konfigurasi sqwebmail digunakan untuk mengoptimalkan fungsi –
fungsi yang terdapat dalam sqwebmail. Berikut adalah opsi – opsi yang
dapat digunakan untuk konfigurasi :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
--without-module--
Sintak ini berfungsi agar sistem tidak menggunakan modul tertentu untuk
melakukan otentikasi.
--with-libcharset
Opsi ini berfungsi agar sistem menggunakan library GNU libcharset jika
memang tersinstal.
--disable-changepass -
Sintak ini menonaktifkan kemampuan untuk mengubah password login.
--enable-unicode=chset,chset,…
Opsi untuk menonaktifkanunicode tertentu.
--with-cachedir=dir, --with-acheowner=userid
Sintak ini akan membuat sqwebmail menggunakan cache dan direktori
cache dapat diubah sesuai kebutuhan.
--without-gzip -
Dengan opsi ini sistem tidak akan menggunakan program gzip untuk
mengompres data sebelum dikirim.
--with-db=db –
Sistem akan menggunakan database, biasanya yang digunakan library
GDBM atau DB.
--enable-https
Sistem akan menggunakan https secure.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
--enable-https=login
Perintah ini akan membuat sistem mengguanakn https untuk login, secara
default sistem menggunakan –enable-https=auto.
--enable-hardtimeout=seconds
Sistem akan menentukan batas waktu jeda ( time out ). Jika batas waktu
tersebut dilewati maka user akan dibuat logout.
--enable-autopurge=days
Sintak ini akan membuat pesan yang ada pada direktori trash akan secara
otomatis terhapus pada periode waktu tertentu.
--enable-maxpurge=days
Opsi ini untuk mementukan batas waktu maksimum untuk menghapus
direktori trash.
--with-defaultlang=en
Secara default sistem akan menggunakan bahasa Inggris.
--enable-cgibindir=directory
Sintak ini untuk menentukan lokasi direktori cgi-bin.
--enable-imagedir=directory
Menentukan direktori di mana gambar akan diinstal.
--enable-imageurl=URL
Opsi ini menyatakan alamat URL yang mengandung image dan icon.
--enable-mimetypes=filelist
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Sintak untuk menggunakan file mime.types. Saat ettachment di-upload,
sistem akan melakukan pencarian ekstensi file yang dikirim oleh file
mime.types.
--enable-mimecharset=charset
Dengan sintak ini default charset akan digunakan untuk header.
--enable-lang=lang
Untuk menentukan default language dari web page.
--enable-bannerprog=program
Perintah ini untuk memberikan path program banner sqwebmail.
--with-maxargsize=n
Sintak ini akan mengeset ukuran maksimum saat sqwebmail melakukan
post.
--with-maxformargsize=n
Sintak ini mengeset ukuran file file yang di-upload ( attachment ) dengan
sqwebmail.
--with-maxmsgsize=n
Opsi ini akan mengeset ukuran maksimum message ( termasuk file
attachment ).
--with-ispell=pathname
Menentukan direktori yang digunakan untuk melakukan pengecekan ejaan
dokumen.
--without-ispell
Pengecekan ejaan tidak dilakukan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
--with-fcgi
Sintak ini untuk menggunakan dukungan fastcgi ( http://www.fastcgi.com
).
--disable-autorenamesent
Untuk menonaktifkan fasilitas penamaan ulang folder Sent untuk setiap
bulanya.
--with-calendarpurge=N
Jika status kalender adalah enable maka purge dilakukan secara default (
30 hari ).
--with-trashquota
Sintak ini untuk melakukan trash quota direktori, termasuk menghapus
file.
--with-syslog-DEST
Sintak ini akan memilih sumber syslog.
Modul – modul untuk melakukan otentifikasi :
Authpwd : otentifikasi menggunakan sistem file pwd.
Authshadow : menggunakan authpwd dengan fill shadow
password.
Authpam : menggunakan PAM library untuk
otentifikasi.
Authuserdb : melakukan otentifikasi menggunakan
database GDBM/DB.
Authmysql : melakukan otentifikasi menggunakan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
database MySQL.
Authpgsql : melakukan otentifikasi menggunakan
database PostgreSQL.
Authldap : melakukan otentifikasi menggunakan
database LDAP.
Authvchkpw : melakukan otentifikasi menggunakan
library vpopmail.
Authdaemon : melakukan otentifikasi menggunakan
authdaemon.
3.2.10.b Instalasi Sqwebmail
Dalam proses instalasi sqwebmail, ada beberapa syarat yang harus
dipenuhi dalam system, syarat tersebut adalah :
Perl interpreter, dalam instalasi, sqwebmail tidak menggunakan
PHP, tetapi menggunakan C untuk membangun source code-nya,
akan tetapi saat dijalankan di web menggunakan CGI engine,
sehingga diperlukan Perl interpreter.
Library GDBM atau DB harus sudah terinstal.
Gnu Make dan Gnu C compiler, paket ini untuk mengkompilasi
source code sqwebmail menjadi file binary.
Tahap – tahap instalasi sqwebmail:
Langkah pertama melakukan konfigurasi dengan opsi – opsi yang sudah
dijelaskan sebelumnya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
[root@jellyfishfish sqwebmail-4.0.5]# ./configure --enable-logincache --with-authvchkpw --without-authshadow --without-authpam --without-authuserdb --without-authldap --without-authdaemon --enable-webpass=vpopmail --enable-cgibindir=/var/www/cgi-bin/ --enable-https=auto –enable-mimetypes=/etc
Jika proses konfigurasi tidak ada masalah error, dilanjutkan dengan
melakukan perintah – perintah berikut :
[root@jellyfishfish sqwebmail-4.0.5]# make [root@jellyfishfish sqwebmail-4.0.5]# make check [root@jellyfishfish sqwebmail-4.0.5]# make install-strip [root@jellyfishfish sqwebmail-4.0.5]# make install-configure
Setelah semua proses berhasil dijalankan dan sqwebmail sudah terinstal
dalam sistem, kemudian melakukan langkah – langkah berikut :
Menambah hostname.
Hostname digunakan sebagai nilai default untuk pesan keluar, pada
saat konfigurasi sqwebmail secara otomatis membuat file hostname
di direktori /usr/local/share/sqwebmail, namun kadang – kadang
file ini tidak terbentuk, sehingga harus dibentuk secara manual.
[root@jellyfishfish sqwebmail-4.0.5]# echo "jellyfish.co.id" > /usr/local/share/sqwebmail/hostname
Mengubah file sendit.sh.
[root@jellyfishfish sqwebmail-4.0.5]# vi /usr/local/share/sqwebmail/sendit.sh
Mengubah baris exec /usr/sbin/sendmail -oi -t -f "$1" menjadi
exec /var/qmail/bin/qmail-inject -f "$1"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
File sendit.sh digunakan untuk memanggil program qmail-inject.
Secara default, file ini memanggil program sendmail, maka
diharuskan untuk mengubahnya.
Membuat nochanginfrom.
[root@jellyfishfish sqwebmail-4.0.5]# touch /usr/local/share/sqwebmail/nochanginfrom
File ini dibuat untuk menghindari perubahan header From.
Menggunakan exsender.
[root@jellyfishfish sqwebmail-4.0.5]# touch /usr/local/share/sqwebmail/usexsender
File ini digunakan untuk menampilkan header X-sender saat
mengirim pesan atau outgoing message.
Membuat file logindomainlist.
[root@jellyfishfish sqwebmail-4.0.5]# touch /usr/local/share/sqwebmail/logindomainlist
File ini dibuat agar sqwebmail menampilkan domain-nya pada saat
login.
Menjalankan sqwebmail.
Agar sqwebmail dapat difungsikan menggunakan web browser,
maka service sqwebmaild.rc harus dijalankan.
[root@jellyfishfish sqwebmail-4.0.5]# /usr/local/share/libexec/sqwebmaild.rc start
Agar service dapat berjalan saat system dinyalakan, maka service
start diatas perlu ditambahkan dalam file /etc/rc.local.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
[root@jellyfishfish sqwebmail-4.0.5]# vi /etc/rc.local
Kemudian tambahkan baris berikut :
/usr/local/share/sqwebmail/libexec/sqwebmaild.rc
3.2.10.c Menggunakan Sqwebmail
Sqwebmail yang sudah terinstal selanjutnya dapat digunakan /
dijalankan dengan web browser. Untuk mengaksesnya menggunakan
alamat http://localhost/cgi-bin/sqwebmail dan juga dibutuhkan user dan
password yang sudah dibuat dengan qmailadmin. Perlu diperhatikan
bahwa password yang digunakan bersifat case sensitive, artinya huruf
besar dan kecil dibedakan.
Jika sqwebmail berjalan dengan baik, maka akan tampak seperti gambar
dibawah :
Gambar 3.6 Tampilan Menu Login
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Untuk login isikan form – form yang tersedia, yaitu User Id, dan
Password,. Kemudian klik login, jika login benar maka akan tampak
gambar berikut :
Gambar 3.7 Menu Folder
Pada halaman ini, terdapat beberapa menu, diantaranya Folder,
Create Message, Preferences, Address Book, dan Log Out.
Folder
Pada menu Folder terdapat beberapa sub menu, yaitu INBOX untuk
melihat e-mail yang masuk, Sent untuk laporan pengiriman e-mail,
Trash sebagai tempat file – file e-mail yang dihapus dari INBOX.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Create Message
Create Message digunakan untuk pengiriman e-mail, seperti
fasilitas pengeriman e-mail pada umumnya, untuk proses
pengiriman pesan tinggal mengisikan form yang tersedia.
Gambar 3.8 Menu Create Message
Preference
Pada menu preference, dapat dilakukan beberapa konfigurasi
seperti message per page, sort ( mengurutkan per tanggal ),
melakukan otomatisasi penghapusan dan melakukan perubahan
password.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 3.9 Menu Preference
Address Book
Menu ini digunakan untuk merubah, menghapus, juga
menambahkan dan menyimpan beberapa alamat e-mail yang
dimiliki user.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 3.10 Address Book
3.3 Persyaratan Membangun Server E-mail dengan Qmail
3.3.1 Operating System
Qmail merupakan aplikasi untuk server e-mail yang berjalan pada
platform Unix / Linux atau Unix BSD. Contoh dari sistem operasi tersebut
adalah :
1 Unix / Linux :
Sistem operasi yang dapat dipilih dari Unix / Linux adalah Redhat, Fedora
Core, Mandrake, Suse, Slackware, Debian, dan lain – lain.
Untuk menginstal Qmail pada platform Unix / Linux dapat digunakan
paket – paket installer, seperti RPM untuk Redhat Linux, RPMs untuk
Mandrake Linux, Debs untuk Debian Linux.
2 Unix BSD
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Pilihan sistem oprerasi dari Unix BSD antara lain FreeBSD, OpenBSD,
NetBSD.
Paket – paket installer yang dapat digunakan untuk menginstall pada
sistem operasi Unix BSD adalah Ports.
3.3.2 Jaringan Komputer
Jaringan komputer merupakan kumpulan komputer dan alat – alat
yang saling dihubungkan menggunakan media komunikasi tertentu, yang
memungkinkan pengguna jaringan untuk saling bertukar data atau
menggunakan perangkat lunak maupun perangkat keras secara berbagi.
Ada tiga tipe jaringan dalam hubungannya dengan luas daerah yang
dicakup, yaitu :
LAN ( Local Area Network )
MAN ( Metropolitan Area Network )
WAN ( Wide Area Network )
3.3.2.a LAN
LAN adalah jaringan yang terbatas pada daerah yang relatif kecil,
biasanya terbatas pada daerah geografis tertentu, misalnya laboratorium,
sekolah, kantor, atau gedung. Meskipun demikian LAN dapat berisi
sampai ratusan komputer yang harus dapat digunakan oleh banyak sekali
user.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Dalam konfigurasi LAN, satu komputer dirancang sebagi server,
yang mana server digunakan untuk menjalankan semua perangkat lunak
yang dapat dipakai bersama oleh komputer – komputer yang terhubung
pada jaringan.
3.3.2.b MAN
MAN meliputi area geografis yang lebih luas, seperti suatu kota.
Dengan MAN suatu komputer dikantor cabang dapat berhubungan dengan
server komputer yang ada pada kantor pusat melalui jaringan telepon,
kabel koaksial, atau komunikasi tanpa kabel.
3.3.2.c WAN
WAN meliputi are geografis yang lebih luas lagi, yang meliputi
suatu negara atau dunia. WAN digunakan untuk menghubungkan banyak
LAN yang secara geografis terpisah. WAN dibuat dengan cara
menghubungkan LAN dengan menggunakan layanan seperti dial-up,
satelit, atau layanan packet carrier.
3.3.3 Peralatan Jaringan
Untuk mengkonfigurasi suatu jaringan komputer harus
disesuaikan dengan kebutuhan dan fungsi dari jaringan tersebut, hal ini
juga digunakan untuk menentukan perangkat keras yang yang digunakan.
Beberapa perangkat keras tersebut antara lain adalah :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3.3.3.a Server
Server merupakan komputer berkecepatan tinggi dengan kapasitas
memori ( RAM ) dan media penyimpana yang besar, dan dihubungkan
dengan kartu jaringan yang cepat. Untuk mendukung kinerja yang tinggi,
pada server dimungkinkan untuk dipasang beberapa prosesor yang
simetrik, demikian juga peralatan lain seperti mainboard, sumber daya dan
RAM sehingga server mampu beroperasi terus – menerus tanpa berhenti
untuk melayani permintaan.
3.3.3.b Workstation
Yaitu semua komputer yang terhubung ke server pada jaringan
yang dikonfigurasi menggunakan kartu jaringan, perangkat lunak jaringan
dan kabel – kabel yang diperlukan. Pada beberapa workstatioan tidak
membutuhkan simpana lokal seperti hardisk, karena file yang diperlukan
dapat disimpan pada server.
3.3.3.c NIC ( Network Interface Card )
Merupakan peralatan yang memungkinkan hubungan antara
jaringan dengan komputer workstation atau jaringan dengan komputer
server. NIC merupakan peralatan internal yang dipasang pada slot
mainboard, baik slot ISA maupun PCI. Bahkan saat ini sudah banyak
mainboard yang memasang NIC secara onboard.
NIC merupakan faktor penting untuk menentukan kecepatan serta
kinerja jaringan. Contoh beberapa NIC yang sering digunakan dalam
jaringan :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Kartu Ethernet
Kartu WLAN
Gambar 3.11 Kartu Ethernet
3.3.3.d HUB
Hub merupakan pusat koneksi semua node pada jaringan. Hub
bertiondak sebagai titik pengendali untuk aktifitas sistem, pengelolaan
serta pengembangan jaringan.
Hub adalah alat yang menyediakan titik pusat hubungan untuk kabel dari
workstation, server, dan peralatan yang lain.
Ada hub yang bersifat pasif, yang mana hanya melewatkan isyarat dari
satu komputer ke komputer yang lain tanpa perubahan, dan ada hub yang
bersifat aktif, yang mana secara elektrik memperbaiki isyarat yang
melintasinya. Hub aktif dapat digunakan sebagai repreater untuk
memperluas jangkauan jaringan. Antar hub dapat disusun sedemikian
sehingga hub dapat melayani banyak koneksi kabel jaringan dari klien..
bentuk susunan hub dapat terdiri dari beberapa macam dan tergantung
pada jenis hub yang digunakan, yaitu :
Standalone hub
Hub yang hanya terdiri dari satu tingkat dengan beberapa port, hub ini
mendukung beberapa mode untuk menghubungkan satu hub dengan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
hub yang lain, ada yang menggunakan kabel koaksial yang panjang
atau dengan kabel UTP antara dua port pada masing – masing hub.
Biasanya dipilih untuk kantor kecil dengan pengguna kurang dari 12
tiap LAN.
Gambar 3.11 Hub standalone dan Jaringan Dengan Hub Stanalone
Yang Terhubung Dengan Kabel Koaksial
Stackable hub
Jenis hub ini hampir sama dengan standalone hub, tetapi hub jenis ini
dapat dihubungkan secara bertumpuk menggunakan kabel khusus.
Pada hub stackable terdapat port tambahan untuk menyatukan antara
hub satu dengan hub yang lain.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 3.12 Hub Stackable dan Jaringan yang Terhubung
Menggunakan Port Stack
3.3.3.e Switch
Adalah alat yang digunakan untuk menghubungkan beberapa LAN
yang terpisah serta menyediakan filter paket antar LAN. Switch merupakan
peralatan multi port yang masing – masing dapat mendukung satu
workstation, jaringan ethernet atau jaringan token ring. Meskipun
terhubung dengan jaringan yang berbeda pada masing – masing port,
switch dapat memindahkan paket data antar jaringan, dalam hal ini switc
berlaku seperti bridge multi port yang sangat cepat.
Dengan switch, dimungkinkan untuk merancang jaringan yang
terdiri dari beberapa segmen jaringan yang kecil. Dengan segmen yang
lebih kecil, jumlah workstation yang berkompetisi berebut bandwidth
makin kecil, maka jumlah tumbukan data akan dapat diminimalkan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 3.13 Switch dan Penggunaannya
3.3.3.f WAP ( Wireles Access Point )
WAP adalah peralatan yang berfungsi sebagai pusat komunikasi
data dalam jaringan WLAN ( wireless LAN ). Dalam mode operasi yang
umum digunakan, semua server wireless berkomunikasi dengan
workstation atau dengan server lain melalui WAP. Dalam pengoperasian
ini, WAP berfungsi seperti switch atau hub pada jaringan yang
menggunakan transmisi kabel.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 3.14 WAP dan Jaringan Dengan WAP
3.3.3.g Bridge
Bridge merupakan alat yang memungkinkan untuk membagi suatu
jaringan yang besar dalam dua jaringan yang lebih kecil, sehingga menjadi
jaringan yang lebih efisien. Bridge dapat memonitor lalu – lintas informasi
pada kedua jaringan, sehingga paket informasi dapat dilewatkan pada lkasi
yang benar. Bridge dapat digunakan utnuk menghubungkan dua tipe
pengkabelan atau tipe topologi jaringan yang berbedaasalkan masih
menggunakan protokol yang sama.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 3.15 Bridge dan Penggunaanya
3.3.3.h Router
Router digunakan untuk mengubah informasi dari suatu jaringan ke
jaringan yang lain. Router mirip dengan bridge super cerdar ( super
intellegent bridge ). Router akan memilih jalur terbaik untuk melewatkan
suatu pesan, berdasar pada alamat tujuan dan alamat asal. Router dapat
mengarahkan lalu – lintas data untuk mencegah tumbukan dan dapat
mengetahui kapan untuk mengarahkan lalu – lintas sepantang jalur utama
dan jalur alternatif.
Router dapat digolongkan menjadi dua jenis, yaitu router
dedicated ( router buatan pabrik ), misalnya Cisco, dan 3Com. Yang kedua
adalah PC router.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Sebuah PC dapat dikatakan sebagai PC router jika PC tersebut memiliki
lebih dari satu network interface dan PC tersebut mempunyai kemampuan
mem-forward paket IP, program yang paling sering dijalankan PC untuk
mengatur routing paket adalah GateD.
Gambar 3.16 Router Buatan Pabrik dan Penggunaan Router
Yang dilakukan router adalah sebagai berikut :
• Mengarahkan lalu – lintas isyarat secara efisien.
• Mengarahkan pesan antara dua sembarang protokol.
• Mengarahkan pesan antar topologi jaringan yang berbeda.
• Mengarahkan pesan melintasi tipe kabel yang berbeda.
3.3.4 Topologi Jaringan
Topologi jaringan komputer mengandung dua pengertian, yaitu
dilihat dari sisi pengkabelan dan dari sisi aliran data.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Dilihat dari aliran data pada jaringan maka topologi tersebut adalah
topologi logika ( logical topologi ), adalah gambaran bagaimana aliran
data dalam suatu jaringan. Dari kenampakan fisik pengkabelan, maka
topologi yang dimaksud adalah topologi fisik ( physical toplogi ),
merupakan konfigurasi semua komputer baik workstation maupun server,
peralatan serta kabel dalam suatu jaringan. Secara umum topoligi diartikan
sebagai gambaran bagaimana komputer dan peralatan jaringan tersusun
dalam suatu jaringan.
3.3.4.a Topologi Bus Linier
Dlam topologi bus, semua komputer dan peralatan dihubungkan
pada suatu kabel linier. Karakteristik topologi bus adalah :
Node – node dihubungkan secara serial di sepanjang kabel, dan pada
kedua ujung kabel ditutup dengan terminator.
Sangat sederhana dalam instalasi, juga ekonomis dalam biaya.
Paket – paket data saling bertumbukan pada satu kabel, sehingga jika
node yang terhubung sangat banyak, maka kinerja jaringan akan turun.
Tidak diperlukan hub pada jaringan ini, hanya memakai T-Connector.
Jika salah satu sambungan dalam bus linier putus, maka seluruh
jari9ngan akan tidak bekerja.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 3.17 Topologi Bus Linier
3.3.4.b Topologi Ring
Dalam topologi ring, komputer dan peralatan dihubungkan pada
suatu kabel utama, sehingga kabel utama membentuk suatu ring. Ujung –
ujung dari kabel utama saling dihubungkan, sehingga membentuk
lingkaran tak terputus. Karakteristik dari topologi ring adalah :
Jika salah satu peralatan rusak, maka tidak akan mengganggu kinerja
jaringan, karena tipa peralatan tidak di hubungkan langsung.
Paket – paket data mengalir dalam satu arah sehingga collision dapat
dihindarkan.
Jika kabel rusak, maka semua peralatan tidak berfungsi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 3.18 Toplogi Ring
3.3.4.c Topologi Star
Dalam topologi star semua komputer dan peralatan lain terhubung
secara langsung pada satu pusat jaringan yang berupa hub atau
consentrator. hub atau consentrator bertindakn sebagai pengelola dan
pengendali semua fungsi dalam jaringan. Data yang mengalir pada
topologi star selalu melintasi hub atau consentrator sebelum dilanjutkan
ke tujuan akhir. Karakteristik jaringan topologi star :
Mudah dalam instalasi dan pengkabelan.
Jika salah satu peralatan rusak atau salah satu kabel terputus maka
keseluruhan jaringan masih bisa tetap berkomunikasi.
Karena setiap data yang masuk ke hub atau consentrator kemudia di-
broadcast ke seluruh node yang terhubung ke hub atau consentrator,
maka jika node yang terhubung sangat banyak, collision akan semakin
sering terjadi sehingga kinerja jaringan menurun. Namun hal ini tidak
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
akan terjadi jika hub diganti dengan switch hub, sebab switch hub
mempunyai kemampuan untukmemilih satu jalur tujuan data, tidak di-
broadcast ke seluruh port.
Jika hub atau consentrator rusak, maka fungsi jaringan tidak akan
bekerja.
Gambar 3.19 Topologi Star
3.3.4.d Topologi Tree
Topologi tree menggabungkan dua toplogi sekaligus yaitu topologi
bus linier dan topologi star. Topologi jaringan ini meliputi beberapa
kelompok konfigurasi workstation bertopologi star yang kemudian
dihubungkan dalam kabel utama sebagai bus linier. Dalam topologi tree
dimungkinkan melakukan perluasan jaringan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 3.20 Topologi Tree
Karakteristik topologi tree :
pengkabelan point to point untuk tiap bagian jaringan.
Didukung oleh banyak vendor perangkat keras dan perangkat lunak.
Jumlah panjang total masing – masing bagian dibatasi oleh tipe
pengkabelan yang digunakan.
Jika jalur utama putus, seluruh bagian jaringan tidak bekerja.
Sulit dalam konfigurasi dan pengkabelannya.
3.3.5 Alamat IP
Peralatan – peralatan yang terdapat dalam sistem jaringan berbasis
TCP/IP dikenali dengan alamat IP ( internet protocol ). Peralatan jaringan
sperti komputer atau alat yang lain harus mempunyai alamt IP tertentu
supaya dapat dikenali dalam jaringan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Alamat IP merupakan bilangan biner 32 bit yang terbagi menjadi
empat kelompok, sehingga masing – masing kelompok terdiri dari
bilangan biner 8 bit, sebagai contoh :
11000000.10101000.01100100.01100111
Kebanyakan orang tidak terbiasa dengan bilangan biner, dan lebih
terbiasa dengan bilangan desimal, sehingga untuk memudahkan
pembacaan, orang mengenal alamat IP di atas sebagai :
192.168.100.103
Masing – masing kelompok bit biner terdiri dari 8 bit, sehingga
bila diubah menjadi bilangan desimal, maka bilangan yang mungkin
adalah 0 ( 00000000 ) sampai 255 ( 11111111 ) yaitu ada 256 bilangan
desimal.
3.3.5.a Kelas Alamat IP
Untuk menentukan bagian jaringan dan bagian host suatu alamat IP
digunakan pengelompokan alamat IP menjadi kelas – kelas. Dalam hal ini
alamat IP dikelompokkan menjadi 5 kelas, pengelompokan ini berdasarkan
pada nilai kelompok bit paling kiri dari alamat IP.
Berikut adalah pembagian kelas alamat IP :
0xxxxxxx . -------- . -------- . -------- : kelas A
10xxxxxx . -------- . -------- . -------- : kelas B
110xxxxx . -------- . -------- . -------- : kelas C
1110xxxx . -------- . -------- . -------- : kelas D
11110xxx . -------- . -------- . -------- : kelas E
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Keterangan :
• Alamat IP kelas A adalah alamat IP yang mana bit pertama dari
kelompok 8 bit paling kiri bernilai 0.
• Alamat IP kelas B adalah alamat IP yang mana dua bit pertama
dari kelompok 8 bit paling kiri bernilai 10.
• Alamat IP kelas C adalah alamat IP yang mana tiga bit pertama
dari kelompok 8 bit paling kiri bernilai 110.
• Alamat IP kelas D adalah alamat IP yang mana empat bit pertama
dari kelompok 8 bit paling kiri bernilai 1110.
• Alamat IP kelas E adalah alamat IP yang mana lima bit pertama
dari kelompok 8 bit paling kiri bernilai 11110.
Pada alamat IP kelas A, bagian pertama ( 8 bit ) dari empat
kelompok bit merupakan bagian jaringan, sedangkan tiga bagian
berikutnya ( 24 bit ) merupakan bagian host. Karena pada alamat IP kelas
A dintentukan bahwa bit pertama adalah 0, maka nilai pada kelompok bit
pertama hanya ditentukan 7 bit mulai dari 00000000 ( desimal = 0 )
sampai 01111111 ( desimail = 127 ). Perlu diketahui bahwa alamat
jaringan 0.0.0.0 dipakai untuk default router, sedangkan alamat jaringan
127.0.0.0 dipakai untuk alamat loopback.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Dengan demikian jumlah alamat IP kelas A adalah 2 7 - 2 = 126 buah.
Karena 8 bit pertama sudah digunakan untuk menentukan alamat jaringan,
alamat IP kelas A menyisakan 24 bit untuk menentukan alamat host, maka
jumlah alamat host yang mungkin tiap jaringan adalah 2 - 2 = 16777214.
Kenapa dikurangi dua karena alamat IP x.0.0.0 sudah dipakai untuk alamat
jaringan dan alamat IP x.255.255.255 digunakan untuk alamat broadcast.
24
Pada alamat IP kelas B, bagian pertama dan kedua ( 16 bit ) dari
empat kelompok bit merupakan bagian jaringan, sedangkan dua bagian
berikutnya ( 16 bit ) merupakan bagian host. Pada alamat IP kelas B nilai
pada kelompok bit pertama hanya dintentukan oleh 6 bit karena dua bit
pertama sudah ditentukan 10, maka nilainya mulai dari 10000000 (
desimal = 128 ) sampai 10111111 ( desimal = 191 ). Jumlah alamat
jaringan yang mungkin dalam alamat IP kelas B adalah 2 = 16384.
Sedangkan alamat host yang mungkin tiap jaringan adalah 2 - 2 = 65534.
Alamat x.y.0.0 dipakai untuk alamat jaringan dan alamat IP x.y.255.255
digunakan untuk alamat broadcast.
)86( +
16
Pada alamat IP kelas C, bagian pertama, kedua, dan ketiga ( 24 bit
) dari empat kelompk bit merupakan alamat jaringan, sedangkan bagian ke
empat ( 8 bit ) merupakan bagian host. Karena alamat IP kelas C
ditentukan bahwa tiga bit pertama adalah 110, maka nila pada kelompok
bit pertama hanya ditentukan oleh 5 bit mulai 11000000 ( desimal = 192 )
sampai 11011111 ( desimal = 223 ). Jumlah alamat jaringan yang
mungkin dalam alamat Ip kelas C adalah 2 = 2097152, sedangkan )885( ++
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
alamat host yang mungkin untuk tiap jaringan adalah 2 8 - 2 = 254. alamat
IP x.y.z.0 dipakai untuk alamat jaringan dan alamat IP x.y.z.255
digunakan untuk alamat broadcast.
Kelompok alamat IP kelas D digunakan untuk multicasting,
sedangkan kelompok alamat IP kelas E dicadangkan dan belum
dialokasikan. Dalam pengertian ini, tidak diizinkan untuk memberi alamat
IP pada kartu jaringan dengan alamat IP yang berada pada alamat IP kelas
D dan kelas E. Dengan demikian tidak diizinkan untuk membuat alamat IP
dengan angka desimal yang lebih besar dari 223 pada bagian pertama.
Maka nilai yang mungkin untuk masing – masing kelas alamat IP adalah
sebagai berikut :
Kelas IP Bagian Pertama Jumlah Jaringan Jumlah Host
A 1 s/d 126 126 16777214
B 128 s/d 191 16384 65534
C 192 s/d 223 2097152 244
Tabel 3.1 Kelas Alamat IP
Alamat IP 127.x.y.z tadak dimasukkan dalam alamat IP kelas A,
karena alamat IP pada kelompok ini digunakan untuk alamat loopback.
Alamat loopback digunakan untuk mengirim paket bagi dirinya sendiri.
Ada atau tidak kartu jaringan, alamat loopback tetap ada dalam jaringan
TCP/IP.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3.3.5.b Alamat IP Privat ( Non Routed )
Dari semua alamat IP yang mungkin baik untuk kelas A, B, dan C,
ada alamat IP khusus yang disebut alamat IP privat. Alamat IP ini tidak
terhubung dengan alamat IP publik atau tidak di-routing. Alamat IP privat
digunakan membentuk jaringan yang sifatnya lokal, dalam pengertian
tidak terhubung ke jaringan publik secara langsung.
Ketentuan tentang alamat IP privat diatur dalam dokumen RFC
1918 ( Request for Comments : 1918 ). Isi drai dokumen tersebut adalah
bahwa IANA ( Internet Assigned Number Authority ) menyediakan tiga
blok alamat IP untuk alamat IP privat. Blok tersebut adalah :
Kelas IP Rentang
A 10.0.0.0 s/d 10.255.255.255
B 172.16.0.0 s/d 172.31.255.255
C 192.168.0.0 s/d 192.168.255.255
Tabel 3.2 Alamat IP Privat
3.3.6 Subnetting
Teknologi subnetting merupakan teknik memecah network menjadi
subnetwork yang lebih kecil dan hanya bisa dilakukan pada jaringan kelas
A, B, C.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Pembentukan subnetting dilakukan dengan cara meminjam satu
atau dua lebih bit pada bagian host dan memperlakukannya secara lokal
sebagai bit dari bagian jaringan.
Sebagai contoh, misal terdapat alamat jaringan kelas C :
192.168.100.0 netmask 255.255.255.0
Dapat dibagi menjadi dua subnet dengan cara meminjam satu bit dari
bagian host menjadi bit bagian jaringan. Dengan demikian netmask
berubah menjadi 255.255.255.128.
Jaringan pertama dapat diperoleh dengan cara memberi nilai 0 pada bit
yang dipinjam dari bagian host menjadi bagian jaringan.
Alamat jaringan :
192.168.100.0 = 11000000 . 10101000 . 01100100 . 00000000
Netmask :
255.255.255.128 = 11111111 . 11111111 . 11111111 . 10000000
Broadcast :
192.168.100.127 = 11000000 . 10101000 . 01100100 . 01111111
Rentang host :
192.168.100.1 s/d 192.168.100.126
Jaringan kedua dapat diperoleh dengan cara memberi nilai 1 pada bit yang
dipinjam dari bagian host menjadi bagian jaringan.
Alamat jaringan :
192.168.100.128 = 11000000 . 10101000 . 01100100 . 10000000
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Netmask :
255.255.255.128 = 11111111 . 11111111 . 11111111 . 10000000
Broadcast :
192.168.100.255 = 11000000 . 10101000 . 01100100 . 11111111
Rentang host :
192.168.100.129 s/d 192.168.100.254
Dengan cara yang sama, jaringan dapat dibagi menjadi empat
sampai delapan subnet dengan cara meminjam 2 bit ( untuk emapat subnet
) dan 3 bit ( untuk delapan subnet ) dari bagian host dan diperlakukan
secara lokal sebagai bit pada jaringan.
Sub Netmask Jaringan Broadcast Rentang Host
x.y.z.0 x.y.z.127 x.y.z.1 s/d x.y.z.126 2 255.255.255.126
x.y.z.128 x.y.z.255 x.y.z.129 s/d x.y.z.254
x.y.z.0 x.y.z.63 x.y.z.1 s/d x.y.z.62
x.y.z.64 x.y.z.127 x.y.z.65 s/d x.y.z.126
x.y.z.128 x.y.z.191 x.y.z.129 s/d x.y.z.190
4 255.255.255.192
x.y.z.192 x.y.z.255 x.y.z.193 s/d x.y.z.254
x.y.z.0 x.y.z.31 x.y.z.1 s/d x.y.z.30
x.y.z.32 x.y.z.63 x.y.z.33 s/d x.y.z.62
x.y.z.64 x.y.z.95 x.y.z.65 s/d x.y.z.94
x.y.z.96 x.y.z.127 x.y.z.97 s/d x.y.z.126
x.y.z.128 x.y.z.159 x.y.z.129 s/d x.y.z.158
8 255.255.255.224
x.y.z.160 x.y.z.191 x.y.z.161 s/d x.y.z.190
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
x.y.z.192 x.y.z.223 x.y.z.193 s/d x.y.z.222
x.y.z.224 x.y.z.255 x.y.z.225 s/d x.y.z.254
Tabel 3.3 Pembagian Subnet
3.3.7 Router
Router atau biasa disebut default gateway merupakan pintu masuk
suatu jaringan ke dalam jaringan di luar jaringan tersebut. Misalnya jika
kita mempunyai dua buah bentuk jaringan LAN dan jaringan yang pertama
semua menggunakan IP kelas A dan satunya dengan IP kelas B, tentunya
agar IP kelas A dan IP kelas B dapat berkomunikasi maka diperlukan
router untuk menghubungkan jaringan tersebut.
Router ada beberapa macam, ada yang disebut router dedicated (
router pabrik ), yaitu hardware yang dibuat khusus sebagai router, misal
cisco, 3com, Bynetwork dan sebagainya. Sedangkan yang router yang lain
dalam bentuk komputer yang disebut PC router yaitu komputer yang
memiliki lebih dari satu network interface card, dan komputer tersebut
mampu mem-forward paket IP, serta menjalankan software untuk
mengatur routing data. Program yang dibuat untuk pengaturan routing
paket antara lain GateD, Routed, dan sebagainya..
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
router
Switch/hubSwitch/hub
Eth0 = 192.168.59.1 Eth1 = 192.168.100.254 Eth2 = 192.168.200.154
eth0
192.168.50.254 eth2
eth1
Jaringan 192.168.100.0/24 Jaringan 192.168.200.0/24
Gambar 3.21 Jaringan Komputer dengan Router
Pada jaringan di atas terdapat dua alamat jaringan yaitu alamat
jaringan 192.168.100.0 netmask 255.255.255.0 dan alamat jaringan
192.168.200.0 netmask 255.255.255.0. Secara fisik jaringan tersebut
dilayani oleh switch yang berbeda, dan dihubungkan dengan satu router.
Jika komputer pada jaringan 192.168.100.0/24 akan berkomunikasi
dengan komputer pada jaringan 192.168.200.0/24 maka harus melawati
router, dan juga sebaliknya.
Masing – masing jaringan mempunyai alamat gateway yang
berbeda. Jaringan 192.168.100.0/24 mempunyai alamat gateway pada IP
192.168.100.254 yang merupakan kartu jaringan eth1 pada router.
Jaringan 192.168.200.0/24 mempunyai alamat gateway pada IP
192.168.200.254 yang merupakan kartu jaringan eth2 pada router. Router
sendiri terhubung pada alamat gateway 192.168.50.254 melalui kartu
jaringan eth0 yang punya alamat IP 192.168.50.1.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gateway ini merupakan default gateway pada masing – masing jaringan.
3.3.8 Firewall
Firewall merupakan alat yang digunakan untuk melindungi
jaringan privat dari jaringan publik ( internet ). Firewall melindungi
jaringan privat dengan cara mengendalikan aliran paket yang melewatinya,
firewall dirancang untuk mengendalikan aliran paket berdasarkan pada
asal, tujuan, port, dan informasi tipe paket yang terdapat pada masing –
masing paket. Firewall berisi sederet aturan yang digunakan untuk
menentukan nasib paket data yang datang atau pergi dari firewall menurut
kriteria dan parameter tertentu.
Semua paket yang diperiksa firewall akan melalui sederetan tabel
dalam prosesnya. Pada firewall terjadi beberapa proses yang
memungkinkan firewall dapat melindungi jaringan, yaitu :
Modifikasi header paket.
Translai alamat jaringan.
Filter paket.
Modifikasi header paket digunakan untuk memodifikasi kualitas
layanan bit paket TCP sebelum terjadi routing. Translasi alamat jaringan
yang terjadi pada firewall adalah antara jaringan privat dan jaringan
publik.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Translasi yang terjadi dapat berupa one to one yang mana satu alamat IP
privat dipetakan ke satu alamat IP publik, serta translasi many to one yaitu
beberapa alamat IP privat dipetakan ke satu alamat IP publik.
IN
Forward filter
OUT
Routing
Postrouting nat
SNAT
Prerouting nat
DNATPrerouting
mangle
Input filter
Gambar 3.22 Proses Pada Paket Yang Melewati Firewall
Output mangle
Proses lokal
OUT Routing
Output filter
Output nat DNAT
Ketika paket datang dari suatu jaringan masuk pada firewall
melalui kartu jaringan, pertama kali paket akan diperiksa oleh aturan rantai
prerouting pada tabel mangle, selanjutnya paket diperiksa aturan rantai
prerouting pada tabel nat, apakah paket memerlukan DNAT, kemudian
paket memerlukan routing.
Jika tujuan paket adalah jaringan lain, maka paket akan difilter oleh
aturan rantai forward pada tabel filter, jika perlu paket akan diperiksa oleh
aturan rantai postrouting pda tabel nat, apakah paket memerlukan SNAT.
Jika tujuan paket adalah firewall, maka paket akan difilter oleh
aturan rantai INPUT pada tabel filter, selanjutnya paket akan mengalami
proses lokal. Proses lokal yang terjadi pada firewall dpat berupa
pengiriman paket kembali. Paket ini akan diperiksa oleh aturan rantai
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
OUTPUT pada tabel mangle, selanjutnya diperiksa oleh aturan rantai
OUTPUT pada tabel nat apakah memerlukan DNAT. Sebelum routing,
paket akan difilter oleh aturan rantai OUTPUT pada tabel filter.
3.3.9 Konfigurasi Jaringan
Setelah dibahas beberapa kebutuhan dan perlengkapan dalam
membangun sebuah jaringan, selanjutnya akan dicoba mengkonfigurasi
atau menyusun sebuah jaringan sederhana yang dalam hal ini bisa
digunakan sebagai proses pengiriman e-mail yang mana merupakan pokok
bahasan dari penulisan TA ini.
Jaringan yang akan dibangun akan menggunakan server berbasis
linux sedangkan komputer client menggunakan sistem operasi windows
XP, karena jaringan ini bersifat sederhana maka hanya akan menggunakan
sebuah server yang mengelola semua service internet, yaitu router,
firewall, DNS server, mail server, web server, database server, dan proxy
server.
Berikut adalah contoh desain jaringan komputer yang menggunakan
sebuah server Linux.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
hub
Client 1 winXP
192.168.1.2 255.255.255.240
IP Address eth0 202.131.95.206 Netmask : 255.255.255.240 IP Address eth1 202.131.95.193 Netmask : 255.255.255.240 IP Lokal eth2 (Masq ) 192.168.1.1 Netmask ( masq ) : 255.255.255.240
Server linux yang melayani semua service internet
Internet
Client 3 winXP
192.168.1.4 255.255.255.240
Client 2 winXP
192.168.1.3 255.255.255.240
Gambar 3.23 Jaringan dengan Satu Server Linux
Untuk Melayani semua Service Internet
Penjelasan :
Jaringan terdiri dari sebuah server linux yang melayani semua service
internet, tiga buah komputer client dengan system operasi windows
XP.
Sebuah hub digunakan sebagai consentrator.
Diumpamakan jaringan tersebut mendapat alokasi IP address dari ISP
dimulai dari 202.131.95.192 sampai 202.131.95.207 ( IP address
202.131.95.192 dan 202.131.95.207 tidak boleh dipakai karena
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
merupakan nomor network jaringan dan IP address broadcast jaringan
).
Untuk IP address komputer client cukup diberikan IP address lokal (
192.168.1.0/24 ) dengan pertimbangan hanya digunakan untuk
browsing, membaca e-mail, dan sebagainya.
Karena server ini juga merangkap sebagai router, maka dipasang tiga
buah ethernet card, ethernet card pertama ( eth0 ) diberi IP address
202.131.95.206 dengan netmask 255.255.255.240, ethernet card kedua
( eth1 ) diberi IP address 202.131.95.193 dengan netmask
255.255.255.240, sedangkan ethernet card ketiga ( eth2 ) diberi IP
address lokal 192.168.1.1.
Pada jaringan ini diterapkan IP masquerading untuk IP address lokal
192.168.1.0/24. Hal ini dilakukan supaya komputer client yang
menggunakan IP lokal dapat menjalankan aplikasi internet, seperti
browsing, e-mail dan aplikasi yang lain dengan cara menopeng (
masquerading ) IP lokal komputer client tersebut dengan IP address
internet yang dimiliki oleh router.
3.3.10 Server DNS
Domain Name System ( DNS ) merupakan sistem berbentuk
database terdistribusi yang akan memetakan / mengkonversikan nama host
/ mesin / domain ke alamat IP (Internet Protocol) dan sebaliknya dari
alamat IP ke nama host yang disebut dengan reverse-mapping. DNS sangat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
berguna sekali dalam jaringan terutama Internet, sistem ini akan
memetakan nama mesin misal jellyfish.co.id ke alamat IP misal
202.123.45.6 selain itu juga penggunaannya sangat luas misal, untuk
routing e-mail, telnet, ftp, web, dan lain-lain.
3.3.10.a Cara Kerja DNS
Analogi sistem IP mirip dengan telepon, setiap pemilik telepon
harus memiliki nomor yang unik. Untuk menelepon seseorang haruslah
kita mengetahui nomor telepon yang dituju.
Demikian juga dalam internet, untuk mengunjungi host atau server
tertentu kita harus mengetahui IP address dari host / server tersebut.
Tetapi manusia memiliki kesulitan untuk menghafal deretan angka IP
address suatu host / server, karena itulah diciptakan sistem DNS yang
dapat membantu manusia untuk mengingat IP address suatu host / server
dengan memetakan nama host / server ke IP address host / server tersebut.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1
Web browser Server DNS lokal
2 5
4
3
cache
Root DNS server
Server DNS
Jellyfish.co.id
Gambar 3.24 Proses DNS Keterangan :
1. Browser mengontak server DNS lokal ( terletak pada jaringan ISP )
untuk mencari IP address www.jellyfish.co.id.
2. Server DNS lokal kemudian mencari IP address pada data cache yang
dimilikinya.
3. Jika server DNS lokal tersebut belum pernah menyimpan IP address
www.jellyfish.co.id pada data cache-nya, maka server DNS lokal
tersebut akan mengontak server DNS lainnya ( root DNS server )
untuk mengetahui IP address dari server DNS yang mengelola domain
jellyfish.co.id.
4. Jika domain jellyfish.co.id didapatkan, maka root DNS server akan
memeberi tahu IP address server DNS yang merupakan DNS
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
authoruty dari domain jellyfish.co.id. kemudian server DNS lokal akan
mengontak server DNS yang mengelola domain jellyfish.co.id tersebut
untuk menanyakan IP address dari www.jellyfish.co.id.
5. Karena server www.jellyfish.co.id benar didapatkan, maka server DNS
jellyfish.co.id akan memberitahu IP address dari www.jellyfish.co.id
tersebut. Server DNS lokal kemudian akan memberitahu IP address
www.jellyfish.co.id tersebut kepada web browser yang digunakan dan
IP address tersebut akan disimpan oleh server DNS lokal pada data
cache-nya untuk pemakaian diwaktu yang lain.
3.3.10.b Konfigurasi DNS
File konfigurasi utama BIND adalah file named yaitu
/etc/named.conf. Saat program BIND mulai berjalan, maka server akan
membaca file /etc/named.conf untuk mengetahui bagaimana server DNS
tersebut dikonfigurasikan.
A. Konfigurasi file /etc/named.conf
File named.conf merupakan file utama dan yang pertama kali di-
load oleh sistem yang akan digunakan oleh named ( bind ). Dalam file
tersebut berisi konfigurasi dan option – option yang digunakan oleh bind
tersebut.
Format file /etc/named.conf :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Option Directory
Berisi informasi letak direktori yang menyimpan file domain atau
zone-file.
options { directory "/var/named"; Option di atas merupakan path ke direktori dimana file – file
konfigurasi dari bind diletakkan. Secara default path ke derektori
tersebut adalah /var/named.
Pengaturan zone domain
Untuk menjalankan server DNS yang mengelola domain internet,
maka harus mengkonfigurasi zone domain pada file /etc/named.conf.
Terdapat tiga zone statement yang sering digunakan, yaitu :
Zone “nama.domain” in { type master; file “nama_file_database_domain”; }; Zone “nama.domain” in { type slave; master { ip_addr ; }; }; Zone “.” in { type hint; file “named.ca”; };
Statement pertama digunakan untuk master zone, sebagai contoh :
zone "jellyfish.co.id" IN { type master; file "db.jellyfish.co.id"; }; Pada contoh di atas, server DNS dikonfigurasi sebagai primary name
server untuk domain jellyfish.co.id.sedang file db.jellyfish.co.id adalah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
nama file yang merupakan zone-file untuk domain jellyfish.co.id
tersebut.
Jika DNS server tersebut berfungsi sebagai slave DNS, maka perlu
melakukan pengubahan sebagi berikut :
zone "jellyfish.co.id" IN { type slave; master {202.123.456.789}; }; Pada konfigurasi diatas, primary name server adalah server DNS
dengan IP address 202.123.456.789, saat berjalan, server ini akan
meminta zone-file dari primary name server dan kemudian menyimpan
file tersebut dengan nama jellyfish.co.id.
Zone statement yang lain adalah zone yang digunkan untuk
menghubungi sekumpulan root name server. Saat server berjalan,
server akan menggunakan daftar ini ( hint ) untuk menemukan root
name server dalam melakukan catching terhdap suatu nama host.
Konfigurasinya sebagai berikut :
zone "." IN { type hint; file "named.ca"; };
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Konfigurasi lengkap dari file named.conf :
// generated by named-bootconf.pl options { directory "/var/named"; /* * If there is a firewall between you and nameservers you want * to talk to, you might need to uncomment the query-source * directive below. Previous versions of BIND always asked * questions using port 53, but BIND 8.1 uses an unprivileged * port by default. */ // query-source address * port 53; }; // // a caching only nameserver config // controls { inet 127.0.0.1 allow { localhost; } keys { rndckey; }; }; zone "." IN { type hint; file "named.ca"; }; zone "localhost" IN { type master; file "localhost.zone"; allow-update { none; }; }; zone "0.0.127.in-addr.arpa" IN { type master; file "named.local"; allow-update { none; }; }; zone "jellyfish.co.id" IN { type master; file "db.jellyfish.co.id"; }; zone "10.10.192.in-addr.arpa" IN { type master; file "db.192.10.10";
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
}; include "/etc/rndc.key";
B. Konfigurasi file zone
File zone adalah file yang berisi informasi tentang domain yang
dikelola server DNS, seperti IP address, nama alias dari suatu host /
domain, nama server DNS yang bertanggung jawab terhadap domain
tersebut, dan yang lainnya.
SOA ( Start Of Authority ) : digunakan untuk mendefinisikan awal
dari suatu zone.
@ IN SOA name_server email_admin ( Serial_number ; Serial Refresh_nuber ; Refresh Retry_number ; Retry Expire_number ; Expire Minimum_number ) ; Minimum Name_server mendeklarasikan hostname yang menjadi primary name
server untuk suatu domain.
Email_admin mendeklarasikan email administrator yang bertanggung
jawab terhadap domain tersebut.
Serial_number merupkan nomor seri dari zone file.
Refresh_number mendeklarasikan selang waktu ( dalam detik ) yang
diperlukan oleh secondary name server untuk memeriksa perubahan zone-
file pada primary name server.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Retry_number mendeklarasikan berapa lama ( dalam detik ) secondary
name server menunggu untuk mengulang pengecekan terhadap primary
name server apabila primary name server tidak memberi respon pada saat
proses refresh.
Expire_number mendeklarasikan berapa lama ( dalam detik ) zone-file
dipertahankan pada secondary name server apabila secondary name server
tidak dapat melakukan zone refresh.
Minimum_number mendeklaraikan nilai default time to live ( TTL ) untuk
semua resource record pada zone file.
NS ( Name Server ) : digunakan untuk mendeklarasikan authoritative
name server yang mengelola suatu domain. authoritative name server
sebaiknya lebih dari satu, supaya jika primary name server tidak bisa
diakses, masih ada secondary name server yang dapat menggantikan
sementara.
A ( Address ) : digunakan untuk memetakan suatu nama host ke suatu
IP address.
PTR ( Domain Name POINTER ) : digunakan untuk memetakan IP
address ke nama host.
CNAME ( Canonical name ) : untuk mendeklarasikan sebuah alias
atau nickname dari suatu host.
MX ( Mail Exchange ) : untuk mengarahkan e-mail untuk suatu host
ataupun domain ke host yang berfungsi sebagai mail server.
Konfigurasi lengkap dari file /var/named/db.jellyfish.co.id :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
$TTL 86400 @ IN SOA iwan.jellyfish.co.id. admin.jellyfish.co.id ( 200607271334 ; Serial 86400 ; Refresh (1 day) 21600 ; Retry (6 hours) 36000 ; Expire (10 hours) 3600 ) ; Minimum (1 hour) IN NS iwan.jellyfish.co.id. IN NS nawi.jellyfish.co.id. IN MX 10 mx1.jellyfish.co.id. IN MX 20 mx2.jellyfish.co.id. iwan IN A 202.123.100.194 nawi IN A 202.123.100.195 mx1 IN A 202.123.100.196 mx2 IN A 202.123.100.18 mail IN CNAME mx1.jellyfish.co.id. C. Konfigurasi file reverse database
File ini berfungsi untuk memetakan nomor IP ke alamat host. Jadi
hal ini merupakan kebalikan dari file database domain.
Berikut isi file /var/named/db.192.10.10 :
$TTL 86400 @ IN SOA iwan.jellyfish.co.id. nawi.jellyfish.co.id ( 200607271334 ; Serial 86400 ; Refresh (1 day) 21600 ; Retry (6 hours) 36000 ; Expire (10 hours) 3600 ) ; Minimum (1 hour) IN NS iwan.jellyfish.co.id. IN NS nawi.jellyfish.co.id. IN MX 10 mx1.jellyfish.co.id. IN MX 20 mx2.jellyfish.co.id. 202.123.100.194 IN PTR iwan 202.123.100.195 IN PTR nawi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Setelah semua proses komfigurasi di atas selesai, selanjutnya
periksa DNS server yang dipasang apakah sudah berjalan dengan baik
dengan perintah
# ping iwan.jellyfish.co.id
Jika benar maka akan muncul tampilan berikut :
PING jellyfish.co.id (202.123.100.194) 56(84) bytes of data. 64 bytes from jellyfish.co.id (202.123.100.194): icmp_seq=0 ttl=64 time=0.064 ms 64 bytes from jellyfish.co.id (202.123.100.194): icmp_seq=1 ttl=64 time=0.063 ms --- jellyfish.co.id ping statistics --- 48 packets transmitted, 48 received, 0% packet loss, time 47008ms rtt min/avg/max/mdev = 0.058/0.062/0.067/0.005 ms, pipe 2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB IV
PENUTUP
4.1 Kesimpulan
Beberapa kesimpulan yang dapat diambil dari pembuatan mail server
berbasis web ini adalah :
1. Sistem yang dibangun adalah berbasis web, sehingga untuk
menggunakannya, cukup hanya dengan web browser.
2. Sistem ini sudah diuji coba dan dapat bejalan dengan baik untuk
mengelola e-mail ( membaca, mengirim, dan menghapus ).
3. Sistem ini memberikan fasilitas dan kemudahan bagi administrator untuk
mengatur ( manajemen ) user.
3.2 Saran
Beberapa saran yang dapat digunakan untuk pengembangan mail server ini
adalah :
1. Filtering alamat e-mail.
Fasilitas ini untuk mencegah masuknya alamat – alamat e-mail
yang tidak diinginkan, seperti spam.
2. Anti virus.
Dalam sistem ini perlu adanya anti virus untuk mencegah virus –
virus komputer yang dapat merusak pesan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR PUSTAKA
Albertus Dwiyoga W, 2005, Membangun Mail Server Andal dengan Fedora dan
Qmail. Jakarta : Elek Media Komputindo.
Choirul Amri, 2003, Mengelola Mail Server dengan MdaemonI. Jakarta : Elek
Media Komputindo.
Reza Iskandar Ahmad, 2002, Mail Server dengan Qmail, Virtual Domain dengan
Vpopmail.
Samuel Prakoso, Tomy, Onno W. Putro, 2003, Panduan Praktis Menggunakan E-
mail Server Qmail. Jakarta : Elek Media Komputindo.
Setiawan Suryatmoko, 2003, Membangun Server Email Berbasis Web. Jakarta :
Elek Media Komputindo.
Tommi Poltak Mario, 2006, Tuntunan Praktis Menguasai Jaringan Komputer.
Yogyakarta : Ardana Media.
Wagito, 2005, Jaringan Komputer Teori dan Implementasi Berbasis Linux.
Yogyakarta : Gava Media.
www.ilmukomputer.com
www.lifewithqmail.org
www.courier-mta.org
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L A M P I R A N
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
[root@jelly iwan]# vi /var/qmail/bin/qmailctl
#!/bin/sh # For Red Hat chkconfig # chkconfig: - 80 30 # description: the qmail MTA PATH=/var/qmail/bin:/bin:/usr/bin:/usr/local/bin:/usr/local/sbin export PATH QMAILDUID=`id -u qmaild` NOFILESGID=`id -g qmaild` case "$1" in start) echo "Starting qmail" if svok /service/qmail-send ; then svc -u /service/qmail-send else echo qmail-send supervise not running fi if svok /service/qmail-smtpd ; then svc -u /service/qmail-smtpd else echo qmail-smtpd supervise not running fi if svok /service/qmail-pop3d ; then svc -u /service/qmail-pop3d else echo qmail-pop3d supervise not running fi if [ -d /var/lock/subsys ]; then touch /var/lock/subsys/qmail fi ;; stop) echo "Stopping qmail..." echo " qmail-smtpd" svc -d /service/qmail-smtpd echo " qmail-pop3d" svc -d /service/qmail-pop3d echo " qmail-send" svc -d /service/qmail-send if [ -f /var/lock/subsys/qmail ]; then
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
rm /var/lock/subsys/qmail fi ;; stat) svstat /service/qmail-send svstat /service/qmail-send/log svstat /service/qmail-smtpd svstat /service/qmail-smtpd/log svstat /service/qmail-pop3d svstat /service/qmail-pop3d/log qmail-qstat ;; doqueue|alrm|flush) echo "Flushing timeout table and sending ALRM signal to qmail-send." /var/qmail/bin/qmail-tcpok svc -a /service/qmail-send ;; queue) qmail-qstat qmail-qread ;; reload|hup) echo "Sending HUP signal to qmail-send." svc -h /service/qmail-send ;; pause) echo "Pausing qmail-send" svc -p /service/qmail-send echo "Pausing qmail-smtpd" svc -p /service/qmail-smtpd echo "Pausing qmail-pop3d" svc -p /service/qmail-pop3d ;; cont) echo "Continuing qmail-send" svc -c /service/qmail-send echo "Continuing qmail-smtpd" svc -c /service/qmail-smtpd echo "Continuing qmail-pop3d" svc -c /service/qmail-pop3d ;; restart) echo "Restarting qmail:" echo "* Stopping qmail-smtpd." svc -d /service/qmail-smtpd echo "* Stopping qmail-pop3d."
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
svc -d /service/qmail-pop3d echo "* Sending qmail-send SIGTERM and restarting." svc -t /service/qmail-send echo "* Restarting qmail-smtpd." svc -u /service/qmail-smtpd echo "* Restarting qmail-pop3d." svc -u /service/qmail-pop3d ;; cdb) tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp chmod 644 /etc/tcp.smtp.cdb echo "Reloaded /etc/tcp.smtp.cdb" ;; help) cat <<HELP stop -- stops mail service (smtp connections refused, nothing goes out) start -- starts mail service (smtp connection accepted, mail can go out) pause -- temporarily stops mail service (connections accepted, nothing leaves) cont -- continues paused mail service stat -- displays status of mail service cdb -- rebuild the tcpserver cdb file for smtp restart -- stops and restarts smtp, sends qmail-send a TERM & restarts it doqueue -- schedules queued messages for immediate delivery reload -- sends qmail-send HUP, rereading locals and virtualdomains queue -- shows status of queue alrm -- same as doqueue flush -- same as doqueue hup -- same as reload HELP ;; *) echo "Usage: $0 {start|stop|restart|doqueue|flush|reload|stat|pause|cont|cdb|queue|help}" exit 1 ;; esac exit 0 [root@jelly iwan]# vi /var/qmail/supervise/qmail-send/run #!/bin/sh exec /var/qmail/rc
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
[root@jelly iwan]# vi /var/qmail/supervise/qmail-send/log/run #!/bin/sh exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t /var/log/qmail [root@jelly iwan]# vi /var/qmail/supervise/qmail-smtpd/run #!/bin/sh QMAILDUID=`id -u qmaild` NOFILESGID=`id -g qmaild` MAXSMTPD=`cat /var/qmail/control/concurrencyincoming` LOCAL=`head -1 /var/qmail/control/me` if [ -z "$QMAILDUID" -o -z "$NOFILESGID" -o -z "$MAXSMTPD" -o -z "$LOCAL" ]; then echo QMAILDUID, NOFILESGID, MAXSMTPD, or LOCAL is unset in echo /var/qmail/supervise/qmail-smtpd/run exit 1 fi if [ ! -f /var/qmail/control/rcpthosts ]; then echo "No /var/qmail/control/rcpthosts!" echo "Refusing to start SMTP listener because it'll create an open relay" exit 1 fi exec /usr/local/bin/softlimit -m 2000000 \ /usr/local/bin/tcpserver -v -R -l "$LOCAL" -x /etc/tcp.smtp.cdb -c "$MAXSMTPD" \ -u "$QMAILDUID" -g "$NOFILESGID" 0 smtp /var/qmail/bin/qmail-smtpd 2>&1 [root@jelly iwan]# vi /var/qmail/supervise/qmail-smtpd/log/run #!/bin/sh exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t /var/log/qmail/smtpd [root@jelly iwan]# vi /var/qmail/supervise/qmail-pop3d/run #!/bin/sh exec /usr/local/bin/softlimit -m 2000000 \ /usr/local/bin/tcpserver -v -R -H -l 0 0 110 /var/qmail/bin/qmail-popup \ mail.jellyfish.co.id /home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir 2>&1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
[root@jelly iwan]# vi /var/qmail/supervise/qmail-pop3d/log/run #!/bin/sh exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t s1048576 /var/log/qmail/pop3d [root@jelly iwan]# vi /var/qmail/supervise/qmail-pop3ds/run #!/bin/sh PMAILUID=`id -u vpopmail` VPOPMAILGID=`id -g vpopmail` exec /usr/local/bin/tcpserver -l 0 -R -H -v \ -u"$VPOPMAILUID" -g"$VPOPMAILGID" 0 995 \ /usr/sbin/stunnel -f -p /var/qmail/control/servercert.pem\ -l /var/qmail/bin/qmail-popup -- qmail-popup mail.jellyfish.co.id \ /home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir 2>&1 [root@jelly iwan]# vi /var/qmail/supervise/qmail-pop3ds/log/run #!/bin/sh exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t s1048576 /var/log/qmail/pop3ds
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI