Setting Router

•Juli 21, 2008 • Tinggalkan sebuah Komentar

Setting Router

Posted on 11.07.2005 23.36 by cachak | Filed under Linux


Akhirnya jadi juga tutorial setting router warnet untuk linux.
Saya menulis ini buat temen2 yang minta untuk di buatin tutorial untuk setting router warnet,dimana sebelumnya mereka memakai router windows dan mau migrasi ke linux.


			    |eth0
			    |
			|-------|
			|  MGW  |
			|---|---|
 			    |
 			    |eth1
			    |
			    |
      |--------------------hub----------------------|
      |			    |			    |
      |			    |			    |
      |			    |			    |
 |---------|	       |---------|	       |---------|
 |Client 01|	       |Client 02|	       |Client 03|
 |---------|	       |---------|	       |---------|

Pertama yang harus di lakukan adalah mensetting mgw(main gateway)
supaya bisa connect ke internet
Sebelum Mensetting :
1.Minta IP public ke ISP lengkap dengan netmask,broadcast dan dns nya
misalnya :
RANGE	: 202.159.121.0/29
IP	: 202.159.121.2
GATEWAY : 202.159.121.1
Nemast	: 255.255.255.248
broadcast : 202.159.121.7
DNS1	: 202.159.0.10
DNS2	: 202.159.0.20
berarti kita mendapatkan ip 5 buah dari 202.159.121.2 - 202.159.121.6

2.Menentukan IP local yang akan kita gunakan buat client

Setting IP MGW :
1.[root@mgw cachak]$ vi /etc/sysconfig/network
lalu isi dengan :

NETWORKING=yes
HOSTNAME=mgw.domain.com
GATEWAY=202.159.121.1

lalu simpen dengan menekan :wq

2.Menconfigurasi IP eth0(default) 

[root@mgw root]$ vi /etc/sysconfig/network-scripts/ifcfg-eth0
lalu isi dengan :

DEVICE=eth0
BOOTPROTO=static
IPADDR=202.159.121.2
BROADCAST=202.159.121.7
NETMASK=255.255.255.249
ONBOOT=yes
USERCTL=no

lalu simpen dengan menekan :wq

3.Setting dns resolve

[root@mgw root]$ vi /etc/resolv.conf
lalu isi dengan nameserver dari isp kita tadi :

nameserver 202.159.0.10
nameserver 202.159.0.20

lalu simpen dengan menekan :wq

4.Setting ip_forwarding

[root@mgw cachak]$ vi /etc/sysctl.conf

rubah net.ipv4.ip_forward = 0 menjadi net.ipv4.ip_forward = 1
atau kalau gak ada net.ipv4.ip_forward = 0 tambahin net.ipv4.ip_forward = 1

simpen dengan menekan :wq

5.restart network
[root@mgw cachak]$ /etc/init.d/network restart
Shutting down interface eth0:                              [  OK  ]
Shutting down loopback interface:                          [  OK  ]
Disabling IPv4 packet forwarding:                          [  OK  ]
Setting network parameters:                                [  OK  ]
Bringing up loopback interface:                            [  OK  ]
Bringing up interface eth0:                                [  OK  ]

[root@www root]#chkconfig --level 2345 network on
[root@www root]#

6.testing dengan ngeping ke default gateway 202.159.121.1

[root@mgw cachak]$ ping 202.159.121.1
PING 202.159.121.1 (202.159.121.1) 56(84) bytes of data.
64 bytes from 202.159.121.1: icmp_seq=1 ttl=63 time=0.356 ms
64 bytes from 202.159.121.1: icmp_seq=2 ttl=63 time=0.269 ms
64 bytes from 202.159.121.1: icmp_seq=3 ttl=63 time=0.267 ms
64 bytes from 202.159.121.1: icmp_seq=4 ttl=63 time=0.268 ms

--- 202.159.121.1 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 2997ms
rtt min/avg/max/mdev = 0.267/0.290/0.356/0.038 ms

7.testing untuk ngeping google.com untuk ngecek dns nya
kalau muncul :
PING google.com (216.239.39.99) 56(84) bytes of data.
berarti dns kita untuk mgw dah bekerja, tapi kalau muncul :
ping: unknown host google.com
berarti dns yang kita isikan di /etc/resolve.conf masih salah,
silahkan cek lagi ke ISP nya ) 

nah bereskan sudah setting IP untuk mgw nya )
supaya mgw ini bisa sekaligus di gunakan sebagai ns server
oleh client maka harus di install daemon bind atau
daemon nameserver yang lain
ataukalau sudah ada tinggal idupin Bind nya

[root@www root]# /etc/init.d/named restart
Stopping named:                                            [  OK  ]
Starting named:                                            [  OK  ]
[root@www root]#chkconfig --level 2345 named on
[root@www root]#

misalnya ip ke client adalah :
192.168.0.1/24
IP : 192.168.0.1
netmask : 255.255.255.0
broadcast : 192.168.0.255
RANGE IP CLIENT : 192.168.0.2-192.168.0.254

Setting ip untuk eth1 (yang ke client)
1.memberi IP 192.168.0.1 di eth1
[root@mgw cachak]$ vi /etc/sysconfig/network-scripts/ifcfg-eth1
lalu isi dengan :

DEVICE=eth1
BOOTPROTO=static
IPADDR=192.168.0.1
NETMASK=255.255.255.0
BROADCAST=192.168.0.255
ONBOOT=yes
USERCTL=no

lalu simpen dengan menekan :wq

2.Restart networknya

[root@mgw root]$ /etc/init.d/network restart
Shutting down interface eth0:                              [  OK  ]
Shutting down interface eth1:                              [  OK  ]
Shutting down loopback interface:                          [  OK  ]
Disabling IPv4 packet forwarding:                          [  OK  ]
Setting network parameters:                                [  OK  ]
Bringing up loopback interface:                            [  OK  ]
Bringing up interface eth0:                                [  OK  ]
Bringing up interface eth1:                                [  OK  ]

3.Testing dengan cara ping ip eth1
[root@mgw cachak]$ ping 192.168.0.1
PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data.
64 bytes from 192.168.0.1: icmp_seq=1 ttl=63 time=0.356 ms
64 bytes from 192.168.0.1: icmp_seq=2 ttl=63 time=0.269 ms
64 bytes from 192.168.0.1: icmp_seq=3 ttl=63 time=0.267 ms
64 bytes from 192.168.0.1: icmp_seq=4 ttl=63 time=0.268 ms

--- 192.168.0.1 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 2997ms
rtt min/avg/max/mdev = 0.267/0.290/0.356/0.038 ms

Tinggal Setting IP computer client dengan ketentuan di bawah ini :

IP		: 192.168.0.2 - 192.168.0.254
GATEWAY		: 192.168.0.1
NETMASK		: 255.255.255.0
BROADCAST	: 192.168.0.255
NAMESERVER	: 192.168.0.1

misal :

Client01
===============================
IP		: 192.168.0.2
GATEWAY		: 192.168.0.1
NETMASK		: 255.255.255.0
BROADCAST	: 192.168.0.255
NAMESERVER	: 192.168.0.1

Client02
===============================
IP		: 192.168.0.3
GATEWAY		: 192.168.0.1
NETMASK		: 255.255.255.0
BROADCAST	: 192.168.0.255
NAMESERVER	: 192.168.0.1

dan seterusnya sesuai banyaknya client,yang berubah hanya IP
untuk client windows maka setting IP
di bagian Start Menu/Setting/Control Panel/Network

setelah di setting ip client, maka coba ping ke 192.168.0.1
dari client,kalau berhasil berarti client dan MGW nya sudah tersambung.

Setting MGW supaya client bisa internat dengan menggunakan NAT

1.Matikan iptablesnya

