Setting proxy server ini saya dapatkan dari situs http://www.ubuntulinux.or.id. Silakan dinikmati. Saran dan kritik ke penulis (devratt@yahoo.com).
Step by step..ikutin ajah…
- Pertama-tama install terlebih dahulu squid melalui synaptic atau melalui command prompt dengan cara :
# apt-get install squid - Setelah selesai maka Squid langsung dapat di konfigurasikan dengan cara :
# vi /etc/squid/squid.conf - Tetapi sebelum di edit terlebih dahulu backup dulu file aslinya agar kalau rusak bisa dikembalikan ke default :
# cp /etc/squid/squid.conf /etc/squid/squid.conf.bak - Baru kemudian kita mulai bermain-main dengan konfigurasi script Squid :# vi /etc/squid/squid.conf
Maka akan muncul file konfigurasi squid yang sangat panjang, berikut langkah-langkah yang harus diperhatikan….
- HTTP Port : Merupakan port yang digunakan untuk menjalankan Squid
http_port 3128 - Visible Host Name : Agar jika terjadi error Squid dapat menemukan hostname yang valid
visible_hostname myrhdqp1.kas.com - Cache Manager : Untuk mendefinisikan email address dari Cache Manager Squid
cache_mgr ardhian@kas.com - Direktori Cache Squid : Mendefinisikan letak direktori squid beserta besarannya.
Angka 500 menunjukkan ukuran direktori dalam MB
Angka 16 menunjukkan jumlah sub direktori tingkat 1
Angka 256 menunjukkan jumlah subdirektori tingkat 2 dari subdirektori tingkat 1
Jumlah diatas makin besar makin baik
cache_dir ufs /var/spool/squid 500 16 256 - Filtering : Ini merupakan bagian terpenting dari Squid, dengan ini kita bisa mngatur rule-rule, dari mulai siapa saja yang bisa mengakses internet sampai website apa yang diizinkan untuk di akses.Access List : Siapa saja yang dapat mengakses Internet
perintah : acl it_user src 192.168.1.1/255.255.255.255
acl : merupakan perintah access list
it_user : nama user yang memiliki IP atau group
src : merupakan source ip yang digunakan, bisa menggunakan range jika ingin membuat group
ex : acl group-it src 192.168.1.1-192.168.1.12/255.255.255.255Filtering Waktu : Memberikan izin akses berdasarkan waktu dan hari
perintah : acl waktu-akses time MTWHFA 08:00-16:00
acl : perintah access list
waktu-akses : caption untuk perintah acl
time : perintah squid utk mendefinisikan waktu
MTWHFA : merupakan perintah squid untuk mendefinisikan waktu
M : Monday, T : Tuesday, etc…..
08:00-16:00 : Merupakan waktu yang diperbolehkan untuk memberikan akses internet ke penggunaFiltering Website : Memfilter website apa saja yang tidak boleh diakses oleh pengguna.
Sebelumnya harus dibuat dulu suatu dokumen yang berisikan list-list url yang akan diblock.
misal : # vi /etc/squid/pornourl.txtkemudian isikan dengan :
www.worldsex.com
www.17tahun.com
dllLalu berikan perintah squid pada file Squid.conf dengan perintah :
acl blokporno dstdomain “/etc/squid/pornourl.txt”Filtering Keyword : Memfilter keyword yang dimasukkan oleh para pengguna, misalkan pengguna memasukkan kata ’sex’ di google maka Squid akan membloknya.
Sebelum menambahkan perintah di Squid.conf, anda harus membuat file yang berisikan keyword-keyword yang akan diblok dengan perintah :
# vi /etc/squid/keywordblock.txtLalu isi dengan kata-kata yang akan di blok :
ex : sex
porn
fuck
dll….Dan berikan perintah di Squid.conf dengan perintah :
acl keywordblok url_regex -i “/etc/squid/keywordblock.txt”
Perintah-perintah filter tersebut sudah cukup untuk membuat Squid Server sederhana, langkah berikut adalah memberikan hak akses pada aturan-aturan yang telah dibuat sebelumnya. Di Squid perintahnya dinamakan http_access. Perintahnya adalah sebagai berikut :
http_access deny blokporno # mendeny semua url yang terdapat pada acl blokporno
http_access deny keywordblock # men-deny keyword yang ada pada acl keywordblock
http_access waktu-akses it_user # Memperbolehkan acl waktu-akses pada acl user micokelana
http_access deny all # Men-deny semua user yang tidak terdaftar pada squid.confhttp_reply_access allow all #default
icp_access allow all #defaultKemudian jangan lupa men-save file konfigurasi squid.conf yang telah kita edit dengan menggunakan perintah :
:wq #w : menyimpan q: keluar (Perintah vi)Lalu pada command terminal anda ketikan perintah ;
# squid -zFungsi : untuk membuat direktori cache yang telah kita buat pada perintah squid.
- Transparent Proxy
Merupakan suatu teknik agar Squid Proxy menjadi transparent atau tidak terlihat, maksudnya jika biasanya kita memasukkan alamat proxy pada setiap browser (firefox, etc..), jika transparent proxy diterapkan maka pada browser tidak akan kelihatan kita memasukkan alamat proxy kita.Sebelum memasukkan perintah transparent proxy pada squid, maka kita harus melakukan perintah iptable agar dapat meredirect port yang ada pada komputer client. Maksudnya jika squid kita set pada port 3128, maka permintaan client yang umumnya internet itu berada pada port 80 maka kita harus meredirect port 80 dari client tersebut ke port proxy kita yang berada pada port 3128.IP Forwarding, agar transparent proxy dapat diterapkan, maka kita harus mengaktifkan Ip Forwarding dengan memberikan nilai 1 pada file “/proc/sys/net/ipv4/ip_forward” dengan cara :
# echo 1 > /proc/sys/net/ipv4/ip_forward
Tetapi perintah tersebut harus kita jalankan auto startup, agar jika komputer squid mati kita tidak perlu repot2 menjalankan perintah tersebut secara terus menerus. Tutorial yang ditulis oleh M Furqon T, dapat kita jadikan pedoman untuk melakukan hal ini.
Berikutnya kita harus menjalankan ip_tables agar client dapat meredirect port squid server kita dengan perintah :
# iptables -A PREROUTING -t nat -p tcp –dport 80 -j REDIRECT –to-port 8800Kemudian restart proxy dengan perintah :
# /etc/init.d/squid restart
Semoga bermanfaat.
About Penulis
Ardhian – seorang linux geeks yang saat ini bekerja sebagai Basis (Administrator sistem SAP). Saat ini juga memegang sistem HPUX dan sebagai DBA Oracle. Pengelola toko linux online (http://linux-shop.siteburg.com). Penulis merupakan konsultan freelance untuk sistem Linux, migrasi windows ke Linux, network consultant dsb. Penulis bisa dihubungi di devratt@yahoo.com.



wah keren tuh.. terusin sharing ilmu nya. tapi buat dunk server yang lain, bind, ftp, mail, web dll. ok maju trusss
Comment by dimas — August 12, 2006 @ 7:50 pm
mas, mau nanya.. kalo proxy server itu sejajar (1 network class) dengan router, sedangkan yg ingin di batasi dengan ACL adalah network internal di bawah router, itu ada penambahan di firewall routernya ya? make DNAT? aku masih bingung ni.. mohon penjelasannya.
Terima kasih..
Btw, very very nice tutorial!
Comment by aunk — July 20, 2007 @ 9:59 pm
Salam,
saya pribadi saran agar proxy ditaruh dibawah firewall. jadi sebaiknya router dilengkapi firewall.
Bisa pake DNAT (sangat riskan dan tidak disarankan).
ardhian
Comment by ardhian — July 21, 2007 @ 8:48 am
[...] Setting Transparent Proxy Server menggunakan Ubuntu 5.10 Setting Transparent Proxy Server menggunakan Ubuntu 5.10 [...]
Pingback by Setting Transparent Proxy Server menggunakan Ubuntu 5.10 « Hadiasep MYBlog — August 23, 2007 @ 1:14 pm
# iptables -A PREROUTING -t nat -p tcp –dport 80 -j REDIRECT –to-port 8800
perintah diatas itu nulisnya dimana mas?apa di terminal?
saat ini saya pakai server ubuntu 6.
tapi ketika saya coba ketikkan perintah diatas kok muncul error :”bad argument 80″, itu kira2 apanya yang salah mas?
lalu gimana saya seting transparent proxy?
Comment by romeo — October 22, 2007 @ 10:49 am
gmn y crx membuat DNS ato DHCP menggunakan ubuntu 5.10
Comment by dini — November 17, 2007 @ 9:37 am
#iptables -A PREROUTING -t nat -p tcp –dport 80 -j REDIRECT –to-port 3128
jangan lupa perintah di atas di letakkan di /etc/rc.local
g’ pake #
Comment by aziz — November 19, 2007 @ 1:11 pm
#iptables -A PREROUTING -t nat -p tcp –dport 80 -j REDIRECT –-to-port 3128
eh,, maaf kurang min (-) di –to-port
maaf yha,,
Comment by aziz — November 19, 2007 @ 1:20 pm
Terima kasih, kebetulan konfigurasi diatas memang sedang saya perlukan. thank you again.
Comment by freeriki — November 26, 2007 @ 7:50 pm
saya men-setting squid.conf di ubuntu 7.04 saya dan setelah saya jalankan muncul tulisan :
2007/12/10 17:06:03| ACL name ‘all’ not defined!
FATAL: Bungled squid.conf line 30: http_access deny all
Squid Cache (Version 2.6.STABLE5): Terminated abnormally.
Yang bikin bingung adalah
1. Isi dari squid.conf punya di server tidak ada sama sekali tentang ‘http_access deny all’
2. Diminta mendefinisikan ‘all’ dalam ‘http_access deny all’
Mohon pencerahannya
Comment by yoseph handoko — December 10, 2007 @ 5:12 pm
salam,
statement “http_access deny all” harus ada mas meskipun nantinya semua boleh mengakses internet.
Statement ini diletakkan dibarisan paling bawah dari ACL. Fungsinya untuk melakukan deny pada setiap request.
Misal Anda ingin semua user di jaringan (misal jaringan 192.168.0.0) dibolehkan untuk mengakses internet maka susunannya.
http_access allow jaringanku
http_access deny all
Kalo Anda balik, misal jadi seperti ini :
http_access deny all
http_access allow jaringanku
Maka dalam 1 jaringan (jaringanku) tidak akan bisa mengakses internet.
semoga membantu.
ardhian
Comment by ardhian — December 11, 2007 @ 8:35 am
bagaimana sih supaya saat kita buka browser itu tampilan awalnya langsung ke web tertentu, disemua client tanpa harus di set browsernya apakah bisa menggunakan proxy.
Terimakasih
Comment by Agung — January 28, 2008 @ 4:55 pm
ass
pengen cari tau gimana cara membuat proxy transparen dengan debian woody kernel 2.2.20
Comment by yoso — February 16, 2008 @ 4:06 pm
mas aku udah nerapin untuk
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -A PREROUTING -t nat -p tcp –dport 80 -j REDIRECT –to-port 3128
tapi kok tetap aku setting untuk ip dan port dari proxy ku
sedangkan topologiy ku kayak gini
internet -> switch -> client dan proxy
bisa bantu gak cara yang tepat
soalnya aku butuh banget ya mas please
Comment by haris — April 4, 2008 @ 4:25 pm
maksudnya aku gak bisa langsung untuk nerapin transparent proxynya (harus mengisi di browser client)
Comment by haris — April 4, 2008 @ 4:27 pm
Mas kok squidku no running copy aja ya…..
knapa tuch, padahal konfigurasinya udah sama
Comment by echo — July 10, 2008 @ 8:05 pm
mampir mas
Comment by ndewo — October 22, 2009 @ 11:46 am