KONFIGURASI RIP di ROUTER

Posted on Senin, 22 Desember 2008 by noNa_cRaZy

Gunakan perintah :

debian:/# mc
Kemudian masuk direktory /etc/quagga/ .
Lalu tekan Tab. dan masuk direktory /usr/share/doc/quagga/examples.
Dan copykan zebra.c~.sample dan ripd.co~.sample di direktory /etc/quagga/ dengan cara tekan F5 lalu enter.

Setelah itu, aktifkan daemons ;
Tekan F4, lalu ganti tulisan=no pada zebra dan ripd dengan tulisan=yes.
Lalu tekan F2 untuk menyimpan.
Kemudian keluar dari mc , tekan F10
Masuk pada root anda.
Lalu masuk direktori /etc/quagga/. :
copy zebra.conf dan ripd.conf dengan perintah :
debian:/etc/quaqqa#cp zebra.conf.sample zebra.conf
debian:/etc/quagga#cp ripd.conf.sample ripd.conf
Lalu restart dengan perintah :
debian:/# /etc/init.d/quagga restart (tunggu beberapa menit)
Kemudian konfigurasikan router dengan protokol RIP :
$ telnet localhost 2602
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.localdomain.
Escape character is '^]'.

Hello, this is zebra (version 0.95a).
Copyright 1996-2004 Kunihiro Ishiguro.

User Access Verification

Password:
ripd> enable
Password:
ripd#
Mendistribusikan network-network yang dimiliki router. Pada router saya, ada 2 interface, maka saya hanya mendefinisikan 2 network yang terhubung dengan router saya. Ketikkan perintah configure teminal, kemudian router rip
ripd# conf t
ripd(config)# router ripd
ripd(config-router)#
mendistribusikan network, ketikkan perintah network 192.168.20.0/24 yang kita peroleh dan ketikan perintah network 192.168.23.0/24 untuk kita berikan pada router lain
ripd(config-router)# network 192.168.20.0/24
ripd(config-router)# network 192.168.23.0/24
ripd(config-router)# tekan ctrl+z
ripdd#
Untuk melihat konfigurasi yang telah dibuat ketikkan show running-config
ripd# show running-config

Simpan konfigurasi rip yang telah dibuat dengan perintah write memory atau copy running-config startup-config
ripd# copy running-config startup-config
Silahkan dicoba
Hikz ..



Instalasi & Konfigurasi Quagga (Routing Dynamic)

Posted on by noNa_cRaZy

Untuk menggunakan Quagga,yang diperlukan adalah install software-nya dengan :
#apt-get update # jika belum update
#apt-get install quagga

Kemudian konfigurasi akan berada pada /etc/quagga, dan edit file debian.conf dan daemons.conf.
1. enable kan daemon zebra dulu dan buat file konfigurasi kosong:
zebra=yes
bgpd=no
ospfd=no
ospf6d=no
ripd=no
ripngd=no
isisd=no
buat file kosong dan memberikan password dengan perintah :
#touch /etc/quagga/zebra.conf
#echo “password password” > /etc/quagga/zebra.conf
2. restart quagga dengan /etc/init.d/quagga restart, cek proses dengan: ps ax pastikan deamon zebra ada.
3. lakukan konfigurasi interface eth0, lo sit dll dengan zebra :
#telnet localhost zebra
masukan password
Perintah konfigurasi quagga mirip dengan perintah konfigurasi Cisco IOS kalau Anda sudah familiar dengan Cisco.
Setelah masuk ke quagga mari kita konfigurasi interface :
1. masuk ke terminal konfigurasi
#ena (enable konfigurasi)
#conf t # kalau lupa pake ? sebagai help-nya.
#hostname aing (nama hostname)
#password ena maneh (enable password)
#int eth0
#link-detect (kalau jalan atau nggak koneksi)
# ip addr 192.168.75.1/24 (set alamat ip)
#end
#write
#sh run (untuk melihat konfigurasi)
Oc, Anda sudah bisa mengkonfigurasi interface dengan zebra, jadi mengganti konfigurasi dengan perintah
#ifconfig eth0 192.168.75.1 netmask 255.255.255.0
2. Routing Statis
#conf t
#ip route 10.0.0.0/8 192.168.75.254 ( route ke 10.0.0.0/8 gateway 192.168.75.254
Oke anda bisa melakukan routing statik dengan zebra, mengganti perintah
#route add -net 10.0.0.0/8 gw 192.168.75.254
Selanjutnya karena quagga merupakan routing daemon dengan OSPF, RIP, BGP dll maka saatnya melakukan routing dinamis. Contoh sederhana akan menggunakan OSPF untuk routing pada INHERENT kami. Kami mendapatkan IP address inherent 167.205.132.27/29 (lupa lagi prefik networknya) dan alamat IP publik kami adalah 222.124.204.192/27 (telkom astinet nih). Kemudian local node terdekat adalah ITB mengalokasikan kami pada OSPF area 10.
Konfigurasinya :
1. Nyalakan daemon OSPF /etc/quagga/daemons.conf
zebra=yes
bgpd=no
ospfd=yes
ospf6d=no
ripd=no
ripngd=no
isisd=no
2. konfigurasi ospf
#telnet localhost ospf
set password dan hostname, sama spt di atas
#conf t
#router ospf
#network 167.205.132.0 area 10 (nanti di cek lagi perintahnya)
#redistribute connected (lupa lagi perintahnya)
oke , Selamat mencoba ....



Mengkonfigurasi Router Routing Statik di Linux

Posted on Minggu, 21 Desember 2008 by noNa_cRaZy

Router adalah alat yang dapat menghubungkan dua atau lebih jaringan komputer yang berbeda,