[root@mgw root]# /etc/init.d/iptables stop
Flushing all chains:                                       [  OK  ]
Removing user defined chains:                              [  OK  ]
Resetting built-in chains to the default ACCEPT policy:    [  OK  ]
[root@mgw root]#

2.Tambahkan iptables untuk Source NAt sesuai dengan ip di eth0
[root@mgw root]# /sbin/iptables -t nat -A POSTROUTING
-o eth0 -s 192.168.0.0/24 -j SNAT --to-source 202.159.121.2
[root@mgw root]# /sbin/iptables-save > /etc/sysconfig/iptables
[root@mgw root]# /etc/init.d/iptables restart
Flushing all current rules and user defined chains:        [  OK  ]
Clearing all current rules and user defined chains:        [  OK  ]
Applying iptables firewall rules:                          [  OK  ]
[root@mgw root]# iptables-save

SNAT sudah,SNAT disini standar sekali dan gak ada proteksi
untuk mengetest nya kita browser di client lalau buka google.com,
kalau jalan berati kita sudah berhasil )

IPTABLES

•Maret 6, 2008 • Tinggalkan sebuah Komentar

IP TABLES

IP TABLES
Banyak orang bingung dengan IPTables dan berusaha keras untuk dapat memahami bagaimana IPTables bekerja. Tapi, ketika anda mendapatkan konsep dasarnya maka hal itu menjadi cukup mudah.Tutorial ini akan menjelaskan kepada anda dasar bagaimana menggunakan IPTables. Sebenarnya saya tidak begitu canggih menggunakan IPTables,tapi saya cukup mengerti bagaimana iptables bekerja. tutorial ini saya buat menggunakan linux debian 4.0, tapi tidak masalah disto linux apapun yang anda gunakan karena perintah atau syntax nya bisa bekerja di berbagaidistro linux.
Download Dokumentasi Lengkap : >> IP TABLES

VPN DAN TUNNELING

•Maret 6, 2008 • Tinggalkan sebuah Komentar

VPN DAN TUNNELING

VPN DAN TUNNELING

Tunnel

Tunnel di dalam dunia jaringan diartikan sebagi suatu cara untuk meng enkapsulasi atau membungkus paket IP didalam paket IP yang lain. Dimana titik dibelakang IP Tunnel akan memberikan paket IP melalui Tunnel yang dibuat dan mengirimkannya ke sebuah titik dibelakang tunnel yang lain. Intinya tunneling adalah suatu cara membuat jalur private dengan menggunakan infrasturktur pihak ketiga. Ketika sebuah paket IP dapat dicapai oleh masing-masing sisi client dibelakang IP tunnel, maka Tunnel IP Header dan beberapa Tunel Header tambahan yang membungkus paket IP tersebut akan dilepas dan Paket IP yang asli akan disuntikan ke dalam IP Stack pada titik dibelakang IP Tunnel. Nanti akan kita coba mensimulasikan dengan menggunakan dua buah mesin Mikrotik untuk membuat sebuah koneksi Virtual antara dua buah jaringan yang dipisahkan oleh letak geografis, melalui jaringan penengah / intermediate network (Misalnya ISP).

Download Dokumentasi Lengkap : >> VPN and Tunneling

DEBIAN 4.0 SERVER PERFECT SETUP

•Maret 6, 2008 • Tinggalkan sebuah Komentar

DEBIAN 4.0 SERVER PERFECT SETUP
The Perfect Setup untuk Debian Server

Tutorial ini akan menjelaskan bagaimana menginstall Debian Etch berbasis server,
dan menginstall beberapa standart services untuk server, saya menggunakan
software dibawah ini :

Web Server: Apache 2.2

Database Server: MySQL 5.0

Mail Server: Postfix

DNS Server: BIND9

FTP Server: proftpd
Pertama saya ingin mengatakan bahwa, ini bukanlah satu-satunya cara untuk mensetting system server. Ada banyak cara yang bisa anda lakukan agar dapat mensetting server seperti ini.

1. Requirements
Hal yang anda perlukan untuk menginstall Server Debian adalah :
- PC Standart, kebanyakan PC sekarang sudah jauh melampui requirements yang
dibutuhkan untuk install Server.
- CD Debian Etch installation bisa di download di mirror list http://www.debian.org/CD/http-ftp/
- I downloaded this one:
http://ftp.de.debian.org/debian-cd/4.0_r0/i386/iso-cd/debian-40r0-i386-netinst.iso)
- Koneksi internet yang cepat.

Pada Dokumentasi kali ini, saya menggunakan hostname mail.jatmiko.web.id dengan menggunakan IP address 202.47.77.2xx. Settingan ini mungkin akan berbeda jadi silahkan sesuaikan dengan kebutuhan anda. OK sekaran mari kita mulai Installation Server dengan Debian Etch.

Download Dokumentasi Lengkap : >> Debian Server Perfect Setup

SETTING DHCP-SERVER DEBIAN 4.0

•Maret 6, 2008 • Tinggalkan sebuah Komentar

Setting DHCP Server di Debian 4.0

<!– –>

APT DI DEBIAN

•Maret 6, 2008 • Tinggalkan sebuah Komentar
APT di Debian

Posted under General

apt-get install hmmmSistem manajemen paket dalam sebuat Operasi System sangatlah penting karena dengan ada system manajemen paket tesebut kita dengan mudah menambah, menghapus dan men-update paket-paket yang ada pada system kita tersebut.

Bagi pengguna GNU/Linux apalagi yang menggunakan Distro Redhat atau variantnya anda pasti sering menjumpai dengan RPM(Redhat package Management) yang sekarang telah bukan milih RedHat lagi dan berganti nama dengan Rpm Package Management, dan banyak lagi paket manajemen di GNU/Linux lainnya.

kita akan membahas salah satu paket manajement pada Debian, mungkin pada Debian anda sering menjumpai DPKG yaitu debian package, dan sekarang ini debian mengeluarkan paket manajemen lanjutan yang bernama APT(Advance Package Tool).

tool inilah yang akan kita bahas pada tulisan kita berikut ini. APT ini adalah tool pengaturan paket yang sangat berguna, karena tool ini memberikan kita kemudahan untuk mengatur paket pada sistem kita. Contohnya jika kita ingin menginstall iptables di debian dengan menggunakan dpkg maka kita akan menjalakan perintah seperti berikut ini.

dpkg –i iptables-1-3.7.deb

Tetapi klo kita menggunakan APT kita cukup mengetikan perintah

#apt-get install iptables

Secara otomatis apt akan mencari iptables yang terbaru yang terdapat pada databasenya yang terletak pada directori /var/cache/apt/archives/ begitu juga klo kita ingin mengupdate paket pada mesin kita.

Sekarang kita akan membahas gimana cara mengunakan apt pada mesin debian kita, pertama-tama yang perlu kita lakukan adalah membuat sources.list, yang mana list dimana apt dapat mendownload atau tempat kita menyimpan file-file paket(jika file src debian terdapat pada cd atau media penyimpanan lainnya seperti hardisk) dan pada akhirnya di simpan menjadi arsip yang akan berguna ketika kita menginstall paket tersebut di kemudian hari.

Sekarang kita menyusun sources.list untuk apt dengan menggunakan vim atau editor yang ada pada mesin anda, dan ketikan link-link dari miror yang menyimpan source dari debian.

Source.list secara normal formatnya berbentuk :

deb http://host/debian distribusi section1 section2 section3
deb-src http://host/debian distribusi section1 section2 section3

baiklah kita langsung memulai mengisikan sources.list kita dengan ketikan perintah berikut ini,

# vim /etc/apt/sources.list

Setelah file tersebut terbuka maka isilah file tersebut seperti perintah di bawah ini.

an GNU/Linux 4.0 r0 _Etch_ – Official i386 NETINST Binary-1 20070#

