Senin, 14 Juni 2010

Squid Proxy Pada Windows Dan Linux

Pengertian Squid


Squid adalah sebuah daemon yang digunakan sebagai proxy server dan web cache. Squid memiliki banyak jenis penggunaan, mulai dari mempercepat server web dengan melakukan caching permintaan yang berulang-ulang, caching DNS, caching situs web, dan caching pencarian komputer di dalam jaringan untuk sekelompok komputer yang menggunakan sumber daya jaringan yang sama, hingga pada membantu keamanan dengan cara melakukan penyaringan (filter) lalu lintas. Meskipun seringnya digunakan untuk protokol HTTP dan FTP, Squid juga menawarkan dukungan terbatas untuk beberapa protokol lainnya termasuk Transport Layer Security (TLS), Secure Socket Layer (SSL), Internet Gopher, dan HTTPS. Versi Squid 3.1 mencakup dukungan protokol IPv6 dan Internet Content Adaptation Protocol (ICAP).


Squid pada awalnya dikembangkan oleh Duane Wessels sebagai "Harvest object cache", yang merupakan bagian dari proyek Harvest yang dikembangkan di University of Colorado at Boulder. Pekerjaan selanjutnya dilakukan hingga selesai di University of California, San Diego dan didanai melalui National Science Foundation. Squid kini hampir secara eksklusif dikembangkan dengan cara usaha sukarela.


Squid umumnya didesain untuk berjalan di atas sistem operasi mirip UNIX, meski Squid juga bisa berjalan di atas sistem operasi Windows. Karena dirilis di bawah lisensi GNU General Public License, maka Squid merupakan perangkat lunak bebas.


1. Squid Pada Windows

Menghemat quota bandwidth dengan squid proxy pada windows xp


Pada koneksi ber-quota terbatas seperti Indosat 3G Broadband, Indosat M2, dan Telkomsel Flash, tentunya sangat menjengkelkan jika tiba-tiba quota kita habis. Resikonya untuk beberapa paket akan turun drastis, dan beberapa paket lainnya akan sama sekali tidak bisa digunakan. Contohnya seperti yang saya pakai, Indosat Broadband Eco, jika quota habis akan turun drastis menjadi 64kbps, atau setara dengan koneksi GPRS.

Ada beberapa cara untuk menghemat jatah quota kita tersebut, diantaranya adalah dengan meminimalkan content untuk browsing (ex: disable images), menggunakan compression proxy (toonel, onspeed, dll), dan menggunakan cache proxy. Dan kebetulan saya akan membahas penghematan bandwidth dengan cache proxy menggunakan Squid 2.7.STABLE5.

Kenapa menggunakan cache proxy ? Dengan cache proxy, pada situs-situs yang sering kita kunjungi, content yang harus didownload dan mengurangi jatah quota kita akan lebih sedikit. Karena content-content tersebut akan tersimpan dahulu di cache proxy kita. Jadi secara tidak langsung, jika kita mengunjungi situs tersebut berulang kali, sama saja kita mendownload content dari komputer yang terinstall proxy kita. Kesimpulannya.. lebih cepat dan lebih ngirit bandwidth.

Ok, langsung saja ke proses instalasinya.
Extract file tersebut di partisi mana saja.. terserah, dimana saja boleh. Untuk mempermudah langkah-langkah instalasinya, bisa disamakan dengan saya, atau extract di “C:\squid\“
Setelah semua ter-extract, masuk ke folder “C:\squid\etc\“.
Disana terdapat file-file konfigurasi squid :


Langkah 1:
- cachemgr.conf.default 
- mime.conf.default 
- squid.conf.default 
- squid_radius_auth.conf.default
Kemudian rename keempat file tersebut dengan menghilangkat tulisan “.default“. Sehingga menjadi:

Langkah 2:
- cachemgr.conf 
- mime.conf 
- squid.conf 
- squid_radius_auth.conf

Setelah selesai me-rename keempat file tersebut, kemudian buka file “squid.conf” dengan notepad atau editor kesayangan anda(EditPlus, Ultra Edit, Notepad ++, dan lain-lain).
Cari tulisan (CTRL+F) “TAG: http_port“, kemudian cek apakah di bawah tulisan “# Squid normally listens to port 3128” sudah ada tulisan “http_port 3128” atau belum, jika belum tambahkan tulisan “http_port 3128” di bawah tulisan “# Squid normally listens to port 3128“.
Sehingga menjadi:

Langkah 3:
# TAG: http_port 
# Usage: port [options] 
# hostname:port [options] 
# 1.2.3.4:port [options] 
# If you run Squid on a dual-homed machine with an internal 
# and an external interface we recommend you to specify the 
# internal address:port in http_port. This way Squid will only be 
# visible on the internal address. 
# Squid normally listens to port 3128 
http_port 3128

Cari tulisan (CTRL+F) “TAG: visible_hostname“, kemudian cek apakah di bawah tulisan “# none” sudah ada tulisan “visible_hostname localhost” atau belum. Jika belum, tambahkan tulisan “visible_hostname localhost” di bawah tulisan “# none“.
Sehingga menjadi:

Langkah 4:
# TAG: visible_hostname 
# If you want to present a special hostname in error messages, etc, 
# define this. Otherwise, the return value of gethostname() 
# will be used. If you have multiple caches in a cluster and 
# get errors about IP-forwarding you must set them to have individual 
# names with this setting. 
#Default: 
# none 
visible_hostname localhost

Cari tulisan (CTRL+F) “http_access allow localnet“, kemudian cek apakah dibawah tulisan “http_access allow localnet” sudah terdapat tulisan “http_access allow localhost” atau belum. Jika belum tambahkan tulisan “http_access allow localhost” di bawah tulisan “http_access allow localnet“.
Sehingga menjadi: (langkah 5)


Langkah 5:
# Example rule allowing access from your local networks. 
# Adapt localnet in the ACL section to list your (internal) IP networks 
# from where browsing should be allowed 
http_access allow localnet 
http_access allow localhost

Cari tulisan (CTRL+F) “TAG: dns_nameservers“, kemudian dibawahnya pada tulisan “dns_nameservers“, isi value dns dengan dns ISP nya masing-masing, atau dengan DNS yang biasanya anda gunakan. Sehingga formatnya menjadi “dns_nameservers [primary DNS] [secondary DNS]“. Contohnya ditempat saya menggunakan OpenDNS, sehingga menjadi “dns_nameservers 208.67.220.220 208.67.222.222“.
Sehingga menjadi: (langkah 6)

Langkah 6:
# TAG: dns_nameservers 
# Use this if you want to specify a list of DNS name servers 
# (IP addresses) to use instead of those given in your 
# /etc/resolv.conf file. 
# On Windows platforms, if no value is specified here or in 
# the /etc/resolv.conf file, the list of DNS name servers are 
# taken from the Windows registry, both static and dynamic DHCP 
# configurations are supported. 
# Example: dns_nameservers 10.0.0.1 192.172.0.4 
# Default: 
# none 
dns_nameservers 208.67.220.220 208.67.222.222

Simpan (CTRL+S) “squid.conf” yang baru saja kita edit tadi.
Buka “Command Prompt“, kemudian masuk ke directory “squid” tadi melalui “Command Prompt”. Contohnya adalah dengan mengetik “cd C:\squid\sbin\“.

Langkah 7:
C:\>cd 
c:\squid\sbin\ 
C:\squid\sbin>

Setelah masuk ke directory “cd C:\squid\sbin\” melalui command prompt, kemudian ketik “squid -z“.

Langkah 8:
C:\squid\sbin>squid -z 
2008/11/18 08:45:20| Creating Swap Directories 
C:\squid\sbin>

Masih di “command prompt”, ketik “squid -d l -D“, kemudian tekan “CTRL+C“.

Langkah 9:
C:\squid\sbin>squid -d l -D 
2008/11/18 08:46:17| Starting Squid Cache version 2.7.STABLE5 for i686-pc-winnt. 
.. 
2008/11/18 08:46:17| Running on Windows XP 
C:\squid\sbin>

Masih di “command prompt”, ketik “squid -i”

Langkah 10:
C:\squid\sbin>squid -i 
Registry stored HKLM\SOFTWARE\GNU\Squid\2.6\Squid\ConfigFile value c:/squid/etc/ squid.conf 
Squid Cache version 2.7.STABLE5 for i686-pc-winnt 
installed successfully as Squid Windows System Service. 
To run, start it from the Services Applet of Control Panel. 
Don’t forget to edit squid.conf before starting it. C:\squid\sbin>

Dan yang terakhir (masih di command prompt), ketik “squid -O -D”

Langkah 11:
C:\squid\sbin>squid -O -D 
Registry stored HKLM\SOFTWARE\GNU\Squid\2.6\Squid\CommandLine value -D 
C:\squid\sbin>

Untuk menghidupkan proxy, masuk ke “Control Panel” -> “Administrative Tools” -> “Services“. Kemudian cari nama services “squid” -> “Klik kanan” -> “Start“
Arahkan proxy pada browser anda ke alamat “localhost” dengan port “3128“.
Test dengan mengunjungi situs-situs yang sering anda buka.

Anda juga bisa menghapus services squid tersebut dengan cara mengetikkan perintah “squid -r -n squid” di Command Prompt.

Langkah 12:
C:\squid\sbin>squid -r -n squid Service squid deleted successfully.

Demikian mungkin langkah-langkah yang harus ditempuh untuk menginstall squid proxy di windows XP.
Jika ada yang kurang dengan tulisan ini, mohon tambahannya. Jika ada yang salah dengan tulisan ini, mohon untuk memberi tahu saya. Jika tulisan ini membantu anda, saya akan merasa senang sekali. Jika ada pertanyaan, silakan untuk menanyakannya, dan akan saya jawab semampu saya.
Selamat Mencoba….


2. Squid Pada Linux

Pertama-tama install terlebih dahulu squid melalui synaptic atau melalui command prompt dengan cara :
# apt-get install squid

Konfigurasi
Buka file /etc/squid/squid.conf