merupakan sebuah device yang berfungsi untuk meneruskan paket-paket dari sebuah network ke network yang lainnya (baik LAN ke LAN atau LAN ke WAN)

Router routing statik menjadi pilihan yang tepat untuk jaringan yang kecil, kelebihannya adalah cara konfigurasinya cukup mudah

Di bawah terdapat jaringan kecil dengan semua subnetmasknya 255.255.255.128 untuk memudahkan, sehingga tiap jaringan dapat menampung 126 komputer. Disini kita akan melibatkan 2 OS windows dan linux. Kita akan mempelajari setting routing di linux.kita akan menggunakan setting network dibawah :

misalkan Router-1 [ 172.17.63.25 ] adalah router dengan OS windows [ aplikasi router : winroute lite x.x ], memiliki default gateway 172.17.63.1 dan telah dapat meneruskan paket IP, cara setting winroute tidak dijelaskan di sini, kita hanya akan menambahkan entry routing saja.

Router-2 [ 192.168.9.1 ] adalah router dengan OS Linux , memiliki default gateway 172.17.63.25, kita akan mempelajari cara setting router di komputer ini yaitu :

Router-2 memiliki 2 LAN Card, LAN Card-1 memiliki IP : 192.168.10.3 [ untuk berhubungan dengan jaringan 192.168.10.0 ] dan LAN Card-2 memiliki IP : 192.168.9.1 [ untuk berhubungan dengan jaringan 192.168.9.0 ] .
Router-2 memiliki default Gateway 192.168.10.1 yaitu Router-1

SETTING ifconfig :
/sbin/ifconfig netmask

untuk LAN Card-1 :
/sbin/ifconfig eth0 192.168.10.3 netmask 255.255.255.128
untuk LAN Card-1 :
/sbin/ifconfig eth0 192.168.9.1 netmask 255.255.255.128

SETTING route:
Menambahkan entry default gateway ke 192.168.10.1 :
route add default gw 192.168.10.1

Untuk menjadikan mesin Linux mampu berjalan sebagai router atau penerus paket IP, maka aktifkan option kernel untuk IP Forward tersebut dengan cara :
pada RH 6.x tambahkan/pastikan baris berikut pada file /etc/sysconfig/network
FORWARD_IPV4=”yes”

pada RH 7.x tambahkan/pastikan baris berikut pada file /etc/sysctl.conf
net.ipv4.conf.default.rp_filter=1

konfigurasi option kernel untuk distribusi versi barunya / yang lain tidak jauh beda dengan di atas.

** Pada Komputer Router-1 [ Windows ] kita harus menambahkan entry jaringan 192.168.9.0 tujuannya agar paket IP tidak tersesat :

route ADD MASK

route ADD 192.168.10.0 MASK 255.255.255.128 192.168.10.1
route ADD 192.168.9.0 MASK 255.255.255.128 192.168.9.1

Uji Coba:

compy-5 [ linux ] & compy-6 [ windows ] setting default gatewaynya adalah : 192.168.9.1

compy-2 & compy-4 setting default gatewaynya adalah : 192.168.10.1

kita lakukan perintah ping dari compy-5 / compy-6 ke router-2 [192.168.9.1] , jika sukses baru ping ke router-1 [192.168.10.1] , jika sukses lagi, masih dari compy-5 & compy-6 lakukan perintah ping ke compy-2 / compy-4.

Chek LAgi jika terjadi suatu kesalahan.




Pengertian FTP

Posted on by noNa_cRaZy

File Transfer Protokol (FTP) adalah suatu protokol yang berfungsi untuk tukar-menukar file dalam suatu network yang mensupport TCP/IP protokol. Dua hal penting yang ada dalam FTP adalah FTP server dan FTP Client. FTP server menjalankan software yang digunakan untuk tukar menukar file, yang selalu siap memberian layanan FTP apabila mendapat request dari FTP client. FTP client adalah komputer yang merequest koneksi ke FTP server untuk tujuan tukar menukar file (mengupload atau mendownload file).Tujuan FTP server adalah sebagai berikut :

1. Untuk men-sharing data.
2. Untuk menyediakan indirect atau implicit remote computer.
3. Untuk menyediakan teempat penyimpanan bagi user.
4. Untuk menyediakan transfer data yang reliable dan efisien.

FTP sebenarnya cara yang tidak aman untuk mentransfer file karena file tersebut ditransfer tanpa melalui enkripsi terlebih dahulu tetapi melalui clear text. Mode text yang dipakai untuk transfer data adalah format ASCII atau format Binary. Secara default, ftp menggunakan mode ASCII untuk transfer data. Karena pengirimannya tanpa enkripsi, maka username, password, data yang ditransfer, maupun perintah yang dikirim dapat di sniffing oleh orang dengan menggunakan protocol analyzer (Sniffer). Solusi yang digunakan adalah dengan menggunakan SFTP (SSH FTP) yaitu FTP yang berbasis pada SSH atau menggunakan FTPS (FTP over SSL) sehingga data yang dikirim terlebih dahulu dienkripsi (dikodekan).

FTP biasanya menggunakan dua buah port yaitu port 20 dan 21 dan berjalan exclusively melalui TCP. FTP server Listen pada port 21 untuk incoming connection dari FTP client. Biasanya port 21 untuk command port dan port 20 untuk data port. Pada FTP server, terdapat 2 mode koneksi yaitu aktif mode dan pasif mode.

untuk penggunaan ftp itu kita bisa download sendiri softwarenya atau langsung saja melalui comment. biasanya aplikasi yang saya pake untuk upload dan download adalah WsFtp_LE, kenapa saya menggunakan aplikasi itu karena aplikasi itu cukup simpel dan ringan buat di gunakan. jadi walaupun kita punya komputer yang minimum tapi kita akan ringan untuk menjalankannya.