# deb cdrom:[Debian GNU/Linux 4.0 r0 _Etch_ - Official i386 NETINST Binary-1 20070407-11:29]/ etch contrib main

deb cdrom:[Debian GNU/Linux 4.0 r0 _Etch_ - Official i386 NETINST Binary-1 20070407-11:29]/ etch contrib main

deb ftp://ftp.us.debian.org/debian etch main contrib

deb-src ftp://ftp.us.debian.org/debian etch main contrib

deb http://security.debian.org/ etch/updates main contrib

deb-src http://security.debian.org/ etch/updates main contrib.

baik saya akan menjelaskan isi dari baris-baris dari source list tersebut.

Baris yang mana berisi tanda

1 . # itu berarti baris komentar, jadi tidak akan di eksekusi ketika anda meng-eksekusinya,

2. baris deb cdrom: [Debian GNU/Linux4.0 r0 –Etch_ -Officiali386 NETINST Binary-1 20070407-11:29/ etch contrib. main, baris ini menjelaskan untuk apt mendapatkan file-file binary debian pada cdrom.

3. deb ftp://ftp.us.debian.org/debian dan deb-src ftp://ftp.us.debian.org/debian, ini adalah acuan buat apt kita untuk mendapatkan file-file deb dan src, sedangkan alamat ftp tersebut bisa kita gantikan yang merupakan link yang terbaik buat anda, anda bisa melihatnya pada http://www.debian.org/mirror/mirrors_full jadi anda tinggal memasang yang mana mirror yang anda butuhkan.

4. deb http://security.debian.org etch/updates main contrib. dan deb-src http://security.debian.org/ etch/updates main contrib, ini berguna untuk apt mendownload fitur-fitur security terbaru buat debian anda.

Catatan : etch itu adalah seri debian yang saya gunakan sekarang, jika anda menggunakan versi stable anda bisa menggantikan etch dengan stable dan jika anda menggunakan versi lain, anda bisa mengantikan etch tersebut dengan nama versi debian anda.

Setelah sources.list kita selesai sekarang kita menjalankan perintah,

#apt-get update

Perintah ini bermakna yang mana apt akan mendownload paket-paket terbaru dari link yang kita pasang pada sources.list dan akan di simpan pada arsip apt yaitu pada directory /var/cache/apt/archives/

Sekarang kita akan mencoba untuk menjalankan apt untuk menginstall nautilus, maka kita hanya perlu menjalankan perintah

# apt-get install nautilus
     Reading Package Lists… Done
     Building Dependency Tree… Done
     The following extra packages will be installed:
       bonobo libmedusa0 libnautilus0 
     The following NEW packages will be installed:
       bonobo libmedusa0 libnautilus0 nautilus 
     0 packages upgraded, 4 newly installed, 0 to remove and 1  not upgraded.
     Need to get 8329kB of archives. After unpacking 17.2MB will be used.
     Do you want to continue? [Y/n]

Karena nautilus mempunyai dipedensi dengan bonobo, libmedusa0, libnautilus0, maka paket-paket tersebut juga ikut di install.

Berikut ini adalah opsi-opsi yang membuat apt lebih berguna :

-h ini adalah opsi untuk meminta bantuan, jika anda masih bingung bagaimana caranya menggunakan apt ya silahkan pakai opsi ini

-d gunakan opsi ini jika anda hanya ingin mendownload sebuah paket tapi tidak ingin menginstallnya

-y opsi ini berguna untuk anda yang malas menekan tombol yes, dengan menggunakan tombol ini maka anda tidak bakalan di Tanyakan apa2

-u adalah opsi untuk menampilkan list dari upgrade-upgrade paket.

Oya, APT juga bisa menginstall paket secara sekalian, bingung juga menjelaskannya, tapi mungkin contoh berikut akan membantu anda. Jalankan perintah.

#apt-get install sudo nautilus apache

Pada contoh di atas kita bisa melihat klo kita menginstall paket sudo, nautilus dan apache hanya dengan satu baris perintah saja.

Jika ada paket kita yang rusak kita bisa saja menginstall paket itu kembali dengan mengetik perintah berikut ini.

#apt-get –reinstall install nama-paket

Sekarang kita akan membahas gimana caranya membuang paket yang tidak kita perlukan pada mesin debian kita. Jika kita tidak perlu dengan gnome-panel , kita bisa membuang paket tersebut dengan mengetikan

apt-get remove gnome-panel

Reading Package Lists... Done
     Building Dependency Tree… Done
     The following packages will be REMOVED:
       gnome-applets* gnome-panel* gnome-panel-data* gnome-session* 
     0 packages upgraded, 0 newly installed, 4 to remove and 1  not upgraded.
     Need to get 0B of archives. After unpacking 14.6MB will be freed.
     Do you want to continue? [Y/n]

Pada contoh di atas anda bisa melihat klo apt akan sangat hati-hati ketika ingin menghapus paket yang mempunya dependency dengan paket lain.

tapi yang perlud di ingat, dengan menjalankan perintah seperti di atas akan membuang paket tetapi tidak akan membuang file konfigurasi dari paket tersebut, jika anda ingin juga membuangnya anda bisa mengetikan perintah berikut ini

# apt-get --purge remove gnome-panel
     Reading Package Lists… Done
     Building Dependency Tree… Done
     The following packages will be REMOVED:
       gnome-applets* gnome-panel* gnome-panel-data* gnome-session* 
     0 packages upgraded, 0 newly installed, 4 to remove and 1  not upgraded.
     Need to get 0B of archives. After unpacking 14.6MB will be freed.
     Do you want to continue? [Y/n]

Seperti yang anda lihat, hasil dari program yang anda jalankan itu, ada paket-paket dengan tanda ‘ * ‘ di atasnya, itu bermaksud file configurasi terhadap paket tersebut juga akan di buang.

Anda juga bisa membuang satu paket-paket dan di satu sisinya menginstall paket-paket lainya dengan hanya menggunakan satu baris perintah apt, contohnya seperti di bawah ini:

# apt-get --purge remove gnome-panel nautilus+
     Reading Package Lists… Done
     Building Dependency Tree… Done
     The following extra packages will be installed:
       bonobo libmedusa0 libnautilus0 nautilus 
     The following packages will be REMOVED:
       gnome-applets* gnome-panel* gnome-panel-data* gnome-session* 
     The following NEW packages will be installed:
       bonobo libmedusa0 libnautilus0 nautilus 
     0 packages upgraded, 4 newly installed, 4 to remove and 1  not upgraded.
     Need to get 8329kB of archives. After unpacking 2594kB will be used.
     Do you want to continue? [Y/n]

Pada contoh di atas kita membuang gnome-panel dan kita juga menginstall nautilus, jadi tanda ‘+’ berarti untuk menginstall paket. Begitu juga sebaliknya kita bisa juga menginstall paket-paket sambil menghapus paket-paket tertentu, dengan cara menambahkan tanda ‘-‘ pada akhir paket yang ingin kita hapus.

Hanya segini yang saya tahu tentang apt jika anda ingin lebih mengetahui tentang apt anda bisa membacanya pada APT-HOWTO.

tapi klo ada waktu saya akan coba menyambung tulisan tentang apt ini.

NETFILTER DI DEBIAN

•Maret 6, 2008 • Tinggalkan sebuah Komentar
Menginstall Netfilter-Layer7 di Debian

dinding apiSeperti yang anda ketahui begitu banyak sekarang applikasi yang berjalan pada jaringan internet, itu juga membuat admin jaringan pusing mengatur jaringannya. banyak applikasi yang menggunakan port yang bisa di set oleh user membuat firewall sulit untuk menutup applikasi tersebut, di karenakan firewall hanya bisa menutup port-port yang biasanya di gunakan oleh applikasi tersebut.

Sekarang sudah keluar firewall yang mendukung layer7 yaitu firewall yang mampu membaca ip tidak hanya pada headernya tapi sampai ketempat yang lebih dalam, dengan demikian firewall akan tahu applikasi aja yang di bawa oleh ip-ip tersebut.

pada GNU/Linux, firewall itu indektik dengan iptables yaitu paket untuk mengatur lalulintas paket yang masuk, keluar dan melaluinya.

Sekarang kita akan mencoba membuat firewall yang mendukung layer7 ini di Debian GNU/Linux, karena firewall di GNU/Linux adalah iptables, berarti kita akan memasang layer7 pada GNU/Linux ini. Secara default kernel linux itu tidak membawa modul untuk layer7, kita perlu menambalnya(patch) dengan netfilter-layer7 yang bisa kita dapatkan pada http://sourceforge.net, Setelah itu baru kita bisa memasukan layer7 pada kernel kita.

Sebelum melakukannya kita perlu mempersiapkan beberapa tool untuk mendukung kita menambal(patch) dan menyusun kernel baru kita. Karena kita menggunakan Debian maka kita dapat langsung menginstall tool-tool yang kita perlukan saat ini untuk menginstallasi, menyusun(Compile) dan menambal(patch) kernel kita dengan menggunakan apt-get yang mana harus anda jalankan sebagai root.

Pada contoh berikut ini kita menyimpannya pada directory /home/basuki Ketikan perintah seperti berikut ini.

#cd /home/basuki

Lalu install kernel-package, libncurses5-dev, bzip2, sudo, patch dan make dengan menggunakan apt-get

#apt-get install kernel-package, libncurses5-dev bzip2 sudo patch make

Setelah selesai menginstall tool-tool tersebut sekarang yang kita butuhkan adalah source kernel, iptables dan netfilter-layer7. dan anda bisa menyimpannya pada directory /home/namauseranda contohnya basuki, maka directorinya /home/basuki, pada contoh di bawah ini saya menggunakan kernel-2.6.18.4, untuk source kernel anda bisa mendapatkannya dengan mengetikan perintah berikut ini,
#wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.18.4.tar.gz
, setelah source kernel tersebut terdownload anda perlu meng-extraxnya dengan mengetikan perintah berikut ini :

# tar xvfz linux-2.6.18.4.tar.gz

Coba jalankan perintah,

# ls

Maka anda akan mendapatkan directory baru pada folder home/basuki anda tersebut yaitu linux-2.6.18.4.
Setelah itu anda perlu mendownload netfilter-layer7 dengan cara mengetikan perintah berikut ini,

#wget
http://internap.dl.sourceforge.net/sourceforge/l7-filter/netfilter-layer7-v2.13.tar.gz

Lalu setelah anda mendapatkan file netfilter-layer7-v2.13.tar.gz anda perlu meng-extraxnya dengan mengetikan perintah di bawah ini:
# tar xvfz netfilter-layer7-v2.13.tar.gz
Setelah kita meng-extrax netfilter-layer7, maka sekarang kita akan meng-patch atau menambal kernel kita dengan netfliter-layer7, sebelumnya kita perlu masuk ke directory linux-2.6.18.4 terlebih dahulu, dengan mengetikan perintah
# cd /home/basuki/linux-2.6.18.4/
Lalu kita menjalankan perintah patch, seperti contoh di bawah ini :
#patch –p1 < ../netfilter-layer7-v2.13/for_older_kernel/kernel-2.6.18-2.6.19-layer7-2.9.patch
Jika tidak ada terdapat kata hunk, maka anda telah berhasil menambal atau meng-patch kernel anda dengan netfilter-layer7, sekarang kita mulai mengaktifkan module layer7 pada source kernel anda. Masih pada direktori kita tadi yaitu /home/basuki/linux-2.6.18.4 jalankan perintah :
#make menuconfig
maka akan keluar form menuconfig, pada form tersebut pilihlah, Device Drivers –>Networking Support–>Networking Option–>Network Packet Filtering–>IP:Netfilter Configuration–>Connection Tracking–>Layer7
setelah anda selesai menambah modul layer7 pada kernel anda, sekarang anda tinggal menyusun(compile)dan memasang(install) kernel baru anda, caranya jalankan perintah,
#make-kpkg clean
terus anda jalankan make-kpkg untuk membuat image-linux anda, untuk menjalankan ini anda di perlukan level yang paling tinggi yaitu root, oleh karena itu kita harus menggunakan fakeroot atau sudo, di sini saya menggunakan sudo, perintahnya seperti contoh di bawah ini:
#sudo make-kpkg –initrd –revision=custom.1.0 kernel_image
setelah itu kita akan mendapatkan kernel_image yang ber-extensi *.deb, katakanlah linux_image-2.6.18.4_custom.1.0_i386.deb selanjutnya kita tinggal menginstallnya dengan menggunakan dpkg, caranya seperti contoh di bawah ini :
#dpkg -i linux-image-2.6.18.4_custom.1.0_i386.deb
setelah anda menjalankan perintah tersebut, maka reboot(atau restart) system anda, dan setelah itu boot lah dengan kernel baru anda tersebut. baiklah sekarang kita telah berjalan pada kernel baru kita, sekarang saatnya kita mengpatch iptables kita supaya mendukung layer7 dan menginstallnya pada Debian kita ini.
Sekarang kita akan membuang iptables kita terlebih dahulu dan mendownload iptables baru, untuk membuang iptables, kita bisa melakukannya dengan mengetikan perintah,
#apt-get remove iptables
setelah kita membuat iptables lama kita sekarang kita mendownload source iptables pada site iptables dengan mengetikan perintah berikut ini,
#wget http://iptables.org/projects/iptables/files/iptables-1.3.7.tar.bz2
setelah anda mendapatkan source iptables yang masih dalam format yang ter-kompress, yaitu iptables-1.3.7.tar.bz2 kita perlu meng-extraxnya sekarang dengan menjalankan perintah tar seperti di bawah ini :
#tar xvfj iptables-1.3.7.tar.bz2
anda juga perlu mendownload layer7 protokol, anda bisa mendapatknya dengan mengetikan perintah berikut ini,
#wget http://optusnet.dl.sourceforge.net/sourceforge/l7-filter/l7-protocols-2007-07-27.tar.gz
setelah anda mendapatkan source iptables dan protocols layer7, sekarang kita mulai menambal(patch) iptables kita, sebelonnya tukarlah direktori kita ke, /home/basuki/iptables-1.3.7/, dengan mengetikan perintah berikut ini
#cd /home/basuki/linux-1.3.7/

lalu tamballah(patch) anda dengan mengetikan,
#patch -p1 < ../netfilter-layer7-v2.13/iptables-for-kernel-pre2.6.20-layer7-2.13.patch

setelah anda menge-patch source iptables anda, maka sekarang anda mengacukan iptables anda ke kernel dengan mengetikan perintah,
#make KERNEL_DIR=/home/basuki/linux-2.6.18.4/

dan jalankan perintah berikut untuk mengintalkanya,
#make install KERNEL_DIR=/home/basuki/linux-2.6.18.4/

sekarang coba ketik perintah,
#iptables -V

jika anda menginstall dengan benar maka aq keluar versi dari iptables anda, sekarang kita anggap anda telah melakukannya dengan benar, sekarang yang perlu kita lalukan adalah mengeset protocols layer7-nya, untuk melakukannya kita perlu berpindah ke direktori l7-layer7-2007-07-27, dengan menggunakan perintah cd, yaitu seperti berikut ini,
#cd /home/basuki/l7-protocols-2007-07-27/

setelah anda berada pada direktory l7-protocols-2007-07-27 tadi, maka install protocols tadi dengan mengetikan,
#make install

maka secara otomatis protocol tadi akan di copykan ke direktory /etc/l7-protocols.
sekarang kita perlu mengecek apakah ipt_layer7 telah ada pada komputer kita dengan menjalankan perintah,


#modinfo ipt_layer7

jika ipt_layer7 telah ada pada komputer kita, sekarang kita tinggal memasukan module ipt_layer7 tersebut pada list modul kita, dengan cara,
#modprob ipt_layer7

sekarang coba jalankan perintah iptables berikut ini,
iptables -A INPUT -m layer7 –l7proto http -j ACCEPT

jika tidak ada error yang keluar saat anda menjalankan perintah iptables tadi, maka selamat anda baru berhasil memasang netfilter-layer7 pada mesin anda.

INSTALL DEBIAN MINIMAL

•Maret 6, 2008 • Tinggalkan sebuah Komentar

Tulisan ini bukan ditujukan sebagai tutorial installasi debian. Untuk tutorial silahkan cari di google. Ini lebih kepada sharing pengalaman gw ketika installasi debian.

Gw termasuk tipikal admin yang tidak suka mengoleksi cd distro linux. Jadi kalau bisa install via network (entah itu dari internet atau dari mirror lokal bikinan gw sendiri) gw akan pilih install dari network, dan sebisa mungkin menghindari installasi paket dari repositori cd. Tentu saja untuk awal installasi, gw menggunakan cd. Tapi ya cuma saat install saja.

Pertama-tama tentu kita siapin dulu netinstall cd. Ambil iso nya lalu di burn (contohnya, untuk saat ini gw mengambil debian-40r1-i386-netinst.iso). Setelah cd jadi, langkah selanjutnya tentu saja installasi.

Perlu diingat walaupun nama netinstall cd. Untuk instalasi ini kita tdk membutuhkan akses internet sama sekali. Install seperti biasa, tapi nanti pada saat dia meminta scan local mirror, kita pilih no. Dan singkat cerita, ketika proses installasi selesai yang kita dapatkan adalah debian dengan paket yang terinstall minimal.
Untuk selanjutnya tentu saja kita bisa menginstall paket-paket tambahan lainnya melalui repositori internet atau dari mirror repositori lokal (terdekat dengan network kita).

Biasanya, setelah install, yang pertama gw lakuin adalah mengedit file /etc/apt/sources.list. Ganti dengan mirror lokal favorit gw D

deb http://komo.vlsm.org/debian/ etch main contrib non-free
deb http://komo.vlsm.org/debian-security/ etch/updates main contrib non-free

Langkah selanjutnya adalah mengupdate ke repositori tsb

apt-get update

Sebelum upgrade, gw biasanya cek dulu paket apa saja yang akan diupgrade dan seberapa banyak file yang akan diambil. Kadang dijadikan pertimbangan, terutama kalau gw install pada saat koneksi internet lagi dodol.

apt-get upgrade -s

Ketika sudah yakin mau diupgrade, langsung eksekusi perintah berikutnya.

apt-get upgrade

Beres! Sekarang sistem kita sudah up-to-date. Langkah selanjutnya biasanya gw install beberapa paket penting (menurut gw).

VIM, can’t live without it )