#vi /etc/squid/squid.conf
Lalu edit dan tambahkan:

http_port 192.168.1.14:8080
cache_dir ufs /var/spool/squid 1000 16 256 #1000 tergantung #dari space hardisk anda sebaiknya dibuat besar,ukuran dalam Mb
acl net src 192.168.1.0/255.255.255.0 #cari deretan acl
http_access allow net #cari deretan http_access
visible_hostname box #box adalah nama hostname anda

#settingan dibawah ini adalah untuk konfigurasi transparent proxy.
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on

Keluar dan save dari editor vi dengan [Esc] lalu :wq.

Setelah dikonfigurasi lalu restart squid anda

#/etc/init.d/squid restart

Lalu check apakah port squid proxy yaitu 8080 sudah berjalan dalam system.

#netstat –tapn | grep 8080 (enter)

tcp 0 192.168.1.14:8080 0.0.0.0:* LISTEN 3668/(squid)

maka proxy telah berjalan, sekarang tinggal melakukan Transparant Proxy yaitu apabila ada klien yang melakukan akses ke port 80 maka akan langsung menuju port 8080 yaitu port proxy server kita, sehingga aturan-aturan yang ada pada proxy kita dapat diikuti oleh klien kita.

Note: port adalah angka-angka yang menunjukkan service-service tertentu,setiap service memiliki nomor port tertentu.

Pengesetan Transparant Proxy berhubungan dengan IPTABLES
Transparant proxy hanya tinggal melakukan redirect port 80 ke port 8080

#iptables -t nat -A PREROUTING -i eth0 -p tcp –dport 80 -j REDIRECT –to-port 8080

Lalu check dengan menggunakan perintah

#iptables –L –t nat

Akan tampil

Chain PREROUTING (policy ACCEPT)
Target prot opt source destination
MASQUERADE tcp – anywhere anywhere tcp:dpt www redir port 8080

Lalu save settingan iptables anda

#iptables-save

Untuk mengecheck apakah proxy anda sudah transparent lihat file /var/log/squid/access.log

#tail –f /var/log/squid/access.log

Jika anda melihat situs-situr yang klien anda telah akses tampil disana berarti settingan transparent proxy anda berhasil

3)Melakukan blokir situs tertentu menggunakan proxy server.
Buat suatu file seperti di /etc/porn.list.

#vi /etc/porn.list

Dengan berisikan:

.17tahun.com #semua yang memilki domain 17tahun.com akan diblok
.sex.com

Keluar dan save dari editor vi dengan [Esc] lalu :wq.

Isi file URL tersebut tergantung anda.

Lalu buka file squid.conf:

#vi /etc/squid/squid.conf

Lalu masukkan seperti dibawah ini:

acl blok url_regex -i “/etc/porn.list” #masukkan dideretan baris ACL
http_access deny blok #masukkan dideretan paling atas http_access

Keluar dan save dari editor vi dengan [Esc] lalu :wq.

Setelah itu restart squid anda

#/etc/init.d/squid restart

Coba anda buka di browser klien lalu buka situs www.17tahun.com atau situs yang tadi anda masukkan di didalam file /etc/porn.list.Jika ada tulisan Access Denied berarti anda telah berhasil!

Cara Kerja

Squid pertama-tama akan memeriksa request yang datang. Jika squid diset dengan autentikasi tertentu, squid akan memeriksa autentikasi user terlebih dahulu. Autentikasi ini termasuk subnet area, user account, jenis file yang direquest, alamat situs tujuan, dan properti-properti yang telah diset pada file konfigurasi squid. Jika lolos dan telah sesuai dengan konfigurasi, request tersebut kembali diperiksa apakah objek yang diminta telah berada di cache. Jika sudah ada maka proxy server tidak perlu melanjutkan request ke internet tetapi langsung mereply request dengan objek yang diminta.

3 komentar:

Anonim mengatakan...

They appear in coronary heart-breaking colours and patterns to arrest the hearts and fingers
of gals. EuroHandbag has a wonderful line of
gucci bags and Gucci hobo. Gucci Hysteria Bag launched in 2008
is the masterpiece of Frida Giannini's style. These Gucci handbags will fulfill your pleasure and self-assurance largely. http://eco.guyana.virtualhealthlibrary.org/tiki-index.php?page=UserPagemerissaamundson

Anonim mengatakan...

If a Gucci purse looks insubstantial, muted, or usually "off", you should not squander your money.
The most common form of Gucci bag is the Gucci hobo
bag. It makes the walks and words and phrases
to occur with the special fashion and impact. Gucci styles are often manufactured to be equally sophisticated and timeless.
http://articlesites.info/Learn-The-Insider-Secrets-To-Dooney--Bourke.
htm

Anonim mengatakan...

I know this if off topic but I'm looking into starting my own weblog
and was curious what all is needed to get set up?
I'm assuming having a blog like yours would cost a pretty
penny? I'm not very internet smart so I'm not
100% certain. Any tips or advice would be greatly
appreciated. Thanks

my web page :: get your girlfriend back - wikipedia.org -