kalau cara penggunaan software wsftp saya rasa cukup simpel anda tinggal login dan terus di lanjutkan denga me-drag file yang mana yang mau anda upload atau download.

ada lagi kita bisa menggunakan ftp lewat comment yang default biasanya ada di windows. untuk langkah-langkah penggunaannya adalah. kita masuk ke menu Start–>>Run, terus ketikan command, kemudian anda tentukan folder tempat file yang mau anda upload atau di mana tempat kita menaruh file yang mau kita download.

setelah masuk ke folder yang di maksud kemudian anda ketikan ftp , sebagai contoh ftp deden.net dan kemudian dia akan conect ke server yang kita tuju sama seperti yang lainnya kita juga harus memasukan user dan password ftp kita. setelah anda masuk maka anda akan masuk ke menu home ftp kita.anda bisa melihat isi dari home tersebut dengan perintah ls maka kemudian akan muncul rincian file dan folder yang kita miliki. kalau anda mau masuk ke folder lain. sama sepeti biasa-biasanya yaitu dengan memasukan perintah cd sebagai contoh adalah cd public_html. setelah anda masuk ke folder yang kita tuju maka kita bisa langsung saja upload atau download. untuk perintah-perintahnya kalau anda belum tau maka anda tinggal masukan saja tanda “?” sebagai contoh ftp> ? maka akan muncul lish-lish perintah-perintah yang bisa di gunakan di sini. untuk upload file sendiri mengguanakan perintah PUT sebagai contoh ftp>put deden.jpg maka akan langsung file tersebut di upload dari komputer kita ke server. atau anda juga bisa download file yang ada di server ke komputer kita dengan menggunakan perintah get sebagai contoh ftp>get deden.jpg maka file tersebuat akan di copy dari server ke komputer kita. kalau anda telah selesai dengan semua proses maka anda dapat menutup atau keluar dari layanan ftp dengan menggunakan perintah bye.



Membuat FTP server di Debian

Posted on by noNa_cRaZy

Sebelum memulai mengkonfigurasi install terlebih dahulu vsftpd di mesin anda. Untuk pengguna debian/ubuntu silahkan ketikkan kata sakti di terminal anda

apt-get install vsftpd

Setelah terinstall baru kita lakukan konfigurasi. File konfigurasi vsftpd di debian/ubuntu ada di /etc/vsftpd.conf, silahkan buka dengan editor teks favorit anda. Nah, disini saya copy-paste (salin-tempel) saja konfigurasi vsftpd saya yang memungkinkan user anonymous dan non-anonymous bisa login bersamaan.



# Run standalone? vsftpd can run either from an inetd or as a standalone
# daemon started from an initscript.
listen=YES

# Allow anonymous FTP? (Beware - allowed by default if you comment this out).
anonymous_enable=YES

# Uncomment this to allow local users to log in.
local_enable=YES

# Uncomment this to enable any form of FTP write command.
write_enable=YES

# Default umask for local users is 077. You may wish to change this to 022,
# if your users expect that (022 is used by most other ftpd's)
local_umask=022

# Activate directory messages - messages given to remote users when they
# go into a certain directory.
dirmessage_enable=YES

# Activate logging of uploads/downloads.
xferlog_enable=YES

# Make sure PORT transfer connections originate from port 20 (ftp-data).
connect_from_port_20=YES

anon_root=/media/ftp

Kurang lebih seperti itu file konfigurasi vsftpd saya. Opsi anon_root untuk mendeklarasikan folder chroot untuk user anonymous. Selebihnya silahkan disesuaikan.



Pengertian Samba

Posted on by noNa_cRaZy

Dalam membangun jaringan kombinasi sistem operasi windows dengan linux, Samba merupakan layanan yang paling populer.
Pada umumnya Samba digunakan untuk membangun suatu jaringan di mana komputer-komputer yang menjadi anggota jaringan tersebut
digunakan untuk berbagi pakai(sharing) berbagai sumber daya yang dimilikinya, misal media penyimpanan data dan printer.

Artikel mengenai jaringan kombinasi Linux dan Windows secara Peer To Peer penulis berikan, karena jaringan Peer To Peer relatif sederhana dan mudah dipraktekkan.

Pada dasarnya Samba diciptakan untuk menjembatani protokol yang berbeda anta Linux dengan Windows ketika membangun sebuah jaringan.
Kebanyakan sistem operasi berbasis UNIX, termasuk Linux, menggunakan protokol TCP/IP dalam membangun jaringan. Windows sendiri juga mendukung penggunaan protokol TCP/IP.
Namun dalam membangun jaringan sesama Windows untuk keperluan sharing data atau printer, Windows menggunakan protokol lain yang disebut Server Message Block atau disingkat SMB.
Nah..pasti anda bisa mengira-ngira, mungkin dari kata inilah Samba berasal.
Protokol SMB menggunakan antarmuka jaringan yang disebut dengan Network Basic Input Output System(NetBIOS).
NetBIOS memungkinkan pengguna Windows untuk mengakses media penyimpanan atau printer pada komputer lain seolah-olah perangkat tersebut ada pada komputernya sendiri.

Dengan pola pikir sharing perangkat menggunakan protokol SMB tersebut, Andrew Tridgel menciptakan Samba.
Samba memungkinkan pengguna sistem operasi UNIX/Linux melakukan sharing media penyimpanan data dan printer dengan Windows.

Sekian dulu, perkenalan dan penjelasan mengenai Samba. Proses instalasi dan setting Samba akan penulis bahas pada artikel selanjutnya…Baca terus kelanjutannya yakz…



Konfigurasi Samba di Debian

Posted on by noNa_cRaZy

Install paket samba untuk versi yang terbaru
#apt-get install samba