apt-get install vim

Openssh server, penting untuk ngeremote debian kita. Gw lebih seneng mengkonfigurasi debian gw dari remote. Yup, kebanyakan gw install linux utk keperluan server.

apt-get install ssh

Nah sekarang baru bener-bener beres. Debian gw siap untuk dikonfigurasi lebih lanjut untuk keperluan yang sudah gw targetkan.

Pilih Linux Yang Bagus

•Januari 28, 2008 • Tinggalkan sebuah Komentar
Hehehe, judul nya terlalu memprovokasi ya… Harusnya mencari linux yang paling cocok untuk saya.

Banyaknya distro Linux ternyata menjadi kelebihan dan kelemahan yang dimiliki oleh Linux, jangankan untuk user pemula, untuk orang yang sudah sering bergelut di dunia Linux pun tentu tidak akan mudah untuk memilih mana Linux terbaik untuk penggunaan sehari-hari diantara ratusan distro Linux yang ada sekarang ini.

Pertanyaan distro yang paling baik akan selalu menjadi polemik yang asik untuk diikuti oleh para pencinta Linux. Walaupun hasilnya akan selalu subjektif dan dipertentangkan tetapi disitulah seni nya mencintai Linux yaitu pilihan.

Selama beberapa hari ini, kebetulan sebagai penganggur saya sedang kelebihan waktu untuk beraktifitas ;) akhirnya diputuskan untuk mencoba beberapa distro Linux yang saya miliki dan mencari distro mana yang kira-kira paling cocok untuk saya (please note: untuk saya). Jadi belum tentu apa yang cocok untuk saya juga cocok untuk anda D

Saya hanya mencoba distro-distro besar (memiliki banyak pemakai dan dukungan pembuat yang kuat baik itu komunitas atau perusahaan) dan sudah pasti alasan yang paling penting adalah Free dan saya memiliki CD / DVD nya :D .

Ok distro yang saya coba sebetulnya banyak tapi yang memenuhi kriteria diatas adalah, Fedora Core (6), Mandriva (Free 2007), OpenSuSE (10.2), Slackware (11) dan Ubuntu (6.10). Bukan saya tidak mau mencoba distro-distro seperti FrugalWare atau Sabayon tetapi sampai saat ini saya masih belum memiliki CD/DVD nya ) so kalau ada yang mau ngasih untuk saya coba, saya dengan senang hati akan menerima nya hehehehe…

Berikut ini rangkuman pandangan pribadi saya tentang distro-distro yang saya coba, sekali lagi anda pasti memiliki pandangan yang berbeda dan itu hak anda jadi jangan marah ya )

Installasi

Fedora dan Mandriva sebagai distro yang berasal dari satu sumber yang sama yaitu RedHat, memiliki langkah-langkah installasi yang mirip satu sama lain. Langkah-langkah nya bisa dibilang standar tetapi memiliki di akhir installasi dimana Mandriva memiliki opsi untuk mengconfigurasi hasil installasi sebelum reboot untuk pertama kali. Dan ini merupakan point penting yang membuat Mandriva lebih lengkap dari Fedora dalam hal installisasi. Tetapi karena yang saya test adalah versi free dari semua distro, maka Mandriva memiliki kelemahan dimana versi free nya yang hanya satu DVD terasa sangat kurang, apalagi Mandriva free 2007 membundle versi 64bit dan 32bit dalam satu DVD saja yang akhirnya terasa sekali banyak aplikasi yang dipangkas.

Untuk SuSE 10.2 installasi lumayan berbeda dengan langkah lebih pendek tetapi entah kenapa saya selalu menemukan error ketika installasi dan memilih paket aplikasi yang berbeda dengan aplikasi standar. Apakah DVD installer nya yang error atau memang SuSE 10.2 memang seperti itu saya sendiri belum menemukan jawabannya, yang pasti ketika saya install standar tanpa modifikasi apa-apa semuanya berjalan dengan lancar.

Ubuntu yang saya dapat adalah versi Live CD jadi versi inilah yang mendapatkan ranking tertinggi sebagai installasi paling mudah, karena cukup dengan beberapa kali klik saja sudah bisa terinstall dengan baik. Tetapi kemudahan installasi Ubuntu harus dibayar dengan spesifikasi hardware yang lumayan tinggi dari pertama kali load karena berupa Live CD berarti membutuhkan RAM yang besar dan kecepatan baca CD-ROM yang cukup tinggi.

Slackware distro oldschool yang masih mengandalkan installasi berbasis text. Installasi berlangsung sangat cepat dan tidak membutuhkan hardware terlalu tinggi. Tetapi untuk sebagian orang, installasi berbasis text ini masih cukup menyulitkan.

Tampilan