Mengedit script smb.conf
#pico /etc/samba/smb.conf

#=================== Global Settings ====================

[global]

workgroup = kel7 —-> nama workgroup yang muncul nantinya
server string = %h server
dns proxy = no
interfaces = 192.168.2.1/8 eth0 —> eth0 merupakan LANcard,bisa diganti menurut medianya
bind interfaces only = true
log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %d

###### Authentication #######
security = user —> hanya untuk user yang terdaftar.
encrypt passwords = true
passdb backend = tdbsam
obey pam restrictions = yes
passwd program = /usr/bin/passwd %u
passwd chat = *EntersnewsUNIXspassword:* %nn *RetypesnewsUNIXspassword:* %nn *passwordsupdatedssuccessfully* .

#==================== Share Definitions ====================

[data] —> menentukan nama filesharing
path = /media/repo/ —> path tempat folder dishare
guest ol = no - —> akses guest ditolak, untuk menghidupkan ganti dengan yes
browseable = yes —> bisa dibrowsing
read-only = no —> read-only memiliki opsi yes atau no
valid-users = kel7, root —-> list user yang memiliki akses
writeable = yes —> bisa ditulis.
create mask = 700 —-> hak membuat file
directory mask = 700 —-> hak membuat direktori

[my data]
path = /media/
guest ol = yes
browsable = yes
read-only = no
writeable = yes
valid users = kel7,root

[printers]
comment = All Printers
browseable = no
path = /var/spool/samba
printable = yes
public = no
writable = no
create mode = 0700

# Sharing Printer Windows clients look for this share name as a source of downloadable
[print$]
comment = Printer Drivers
path = /var/lib/samba/printers
browseable = yes
read only = yes
writable = yes
guest ok = no —-> guest dilarang masuk
write list = root, @ntadmin

# Sharing CD-ROM with others.
[cdrom]
comment = Samba server’s CD-ROM
writable = no
locking = no
path = /cdrom
public = yes —-> public berarti bebas dipakai oleh siapa saja

 Merestart daemon Samba
#/etc/init.d/samba restart

 Untuk test apakah konfigurasi kita sudah berhasil, lakukan pengecekan menggunakan search  computers or people  a computer on the network  ketikkan alamat IP kita



Membuat DNS server di Debian

Posted on by noNa_cRaZy

Sebelum membuat DNS server kita harus terlebih dahulu memounting cdrom dengan cara seperti dibawah ini:

# mount /dev/hda /media/cdrom

Setelah memounting cdrom kita harus terlebih dahulu menginstall BIND9.dan hal ini dapat dilakukan dengan 2 cara sbb :

1. # Aptitude [enter]

lalu kita pilih Not installed packges

lalu tekan untuk melakukan pencarian dan ketikkan BIND9

2.ketikkan

# apt-get install BIND9

# cd /etc/bind

# pico named.conf

lalu tepat dibawah perintah ini anad harus menambahkan perintah yang dicetak tebal


zone “127.in-addr.arpa” {

type master;

file “/etc/bind/db.127”;

};