Dari segi tampilan saya sangat terkesan dengan tampilan desktop default dari SuSE 10.2 yang mirip dengan Vista baik itu KDE maupun GNome nya. Mandriva, Fedora dan Ubuntu memiliki tampilan desktop yang minimalis tetapi masih cukup standar. Sementara seperti biasa Slackware memiliki desktop yang standar minim modifikasi jadi saya gak akan terlalu membahas nya disini.

fedora-desktop.gif mandriva-desktop.gif opensuse-desktop.gif

ubuntu-desktop.gif slackware-desktop.gif

Dari contoh screenshoot diatas terlihat perbedaan yang cukup mencolok dari desktop standar suse yang cukup indah. Tetapi terus terang saja, sebagai pengguna Linux yang selalu berganti-ganti distro, tampilan SuSE 10.2 yang indah ini malah jadi hambatan saya untuk memakainya karena dengan tampilan yang cukup berbeda dengan yang lainnya, saya jadi kesulitan untuk mencari aplikasi yang ada di menu tersebut. Perlu adaptasi yang relative lebih lama dibanding berpindah antara distro Fedora, Mandriva dan Ubuntu.

Kelengkapan Paket Aplikasi

Mandriva free, memberikan paket yang lumayan dipangkas habis-habisan untuk menghemat ruang, dikarenakan pada versi ini Mandriva berusaha memasukan versi 64bit dan 32bit dalam satu DVD. Tetapi untuk penggunaan standar saja, Mandriva sudah lumayan lengkap kecuali beberapa aplikasi yang sebetulnya penting tidak dibawa serta dalam paket ini dan hanya disertakan dalam paket Powerpack Plus saja.

Fedora dan SuSE memisahkan distribusi 32bit dan 64bit dalam dvd yang berbeda, sehingga terasa lebih lengkap apabila dibandingkan dengan Mandriva, tetapi tentu saja kekurangannya adalah anda harus memiliki 2 DVD apabila ingin mengkoleksi kedua versi tersebut.

S ementara Ubuntu yang saya terima versi Live CD (sudah tentu berupa CD dan bukan DVD) seperti halnya paket yang installer hanya menyertakan paket-paket penting saja dalam CD nya. Ubuntu lebih mengutamakan supaya pengguna bisa mendapatkan aplikasi yang paling baru yang bisa didapatkan dari repository-repository Ubuntu yang banyak tersebar (diindonesia pun ada mirror nya).

Slackware seperti biasa selalu memberikan distro yang lengkap dalam setiap distribusi nya. Jadi sekali anda dapat DVD Slackware maka lengkap lah sudah apa yang anda bisa dapat dari slackware. Anda tinggal mencari tambahan aplikasi lain dari sumber yang lain.

Control Center

Untuk mempermudah configurasi dan manajemen lainnya, distro-distro Linux saat ini selalu berusaha untuk membuat sebuah control center yang mengumpulkan seluruh tools management baik itu untuk hardware maupun software. Control Center bisa diibaratkan control panel apabila di windows dan untuk yang satu ini, Control Center SuSE 10.2 merupakan yang terlengkap yang pernah saya coba. Kemudian disusul oleh Mandriva Control Center yang makin hari makin bagus dan mudah untuk dipakai.

Sementara Fedora, Ubuntu dan Slackware sepertinya masih mempergunakan menu-menu seperti biasa untuk management nya (tidak dikumpulkan dalam satu group control center). Tetapi intinya sama yaitu mempermudah pengguna.

fedora-control-center.gif mandriva-control-center.gif suse-control-center.gif

Install dan Update Aplikasi

Distro Linux sekarang ini sepertinya sudah mulai ramah update dan install, RPM yang dulu dibanggakan RedHat karena kemudahan installasi nya ternyata memiliki kelemahan yang sangat mengganggu yaitu dependensi. Setiap kali kita menginstall satu aplikasi kita akan diminta untuk menginstall beberapa librari dan dependensi yang kadang bisa membuat proses installasi menjadi sangat menyebalkan.

Untunglah saat ini Fedora Core sebagai penerus RedHat sudah memiliki yum untuk mempermudah installasi, yum mampu mendeteksi dependensi dan secara otomatis menginstall nya. Yum juga memiliki repository yang cukup banyak sehingga mempermudah dalam pemilihan server yang paling dekat dengan kita.

Mandriva tidak mau kalah dengan menciptakan urpmi sebagai installer yang juga mampu mendeteksi dependensi dengan cukup baik. Cuman sepertinya ada satu hal yang membuat urpmi menurut saya tidak sebagus yum yaitu urpmi sering kali menebak aplikasi yang ingin kita install dengan tidak tepat dan kadang main install saja tanpa konfirmasi yang jelas. Misalkan anda ingin menginstall wine (wine is not emulator) maka dengan sengaja atau tidak, urpmi otomatis menginstall gwine padahal itu adalah aplikasi yang berbeda.

SuSE dengan Yast nya memang sangat powerfull, semua ada disana. Cuman sayang di konsol pun yast tetap mengutamakan tampilan berupa menu-menu sehingga kadang malah memperlambat pekerjaan. Tidak seperti urpmi dan yum yang bisa bekerja dalam modus text dengan cepat tanpa banyak menu.

Ubuntu sebagai distro turunan Debian memiliki aplikasi yang sangat powerfull untuk installasi dan update, apalagi kalau bukan apt ) repository yang banyak, dan perintah yang sederhana membuat installasi di Ubuntu sangat mudah apalagi apabila anda memiliki koneksi internet berkecepatan tinggi semuanya serba enak.

Slackware mungkin satu-satunya distro Linux yang saya coba yang tidak memiliki aplikasi yang mampu mendeteksi dependensi dengan otomatis seperti yang lainnya, tetapi dari dahulu slackware sudah memiliki installer yang cukup ramah. Tetapi apabila anda mau sedikit mencari diinternet anda bisa menemukan slapt-get yang memiliki fungsi mirip dengan apt-get di debian.

32bit vs 64bit

Dari hasil percobaan yang saya lakukan, versi 64bit memang memberikan kinerja yang lumayan cukup tinggi tetapi sayang nya belum cukup stabil. Sering kali terjadi crash dan hank ketika dipakai sementara apabila menggunakan versi 32bit memang tidak se cepat versi 64bit tetapi cukup stabil.

Kemudahan pemakaian

Linux saat ini sudah sangat mudah untuk dipakai, bahkan oleh pemula sekalipun. Asalkan oreng tersebut mau sedikit berpikir maka dalam waktu beberapa menit saja sudah sanggup bekerja dengan menggunakan Linux. Jadi tidak ada lagi istilah Linux susah. Linux sudah semudah windows.

Dokumentasi dan Support

Mandriva sebagai distro yang komersial dan hanya memberikan paket free yang lumayan terbatas sekali menjadi Linux yang sangat kurang dalam hal Support dari pihak pengembang, sementara Ubuntu menjadi yang terbaik. Ubuntu memiliki dokumentasi terlengkap yang pernah saya temukan disertai support yang sangat kuat dari pengembang ubuntu (bahkan anda bisa minta CD dengan cuma-cuma).

Fedora sebagai distro lanjutan RedHat memiliki support dan dokumentasi lumayan lengkap dan mudah dicari. Komunitas nya sudah sangat banyak dan dokumentasi yang bertebaran juga sudah sangat mudah untuk dipahami.

SuSE walaupun dikembangkan oleh komunitas, untuk mencari dokumentasi nya di internet pun bukan pekerjaan yang mudah, masih sedikit dokumentasi yang bagus dan mudah dipahami untuk distro ini. Tetapi beruntung sekali tools yang menyertai distro ini bekerja dengan sangat baik sehingga pengguna bisa dengan mudah melakukan konfigurasi OpenSuSE ini.

Slackware seperti biasa Linux Old School. Dokumentasi dari banyak distro bisa dipake untuk Slackware jadi lumayan banyak bertebaran di internet.

Kesimpulan

Kesimpulan dari hasil test ini hmmm… Tidak ada heheheh karena sampai sekarang pun saya masih gonta ganti distro. Sampai suatu saat saya menemukan satu distro yang cocok dihati maka saya akan pakai distro tersebut :) .

Semuanya kembali lagi kepada anda. yang terbaik buat saya belum tentu jadi yang terbaik buat anda.

Tetapi diantara semua tentu harus ada yang lebih mudah dan lebih cocok untuk saya. Sementara ini untuk paket distro free saya menemukan bahwa Fedora lebih mudah dan gampang dari mulai installasi sampai pemakaian dibandingkan dengan yang lain. Ini tidak berarti yang lain menjadi susah, Ini hanya diambil berdasarkan pemikiran secara sepintas dan umum saja dimana orang pasti menginginkan distro yang mudah dipakai, tidak perlu ribet dengan harus terkoneksi ke internet atau mencari-cari aplikasi yang diperlukan di DVD yang lain.

Kayaknya segini saja dulu D udah mulai kerasa pegel ngetik terus..

Catatan: semua gambar adalah milik OSDir.com

Installation Squid Proxy 2.6

•Januari 28, 2008 • Tinggalkan sebuah Komentar


Setelah males-malesan hampir satu bulan akhirnya ada niat juga buat ngisi blog lagi :D .

Squid mungkin cuman satu dari sekian banyak proxy server yang ada tetapi saya yakin squid masih tetap yang paling banyak dipakai. Banyak alasan kenapa orang memakai squid sebagai proxy server diantaranya adalah:

1. Gratis, ya squid gak perlu lisensi macem-macem dan gak harus bayar.
2. Stabil, jarang sekali squid crash atau error kalo bener setting nya tentunya.
3. Cepat, dibanding aplikasi proxy yang lain squid lumayan cepat apalagi dibanding yang under windows.
4. Banyak fitur nya, Proxy mungkin banyak yang gratis mungkin banyak juga yang cepat juga banyak tapi yang fitur nya sebanyak squid sangat susah ditemukan.

OK cukup sudah cuap-cuap nya sekarang kita mulai install squid. Pada bagian ini saya akan mencoba menunjukan cara installasi squid di FreeBSD dan Linux. Biar post di kategori Linux nambah :D .

INSTALLASI

FreeBSD

Semua dilakukan dengan account root.

1. cd /usr/ports/www/squid26
2. make config
3. make install clean

cd /usr/ports/www/squid26 make config make install clean

Pada make config di window configurasi silahkan anda pilih opsi berikut ini (gak harus) biar gak ribet nanti seterusnya:

* SQUID_DELAY_POOLS : untuk mengatur bandwidth
* SQUID_SNMP : kalo mau monitor traffic lewat mrtg
* SQUID_CACHE_DIGESTS : bikin enable cache digests
* SQUID_WCCP : web cache coordination Prot v1
* SQUID_IDENT : Ident lookup
* SQUID_USERAGENT_LOG : user agent header log
* SQUID_ARP_ACL : ACL berdasarkan mac address
* SQUID_PF : kalo mau bikin transparent proxy pake pf
* SQUID_IPFILTER : kalo mau bikin transparent proxy pake ipfilter
* SQUID_KQUEUE : enable kqueue
* SQUID_LARGEFILE : kalo cache dan log lebih dari 2Gb

LINUX

Dengan opsi yang hampir mirip dengan yang saya pakai di BSD kita coba install squid di Linux, jangan lupa cek squid release terakhir dari www.squid-cache.org atau klik link ini http://www.squid-cache.org/Versions/v2/2.6/
·········10········20········30········40········50········60········70········80········90········100·······110·······120·······130·······140·······150

1. w get http://www.squid-cache.org/Versions/v2/2.6/squid-2.6.STABLE5.tar.gz
2.
3. tar -zxvf squid-2.6.STABLE5.tar.gz
4. cd squid-2.6.STABLE5
5.
6. ./configure –bindir=/usr/local/sbin –sbindir=/usr/local/sbin –datadir=/usr/local/etc/squid –sysconfdir=/usr/local/etc/squid –enable-linux-netfilter –enable-delay-pools –enable-snmp –enable-cache-digests –enable-useragent-log –enable-arp-acl –with-large-files –enable-large-cache-files –enable-err-languages=English –enable-default-err-language=English –prefix=/usr/local/squid
7. make
8. make install

w get http://www.squid-cache.org/Versions/v2/2.6/squid-2.6.STABLE5.tar.gz tar -zxvf squid-2.6.STABLE5.tar.gz cd squid-2.6.STABLE5 ./configure –bindir=/usr/local/sbin –sbindir=/usr/local/sbin –datadir=/usr/local/etc/squid –sysconfdir=/usr/local/etc/squid –enable-linux-netfilter –enable-delay-pools –enable-snmp –enable-cache-digests –enable-useragent-log –enable-arp-acl –with-large-files –enable-large-cache-files –enable-err-languages=English –enable-default-err-language=English –prefix=/usr/local/squid make make install

Kemudian silahkan buat satu user bernama squid group squid dengan home /usr/local/squid dan shell /usr/bin/nologin

Kalau anda ngga suka dengan opsi-opsi diatas silahkan rubah.

KONFIGURASI

Untuk memulai configurasi squid silahkan edit file squid.conf atau anda bisa mempergunakan contoh squid.conf dibawah.

1. pico /usr/local/etc/squid/squid.conf

pico /usr/local/etc/squid/squid.conf

Apabila di shell anda tidak terinstall editor pico silahkan gunakan editor yang lain

ok contoh configurasi ini sudah di test dan jalan silahkan edit sesuaikan dengan kebutuhan anda
·········10········20········30········40········50········60········70········80········90········100·······110·······120·······130·······140·······150