zone “debian.com.” {

type master;

file “/var/cache/bind/db.debian”; [ lokasi penyimpanan ]


zone “192.in-addr.arpa” {

type master;

file “/var/cache/bind/db.192”;

};



setelah selesai mengedit file lalu save [CTRL] + [x] – Y

lalu copydb.127dan db.local menjadi db.192 dan db.debian kemudian pindahkan dengan cara

#cp db.127 db.192

#mv db.192 /var/cache/bind/

#cp db.local db.debian

#mv db.debian /var/cache/bind/


setelah itu kita edit db.192 dengan cara

#pico db.192 (enter)



$TTL 604800

@ IN SOA debian.com. root.debian.com

1 ; serial

604800 ; refresh

86400 ; retry

2419200 ; expire

604800 ; negative cache TTL



;

@ IN NS debian.com

1.5.168 IN PTR debian.com

www IN PTR debian.com



setelah selesai mengedit file lalu save [CTRL] + [x] – Y


setelah itu kita edit db.debian dengan cara

#pico db.debian (enter)


$TTL 604800

@ IN SOA debian.com. root.debian.com

2 ; serial

604800 ; refresh

86400 ; retry

2419200 ; expire

604800 ; negative cache TTL



;

@ IN NS debian.com

@ IN A 192.168.5.1

www IN A 192.168.5.1


setelah selesai mengedit file lalu save [CTRL] + [x] – Y

catt: untuk ip dan alamat web site anda boleh menggunakan yang lainya tidak tergantung pada tuliasan diatas

kemudian restart bind9 dengan perintah

#/etc/init.d/bind9 restart

jika setelah dienter tidak ada failed makam kemungkinan anda berhasil untuk memastikan ping kealamat yang tadi

#ping www.debian.com

jika berhasil anda sukses



aLL aBouT SeRveR

Posted on Kamis, 11 Desember 2008 by noNa_cRaZy

Macam-Macam Server

Server adalah suatu komputer yang menjadi pengelola dan pusat bagi komputer lainnya. Oleh karena itu komputer server haruslah memiliki spesifikasi yang lebih tinggi dari pada client-clientnya. Selain itu server memiliki macam-macam jenis, yaitu diantaranya :

  1. Samba server
  2. FTP server
  3. DNS server
  4. Web Server
  5. Mail server
  6. Proxy Server
Instalasi Mailserver pada Debian Woody

Panduan ini ditujukan sebagai tutorial kecil-kecilan pembuatan email server dengan memanfaatkan paket-paket yang tersedia pada Debian Woody. Dokumen ini (mencoba) menjelaskan cara instalasi qmail (+patch), vpopmail, courier-imap, squirrellmail, clamav dan beberapa konfigurasi yang diperlukan.

1. Instalasi Qmail

Debian Woody menyediakan paket qmail-src yang berisi source code qmail yang telah dilengkapi dengan build-script yang memudahkan anda dalam melakukan kompilasinya. Paket source qmail ini juga telah dilengkapi dengan patch QMAILQUEUE yang memungkinkan anda untuk mengubah isi queue sebelum suatu mail dikirimkan.

Selain qmail-src itu sendiri, qmail juga membutuhkan ucspi-tcp yang juga disertakan pada Debian Woody dengan nama paket ucspi-tcp-src. Paket ini bertugas sebagai TCP Server yang mengatur koneksi jaringan yang dilakukan oleh qmail.

Instalasi kedua paket di atas dapat dilakukan dengan cara:

root:~# apt-get install qmail-src uscpi-tcp-src

Setelah kedua paket di atas terinstall kita akan mengcompile ucspi-tcp terlebih dahulu, baru setelah itu kita melakukan kompilasi pada qmail.

root:~# build-ucspi-tcp

Anda akan diminta memasukkan direktori untuk melakukan kompilasi (defaultnya /tmp/ucspi-tcp). Ikuti perintah pada layar, dan setelah selesai anda akan mendapatkan file ucspi-tcp_0.88-5_i386.deb yang dapat langsung anda install.

root:~# dpkg -i /tmp/ucspi-tcp/ucspi-tcp_0.88-5_i386.deb

Ada beberapa patch yang diperlukan untuk membangun binary qmail yaitu:

1. qmail-1.03-maxrcpt.patch: Digunakan untuk membatasi jumlah penerima per email. RFC2821 menyatakan bahwa suatu MTA harus dapat menerima setidaknya 100 penerima untuk tiap mail, namun boleh juga bila kita tidak ingin menerimanya. Pembatasan ini berguna untuk mengurangi spam.
2. qmail-1.03-mfcheck.3.patch: Digunakan untuk menolak email bila domain pengirim tidak valid.
3. qmail-1.03-quotas-1.1.patch: Digunakan untuk menset “over quota” sebagai hard error. Tanpa patch ini, “over quota” pada alamat tujuan hanya menghasilkan soft error sehingga pesan akan secara terus menerus dikirimkan hingga umur maksimal pada queue tercapai.
4. qmail-date-localtime.patch: Berguna agar qmail menggunakan format date lokal pada header email yang dikirimkan.
5. qmail-smtpd-auth: Memaksa user untuk login sebelum mengirim email. Hal ini berguna untuk menghindari pengiriman email yang dilakukan oleh virus/worm.

Beberapa patch di atas telah digabung oleh John M. Simpson (jms1@spamcop.net) menjadi 1 patch yaitu qmail-1.03-jms1.4a.patch yang dapat didownload dari http://www.jms1.net/qmail/qmail-1.03-jms1.4a.patch.

Catatan: Pastikan bahwa sebelum proses kompilasi dimulai IP Address dan domain mailserver anda telah terdaftar pada Domain Name Server yang anda gunakan. Bila belum segera hubungi administrator jaringan anda, atau bila andalah administrator jaringannya segera tambahkan entry mailserver pada DNS.

Di sini diasumsukan bahwa patch yang sudah anda download berada pada direktori /tmp, dan kompilasi dilakukan pada direktori /tmp/qmail.

root:~# build-qmail
This script unpacks the qmail source into a directory, and
compiles it to produce a binary qmail*.deb file.

The directory where this is done will end up containing the source
and package files for the qmail binary package, along with a
directory containing the unpacked source.

Enter a directory where you would like to do this [/tmp/qmail]
dpkg-source: extracting qmail in qmail-1.03

dpkg-source: extracting qmail in qmail-1.03

Binary package qmail will be compiled now
If you want to apply a custom patch, switch to another console and do it now
This can take long time, depending on your machine

Press ENTER to continue...

Jangan tekan ENTER, buka shell lagi, dan lakukan patch pada qmail.

root:~# cd /tmp/qmail/qmail-1.03
root:/tmp/qmail/qmail-1.03# patch -p1 < /tmp/qmail-1.03-jms1.4a.patch

Anda akan mendapatkan beberapa error, betulkan dengan cara mengkopikan isi file Makefile.rej dan qmail-smtpd.c.rej secara manual (caranya? silakan tanya tetangga, atau tanya ke mbah google). Setelah anda membetulkannya tekan ENTER untuk memulai proses kompilasi.

Setelah proses kompilasi selesai anda akan mendapatkan file /tmp/qmail/qmail_1.03-24_i386.deb pada direktori /tmp/qmail. File ini dapat langsung diinstall pada banyak komputer tanpa harus melakukan kompilasi ulang.

root:~# dpkg -i /tmp/qmail/qmail_1.03-24_i386.deb

Bila proses instalasi qmail gagal mendeteksi domain yang anda gunakan, isikan nama domain untuk mailserver anda pada file /var/qmail/control/me dengan cara mengedit file tersebut secara langsung atau dengan mengeksekusi perintah:

root:~# echo “nama.domain.anda” > /var/qmail/control/me

Setelah instalasi selesai jangan lupa untuk memasukkan domain yang akan ditangani pada /var/qmail/control/rcpthosts. Hal ini ditujukan agar mailserver anda tidak menjadi mail server open relay yang dapat disalahgunakan oleh pihak-pihak yang tidak bertanggugjawab.

Jangan lupa untuk memeriksa isi file /etc/tcp.smtp untuk menentukan network mana saja yang dapat menggunakan mailserver anda. Secara default, isi dari file ini adalah:

127.0.0.1:allow,RELAYCLIENT=”"

Anda dapat mengubah isi file itu menjadi:

127.0.0.1:allow,RELAYCLIENT=”"
[IP Network Anda]:allow,RELAYCLIENT=”"
:allow

Dengan konfigurasi semacam itu maka semua email yang berasal dari localhost dan dari network anda dapat menggunakan mailserver ini untuk mengirim email ke mana saja, sedangkan dari luar kedua network tersebut hanya dapat menggunakan mailserver ini untuk mengirimkan email ke alamat-alamat pada domain yang anda sebutkan pada /var/qmail/control/rcpthosts. Perbedaan dari kedua model perilaku ini ditentukan oleh RELAYCLIENT=”". Opsi variabel ini menyebabkan network yang menyandangnya mempunyai hak untuk menggunakan mailserver ini untuk mengirim email ke alamat apa pun (tidak hanya pada yang disebutkan pada /var/qmail/control/rcpthost).

Setelah anda mengubah isi /etc/tcp.smtp jangan lupa untuk membangun databasenya dengan menjalankan perintah:

root:~# tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp

Hal terakhir yang kini harus anda lakukan adalah mengubah perilaku penyimpanan qmail untuk menggunakan format Maildir. Qmail hasil kompilasi Debian tidak memerlukan supervise script dan daemontools melainkan mengunakan file /etc/init.d/qmail seperti halnya server lain yang terdapat pada Debian. Untuk itu anda dapat mengubah file tersebut pada bagian alias_empty=”|/usr/sbin/qmail-procmail” menjadi alias_empty=”./Maildir/”. Setting ini kira-kira terdapat pada baris ke-14 dan 15.

Setelah itu anda dapat menjalankan (start)/menghentikan (stop) dan merestart qmail dengan perintah:

root:~# /etc/init.d/qmail [start|stop|restart]

Anda dapat mencoba mailserver baru anda dengan menggunakan telnet seperti yang digambarkan pada potongan program di bawah ini.

root:~# telnet localhost 25

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 exp1.its.ac.id ESMTP
MAIL FROM:
250 ok
RCPT TO:
250 ok
DATA
354 go ahead
ketik pesan anda di sini
dan setelah selesai akhiri dengan tanda titik (.)
.
250 ok [angka aneh]

Bila anda mendapatkan jawaban seperti di atas itu berarti mailserver anda sudah berjalan dengan baik. Selamat! Silakan bikin kopi, minum dan istirahat sebentar, instalasi qmail telah selesai.
2. Instalasi Vpopmail

Vpopmail adalah suatu program yang memungkinkan sebuah mailserver menangani banyak domain dan banyak user tanpa harus membuat user entry pada /etc/passwd. Tiap domain dapat mempunyai satu account postmaster sendiri dengan password yang berbeda. Instalasi vpopmail tidak membuat kita harus mengubah setting pada qmail karena setting tersebut akan ditangani oleh proses instalasi vpopmail secara otomatis.

Selain untuk tujuan di atas, vpopmail juga menyertakan pop3 server yang memungkinkan kita untuk mendownload email-email yang ada di server ke mail client yang ada di komputer lokal anda, misal: Outlook Express atau Mozilla. Fasilitas ini membantu anda untuk menghindari penuhnya mailbox anda di mailserver, sehingga email yang dikirim untuk anda tidak akan bouncing.

Untuk menginstall paket ini anda tidak harus menginstall terlebih dahulu seperti pada instalasi qmail dan ucspi-tcp, namun dapat langsung menginstall dari .deb yang ada. Untuk dapat menginstall dengan menggunakan apt-get tambahkan baris berikut pada file /etc/apt/sources.list anda.

deb http://debian.its.ac.id/other woody vpopmail

Anda dapat memilih beberapa backend penyimpanan informasi username, di antaranya adalah:

1. cdb: Penyimpanan dilakukan dengan menggunakan file cdb.
2. mysql: Penyimpanan dilakukan dengan menggunakan database mysql.
3. lmysql: Sama dengan mysql namun dengan tambahan dukungan Large Site.
4. pgsql: Penyimpanan dilakukan dengan menggunakan database PostgreSQL.
5. oracle: Peyimpanan dilakukan dengan menggunakan database oracle.

Untuk menginstall vpopmail, ketik perintah di bawah ini. Nantinya, segala macam ketergantungan/dependencies akan ikut terinstall secara otomatis. Backend authentikasi yang secara default terinstall adalah cdb.

root:~# apt-get install vopomail-bin

Ada beberapa perintah dasar yang disediakan oleh vpopmail. Perintah-perintah ini adalah perintah dasar yang umum dipakai dalam manajemen suatu domain beserta user-user di dalamnya.

* vadddomain: digunakan untuk menambahkan virtual domain dan POSTMASTER domain tersebut.
* vadduser: digunakan untuk menambahkan user pada domain virtual.
* vpasswd: digunakan untuk mengubah password user pada domain virtual.
* vdeluser: digunakan untuk menghapus suatu user virtual domain.
* vdeldomain: digunakan untuk menghapus virtual domain.

root:~# vadddomain coba.domain.com
Please enter password for postmaster: *****
enter password again: *****

root:~# vadduser user1@coba.domain.com
Please enter password for user1@coba.domain.com: ****
enter password again: ****

Pada contoh di atas tampak bahwa domain coba.domain.com telah sukses dibuat dan kita juga telah membuat user baru untuk domain itu yakni user1@coba.domain.com.
3. Instalasi CourierIMAP

IMAP yang disediakan oleh CourierIMAP adalah IMAP versi 2. Layanan ini mirip dengan layanan yang disediakan oleh pop3, namun dengan menggunakan IMAP kita tidak harus memindahkan email pada mailserver ke komputer kita, namun kita tetap dapat membaca email melalui email client kesukaan kita.

Instalasi CourierIMAP cukup mudah, tambahkan baris berikut ini pada file /etc/apt/sources.list.

deb http://debian.its.ac.id/other woody courier

Instalasi dapat dilakukan dengan perintah:

root:~# apt-get install courier-imap

Courier IMAP mendukung beberapa modul authentikasi. Setting untuk penentuan modul ini terdapat pada file /etc/courier/imapd, pada bagian AUTHMODULES. Beberapa contoh metode authentikasi yang didukung adalah:

* authpam: Digunakan untuk validasi user menggunakan library PAM, jadi courier tidak melakukan authentikasi secara independen, melainkan dengan menggunakan library yang telah disediakan oleh PAM.
* authpwd: Digunakan untuk validasi user berdasarkan file /etc/passwd.
* authshadow: Persis seperti authpwd, namun password untuk user diambil dari /etc/shadow.
* authuserdb: Digunakan untuk validasi user berdasarkan database userdb.
* authvchkpw: Digunakan untuk validasi user dari vpopmail.
* authcram: Seperti pada authuserdb tetapi tidak secara langsung mengambil username dan password, melainkan melalui mekanisme “Challenge/Response Authentication Mechanism(CRAM)”.
* authmysql: Digunakan untuk validasi user yang disimpan pada database MySQL.
* authpgsql: Digunakan untuk validasi user yang disimpen pada database PostgreSQL.
* authldap: Digunakan untuk validasi user dari direktori LDAP.

Karena di sini kita menyimpan username dengan menggunakan vpopmail, maka authentikasi yang harus kita jalankan adalah authvchkpw. Dengan demikian pastikan bahwa pada file /etc/courier/imapd terdapat suatu baris yang berisi: AUTHMODULES=”authvchkpw”.

Banyak konfigurasi lain yang dapat anda lakukan. Anda dapat membaca file konfigurasi mulai awal sampai akhir. Pada tiap-tiap konfigurasi pasti ada suatu keterangan yang menyertainya, sehingga anda bisa membaca untuk mengetahui maksudnya.

Setelah konfigurasi selesai anda dapat menjalankan (start)/menghentikan (stop) dan merestart CourierIMAP dengan perintah:

root:~# /etc/init.d/courier-imap [start|stop|restart]

Setelah anda berhasil menginstall CourierIMAP, anda dapat mencobanya dengan telnet ke server IMAP dengan port 143. Sebagai contoh, bila anda telnet dari komputer yang sedang anda install, anda dapat menjalankan perintah seperti di bawah ini.

root:~# telnet localhost 443
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
* OK Courier-IMAP ready. Copyright 1998-2002 Double Precision, Inc.
See COPYING for distribution information.

Bila anda telah mendapatkan jawaban seperti di atas, berarti server IMAP anda telah bekerja dengan baik.
4. Instalasi Antivirus (ClamAV)

ClamAV adalah salah satu antivirus opensource yang tujuan utamanya adalah untuk membersihkan/mengkarantina file-file yang terkena virus yang beredar melalui email. Untuk dapat menscan virus yang masuk ClamAV tidak bekerja sendiri, namun untuk dapat memeriksanya ClamAV butuh bantuan qmailscanner yang instalasinya akan dibahas pada bab selanjutnya.

Database virus ClamAV diperbarui secara rutin. Anda dapat melacak aktivitas proyek ini melalui website http://www.clamav.net/. Selain dengan cara mendownload manual, ClamAV juga mempunyai daemon yang bernama freshclam yang secara berkala mendownload database virus dari internet, jadi anda tidak perlu secara rutin melakukan pemeliharaan anti virus (Istilah keren dari dunia BSD: Install and forget it).

Sebelum anda menginstall ClamAV, tambahkan baris berikut ini pada file /etc/apt/sources.list.

deb http://debian.its.ac.id/other woody clamav

Untuk instalasinya gunakan perintah:

root:~# apt-get install clamav

Setelah instalasi selesai anda dapat meneruskan ke bagian selanjutnya. ClamAV tidak memerlukan konfigurasi apa pun.
5. Instalasi qmail-scanner

Qmail-scanner adalah program yang digunakan oleh ClamAV(atau anti virus apapun) untuk memeriksa virus dari qmail-queue (terutama attachment). Qmail-scanner memeriksa semua koneksi SMTP untuk tiap koneksi yang keluar/masuk server (tergantung konfigurasinya). Bila qmail-scanner menemukan virus maka email yang bervirus akan dikarantina.

Sesungguhnya qmail-scanner bukanlah suatu program. Qmail-scanner adalah perl script yang dijalankan oleh tcp-server untuk memeriksa virus pada qmail-queue. Qmail-scanner membutuhkan beberapa library tambahan dari perl yaitu perl-suid, libtime-hires-perl, serta beberapa program lain seperti tnef, razor, dan lainnya. Anda tidak perlu menginstall semua program itu secara manual karena saat instalasi qmail-scanner, program-program itu secara otomatis akan ikut terinstall. Untuk menginstall qmail-scanner anda dapat menjalankan perintah:

root:~# apt-get install qmail-scanner

Setelah instalasi selesai anda dapat melihat, dan bila perlu mengubah file /var/spool/qmailscan/quarantine-attachments.txt. File ini berisi definisi beberapa virus dan anda juga dapat mencegah adanya pengiriman beberapa jenis file, misal: .scr, .pif, dan sebagainya yang anda curigai biasa digunakan oleh virus untuk menyebarkan dirinya. Bila anda mengubah file tersebut anda harus menjalankan perintah

root:~# /usr/sbin/qmail-scanner-queue.pl -g

untuk mengupdate hasil pengubahan anda pada file database .cdb agar bisa digunakan oleh qmail-scanner. Selain file itu, anda juga dapat mengubah file /usr/sbin/qmail-scanner-queue.pl untuk melakukan beberapa penyesuaian dengan sistem anda. Keterangan lengkap mengenai file ini dapat anda tanyakan pada Mbah Google.

Sekarang, yang perlu kita lakukan adalah mengubah jalannya email agar “mampir” terlebih dahulu ke puskesmas untuk periksa virus sebelum diberangkatkan ke penerima email. Secara default, sebelum email dikirimkan ke penerima email itu akan masuk ke daftar antrian. Scanning virus dilakukan tepat sebelum email masuk ke dalam antrian. Pada saat itulah qmail-scanner melakukan tugasnya. Untuk itu, kita harus menyebutkan email dari network mana saja yang harus diperiksa oleh qmail-scanner.

Untuk keperluan itu kita melakukannya dengan memberikan variabel global pada suatu koneksi tertentu, yang mana tugas ini dilakukan oleh TCPSERVER. Variabel yang dibutuhkan adalah QMAILQUEUE. Bila pada awalnya isi /etc/tcp.smtp anda seperti:

127.0.0.1:allow,RELAYCLIENT=”"
192.168.10.:allow,RELAYCLIENT=""
:allow

(dengan asumsi 192.168.10.x adalah network anda) dan anda ingin memeriksa semua email yang masuk dari luar network anda, anda dapat mengubah file itu menjadi:

127.0.0.1:allow,RELAYCLIENT=”"
192.168.10.:allow,RELAYCLIENT=""
:allow,QMAILQUEUE="/usr/sbin/qmail-scanner-queue.pl"

Bila anda ingin memeriksa semua email yang melewati mailserver anda, anda dapat menambahkan QMAILQUEUE=”/usr/sbin/qmail-scanner-queue.pl” pada semua network yang disebutkan. Jangan lupa bahwa anda harus kembali menggenerate database qmail-scanner dengan perintah di bawah.

root:~# /usr/sbin/qmail-scanner-queue.pl -g
6. Aktifasi SMTP Auth

SMTP Auth adalah salah satu cara untuk menjaga agar mailserver anda tidak digunakan secara ilegal oleh pihak-pihak yang tidak bertanggung jawab. Untuk itu, setiap koneksi yang akan mengirimkan email ke luar domain yang disebutkan di /var/qmail/control/rcpthosts harus menyediakan username dan password. Bila username dan password yang disebutkan benar, maka email akan diteruskan kepada penerima, bila tidak maka koneksi akan ditutup. Email yang menuju ke alamat lokal tidak perlu divalidasi terlebih dahulu.

Cara kerja SMTP Auth adalah dengan men-set variabel RELAYCLIENT=”" pada tiap koneksi yang berhasil authentikasi. Dengan adanya variabel itu, maka suatu koneksi dapat mengirimkan email ke mana saja. Karena itu, bila anda ingin semua koneksi dari network 192.168.10. harus login terlebih dahulu, maka anda harus menghilangkan RELAYCLIENT=”" dari file /etc/tcp.smtp sehingga kini file itu berisi:

127.0.0.1:allow,RELAYCLIENT=”"
192.168.10.:allow
:allow,QMAILQUEUE="/usr/sbin/qmail-scanner-queue.pl"

Sekarang anda harus mengubah file /etc/init.d/qmail. Carilah perintah yang menjalankan qmail-smtpd dan ubahlah (beri parameter) hingga menjadi:

/usr/sbin/qmail-smtpd `hostname -f` /usr/bin/checkpassword /bin/true 2>&1 …….(dst)

dan restart qmail. Pastikan juga untuk menjalankan

root:~# chmod 4755 /usr/bin/checkpassword

agar checkpassword dapat melakukan authentikasi dengan baik.

Untuk mencobanya, kita perlu menyediakan satu username dan password yang valid. Misalkan username kita adalah admin@exp1.its.ac.id dan passwordnya adalah rahasia. Kita akan mencoba username dan password itu untuk mengirimkan email ke luar network kita. Sebelumnya anda harus mengencode kedua string di atas dengan algoritma “base64″ yang dapat dibuat dengan script perl kecil seperti di bawah ini. (thx buat mas asfik).

use MIME::Base64;
print ('Username : ');
print encode_base64('admin@exp1.its.ac.id');
print ('Password : ');
print encode_base64('rahasia');

Misalkan nama script di atas adalah pass.pl, maka bila dieksekusi akan seperti ini:

root:~# perl pass.pl
Username : YWRtaW5AZG9tYWlua3UuYml6
Password : cmFoYXNpYQ==

Sekarang kita tinggal mencoba untuk mengirimkan email.

root:~# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 exp1.its.ac.id ESMTP
AUTH LOGIN
334 VXNlcm5hbWU6
YWRtaW5AZG9tYWlua3UuYml6
334 UGFzc3dvcmQ6
cmFoYXNpYQ==
235 ok, go ahead (#2.0.0)

Bila anda mendapat jawaban seperti di atas, maka authentikasi telah berjalan dengan baik. Namun bila anda mendapatkan jawaban 535 authorization failed (#5.7.0) itu berarti anda harus memeriksa kembali apakah ada yang kurang dari proses instalasi anda.
7. Instalasi Webmail (SquirrelMail)

Instalasi SquirrelMail membutuhkan webserver apache, dan php4 yang mendukung IMAP. Anda tinggal mendownload dari http://www.squirrelmail.org dan kemudian mengekstrak pada direktori /var/www dan menjalankan script config.pl yang disertakan untuk mengkonfigurasi webmail anda.

Selain mendownload sendiri, anda juga dapat menginstall squirrelmail dari Debian dengan perintah:

root:~# apt-get install squirrelmail

dan menjalankan script /etc/squirrelmail/conf.pl untuk menyesuaikan setting squirrelmail dengan mailserver yang ada.