1. #tambahkan menjadi “http_port 3128 transparent” untuk transparent proxy
2. #kalau anda tidak suka port 3128 sebagai port default proxy silahkan ganti
3. http_port 3128
4. icp_port 3130
5. #cache peer di set ke proxy yang kita tuju contoh parent proxy seperti berikut ini
6. #cache_peer 202.111.222.33 parent 7001 3130 no-query default
7. udp_incoming_address 0.0.0.0
8. udp_outgoing_address 255.255.255.255
9. hierarchy_stoplist cgi-bin ?
10. acl QUERY urlpath_regex cgi-bin \?
11. no_cache deny QUERY
12. #cache memory silahkan tentukan sendiri
13. #apabila anda menggunakan proxy server untuk keperluan yang lain maksimal memori = 1/4 total memori
14. cache_mem 128 MB
15. cache_swap_low 90
16. cache_swap_high 95
17. maximum_object_size 10240 KB
18. minimum_object_size 0 KB
19. maximum_object_size_in_memory 8 KB
20. ipcache_size 1024
21. ipcache_low 90
22. ipcache_high 95
23. fqdncache_size 1024
24. cache_replacement_policy lru
25. memory_replacement_policy lru
26. #sesuaikan ukuran cache anda disini contoh disini pakai 1Gb
27. cache_dir ufs /usr/local/squid/cache 1000 16 256
28. cache_access_log /usr/local/squid/logs/access.log
29. cache_log /usr/local/squid/logs/cache.log
30. cache_store_log /usr/local/squid/logs/store.log
31. mime_table /usr/local/etc/squid/mime.conf
32. pid_filename /usr/local/squid/logs/squid.pid
33. debug_options ALL,1
34. client_netmask 255.255.255.255
35. ftp_user Squid@
36. ftp_list_width 32
37. ftp_passive on
38. ftp_sanitycheck on
39. ftp_telnet_protocol on
40. unlinkd_program /usr/local/libexec/squid/unlinkd
41. redirect_children 10
42. auth_param basic children 10
43. auth_param basic realm Squid proxy-caching web server
44. auth_param basic credentialsttl 2 hours
45. auth_param basic casesensitive off
46.
47. refresh_pattern ^ftp: 1440 20% 10080
48. refresh_pattern ^gopher: 1440 0% 1440
49. refresh_pattern . 0 20% 4320
50. quick_abort_min 16 KB
51. quick_abort_max 16 KB
52. quick_abort_pct 95
53. negative_ttl 5 minutes
54. connect_timeout 1 minute
55. read_timeout 15 minutes
56. request_timeout 5 minutes
57. persistent_request_timeout 1 minute
58. client_lifetime 5 day
59. pconn_timeout 120 seconds
60. shutdown_lifetime 30 seconds
61.
62. #Recommended minimum configuration:
63. acl all src 0.0.0.0/0.0.0.0
64. acl manager proto cache_object
65. acl localhost src 127.0.0.1/255.255.255.255
66. acl to_localhost dst 127.0.0.0/8
67. acl SSL_ports port 443 563
68. acl Safe_ports port 80 # http
69. acl Safe_ports port 81 # http
70. acl Safe_ports port 21 # ftp
71. acl Safe_ports port 443 563 # https, snews
72. acl Safe_ports port 70 # gopher
73. acl Safe_ports port 210 # wais
74. acl Safe_ports port 1025-65535 # unregistered ports
75. acl Safe_ports port 280 # http-mgmt
76. acl Safe_ports port 488 # gss-http
77. acl Safe_ports port 591 # filemaker
78. acl Safe_ports port 777 # multiling http
79. acl Safe_ports port 4461
80. acl CONNECT method CONNECT
81.
82. http_access allow manager localhost
83. http_access deny manager
84. http_access deny !Safe_ports
85. http_access deny CONNECT !SSL_ports
86. #atur dan sesuaikan dengan ip berapa saja yang ingin anda kasih akses ke proxy
87. #disini di contohkan 192.168.0.1/24 atau 192.168.0.1 – 192.168.0.255
88. acl our_networks src 192.168.0.1/24
89. http_access allow our_networks
90. http_access deny all
91. http_reply_access allow all
92. icp_access allow all
93. miss_access allow all
94. #sesuaikan dengan mail admin proxy anda
95. cache_mgr admin@warnetgue.com
96.
97. cache_effective_user squid
98.
99. logfile_rotate 10
100. buffered_logs off
101. icon_directory /usr/local/etc/squid/icons
102. error_directory /usr/local/etc/squid/errors/English
103. snmp_port 3401
104. snmp_access allow localhost
105. snmp_access deny all
106. snmp_access deny all
107. coredump_dir /usr/local/squid/cache
108. ie_refresh on

#tambahkan menjadi “http_port 3128 transparent” untuk transparent proxy #kalau anda tidak suka port 3128 sebagai port default proxy silahkan ganti http_port 3128 icp_port 3130 #cache peer di set ke proxy yang kita tuju contoh parent proxy seperti berikut ini #cache_peer 202.111.222.33 parent 7001 3130 no-query default udp_incoming_address 0.0.0.0 udp_outgoing_address 255.255.255.255 hierarchy_stoplist cgi-bin ? acl QUERY urlpath_regex cgi-bin \? no_cache deny QUERY #cache memory silahkan tentukan sendiri #apabila anda menggunakan proxy server untuk keperluan yang lain maksimal memori = 1/4 total memori cache_mem 128 MB cache_swap_low 90 cache_swap_high 95 maximum_object_size 10240 KB minimum_object_size 0 KB maximum_object_size_in_memory 8 KB ipcache_size 1024 ipcache_low 90 ipcache_high 95 fqdncache_size 1024 cache_replacement_policy lru memory_replacement_policy lru #sesuaikan ukuran cache anda disini contoh disini pakai 1Gb cache_dir ufs /usr/local/squid/cache 1000 16 256 cache_access_log /usr/local/squid/logs/access.log cache_log /usr/local/squid/logs/cache.log cache_store_log /usr/local/squid/logs/store.log mime_table /usr/local/etc/squid/mime.conf pid_filename /usr/local/squid/logs/squid.pid debug_options ALL,1 client_netmask 255.255.255.255 ftp_user Squid@ ftp_list_width 32 ftp_passive on ftp_sanitycheck on ftp_telnet_protocol on unlinkd_program /usr/local/libexec/squid/unlinkd redirect_children 10 auth_param basic children 10 auth_param basic realm Squid proxy-caching web server auth_param basic credentialsttl 2 hours auth_param basic casesensitive off refresh_pattern ^ftp: 1440 20% 10080 refresh_pattern ^gopher: 1440 0% 1440 refresh_pattern . 0 20% 4320 quick_abort_min 16 KB quick_abort_max 16 KB quick_abort_pct 95 negative_ttl 5 minutes connect_timeout 1 minute read_timeout 15 minutes request_timeout 5 minutes persistent_request_timeout 1 minute client_lifetime 5 day pconn_timeout 120 seconds shutdown_lifetime 30 seconds #Recommended minimum configuration: acl all src 0.0.0.0/0.0.0.0 acl manager proto cache_object acl localhost src 127.0.0.1/255.255.255.255 acl to_localhost dst 127.0.0.0/8 acl SSL_ports port 443 563 acl Safe_ports port 80 # http acl Safe_ports port 81 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 563 # https, snews acl Safe_ports port 70 # gopher acl Safe_ports port 210 # wais acl Safe_ports port 1025-65535 # unregistered ports acl Safe_ports port 280 # http-mgmt acl Safe_ports port 488 # gss-http acl Safe_ports port 591 # filemaker acl Safe_ports port 777 # multiling http acl Safe_ports port 4461 acl CONNECT method CONNECT http_access allow manager localhost http_access deny manager http_access deny !Safe_ports http_access deny CONNECT !SSL_ports #atur dan sesuaikan dengan ip berapa saja yang ingin anda kasih akses ke proxy #disini di contohkan 192.168.0.1/24 atau 192.168.0.1 – 192.168.0.255 acl our_networks src 192.168.0.1/24 http_access allow our_networks http_access deny all http_reply_access allow all icp_access allow all miss_access allow all #sesuaikan dengan mail admin proxy anda cache_mgr admin@warnetgue.com cache_effective_user squid logfile_rotate 10 buffered_logs off icon_directory /usr/local/etc/squid/icons error_directory /usr/local/etc/squid/errors/English snmp_port 3401 snmp_access allow localhost snmp_access deny all snmp_access deny all coredump_dir /usr/local/squid/cache ie_refresh on

START & RUN

Pertama kita bikin dulu cache dengan perintah

1. squid -z

squid -z

permasalahan yang sering terjadi adalah folder cache tidak bisa di tulis oleh user squid, untuk mengatasi nya ketik perintah ini

1. chown -R squid:squid /usr/local/squid/*

chown -R squid:squid /usr/local/squid/*

Kemudian kita coba test dengan perintah

1. squid -NCd1

squid -NCd1

Apabila diketemukan kesalahan config akan terlihat disini. Apabila semua sudah ok silahkan terminate squid dengan ctrl+c

kemudian jalankan squid dengan command

1. /usr/local/sbin/squid -D

/usr/local/sbin/squid -D

Apabila anda ingin squid jalan setiap kali restart ketikan command berikut atau anda bisa masukan squid ke startup script anda.
·········10········20········30········40········50········60········70········80········90········100·······110·······120·······130·······140·······150

1. echo “/usr/local/sbin/squid -D” >> /etc/rc.local

echo “/usr/local/sbin/squid -D” >> /etc/rc.local

Ok deh silahkan dicoba squid nya semoga berhasil :D