My Friends:




February 16, 2007

Installasi Squid di Fedora Core 6

Filed under: linux

note :
Saya membuat tutorial baru tentang squid di ubuntu + delay pools. silahkan liat di potingan saya ttg Instalasi squid + delay pools di Ubuntu 6.10

Waduh… Hari ini saya lagi seneng neh, soalnya tadi iseng2 install squid eh alhamdulillah berhasil :D . Saya menginstall squid dengan topologi seperti ini :

Disini saya akan coba menjelaskan bgmn cara menginstall dan meng-configure Squid sebagai Transparent Proxy. Squid sangat membutuhkan memory yang cukup besar. Maksud saya disini adalah semakin besar memory yg kita punya makin baik.. bukan berarti bila kita mempunyai memory yg kecil tidak bisa melakukan penginstallan Squid, hanya performance dari squid kita akan melambat saja.
O iya, ini pengalaman pertama saya install squid, jadinya klo ada kekurangan2 yg signifikan dan kurang komplit langsung di kritik aja yak :D
Ayolah kita mulai penginstallan Squid di OS Fedora Core 6. Saya menggunakan squid-2.6.STABLE6 (sekarang sudah ada yang STABLE9) pada penginstallan kali ini. Bila anda masih merasa kurang jelas dari penjelasan saya di bawah ini, anda bisa membaca ttg Squid FAQ.

Saya meletakkan squid saya di folder /usr/local/

[root@ghoz local]#tar -zxvf squid-2.6.STABLE6.tar.gz
[root@ghoz local]#mv squid-2.6.STABLE6 squid
==> Rename squid-2.6.STABLE6 menjadi squid

Membuat user untuk menjalankan squid, jadi tidak perlu root untuk menjalankan squid lalu tidak usah memberikan shell kepada usernya.  
[root@ghoz local]#useradd -d /usr/local/squid/ -r -s /dev/null squid > /dev/null 2>&1
Sekarang saatnya kita meng-compile Squid.
[root@ghoz squid]#./configure \
–prefix=/usr/local/squid –enable-delay-pools \
–exec-prefix=/usr/local/squid –enable-cache-diggests \
–enable-poll –disable-ident-lookups –disable-wccp \
–enable-snmp –enable-gnuregex \
–enable-default-err-languages=English \
–enable-err-languages=English \ –enable-removal-policies=heap \
–enable-storeio=aufs,diskd –enable-async-io=24 \
–enable-aufs-threads=24 –enable-linux-filter \
–enable-kill-parent-hack
Keterangan :
–enable-gnuregex : ketika sistem tidak mempunyai "regular expression" atau yg paling biasa kita kenal adalah "regex", squid secara otomatis akan langsung menggunakan GNU Library.
–enable-kill-parent-hack : Ketika squid crash.. dan squid akan restart dengan sendirinya.
–enable-removal-policies=heap : Berguna untuk replacement cache yang telah disimpan, dengan menggunakan heap.. berarti kita dapat menggunakan algoritma LFUDA dan GDSF
–enable-storeio=diskd,ufs : sangat berguna sekali, kecepatan utamanya.
–disable-wccp : Berguna ketika kita menggunakan cisco
–enable-linux-filter : Digunakan untuk membuat transparent proxy
–disable-ident-lookups: mengurasi dos
–enable-auth=basic                         \
–enable-basic-auth-helpers=NCSA    / Berguna ketika squid kita menggunakan atuhentication user
Untuk lebih lengkapnya bisa melihat di helpnya : [root@ghoz squid]#./configure -h
[root@ghoz squid]#make all
[root@ghoz squid]#make install
Sekarang kita akan masuk ke konfigurasi squid.conf
[root@ghoz squid]#vi /usr/local/squid/etc/squid.conf
Ini adalah tambahan2 yang saya letakkan di squid.conf (sisanya default):

    http_port 3128
    hierarchy_stoplist cgi-bin ?
    acl QUERY urlpath_regex cgi-bin \?
    cache deny QUERY
    cache_mem 128 MB
    cache_swap_low 98
    cache_swap_high 99
    maximum_object_size 64 MB
    minimum_object_size 0 KB
    maximum_object_size_in_memory 32 KB
    ipcache_size 2048
    ipcache_low 98
    ipcache_high 99
    cache_replacement_policy heap LFUDA
    memory_replacement_policy heap GDSF
    cache_dir aufs /usr/local/squid/var/cache 10000 23 256
    access_log /usr/local/squid/var/logs/access.log squid
    cache_log /usr/local/squid/var/logs/cache.log
    cache_store_log /usr/local/squid/var/logs/store.log
    log_fqdn off
    cache_effective_user squid
    acl user src 192.168.1.0/255.255.255.0
    http_access allow user

Bila sudah anda tambahkan semuanya.. sekarang saatnya menjalankan squid kita:

Kita mengaktifkan terlebih dahulu cache kita.

[root@ghoz squid]#/usr/local/squid/sbin/squid -z
Jika muncul pesan error, pahamilah terlebih dahulu dari message yang ditampilkan. Apabila message yang ditampilkan ketika pembuatan cache kita error.. periksalah owner dan permission dari folder tersebut (/usr/local/squid/var/cache or /usr/local/squid/var/logs), dan periksa juga apakah ada folder cache di dalam /usr/local/squid/var/. Biasanya kita menggunakan command dibawah ini untuk mengatasi masalah tersebut.
[root@ghoz squid]#chmod 777 /usr/local/squid/var/logs
Memberikan hak pada user squid untuk menjalankan prosesnya, dan memberikan hak terhadap folder squid (/usr/loca/squid/)
[root@ghoz squid]#chown -R squid:squid /usr/local/squid/
Disini saya menjalankan squid tanpa DNS test, check swap yg telah kita create dan No daemon (proses tidak jalan di belakang layar)
[root@ghoz squid]#/usr/local/squid/sbin/squid -SDN
Bila sudah, saatnya kita lihat apakah prosesnya sudah jalan??
[root@ghoz squid]#netstat -pln | grep squid
atau
[root@ghoz squid]#ps -aux | grep squid
tcp  0  0 0.0.0.0:3128     0.0.0.0:*   LISTEN      2953/(squid)
udp  0  0 0.0.0.0:32805   0.0.0.0:*                   2953/(squid)
udp  0  0 0.0.0.0:3130     0.0.0.0:*                  2953/(squid)
udp  0  0 0.0.0.0:3401     0.0.0.0:*                  2953/(squid)

Klo waktu menggunakan perintah netstat keluar seperti diatas ini.. berarti squid telah berjalan… Bila menggunakan perintah ps -aux anda akan mendapatkan tampilan seperti di bawah ini.. dan tandanya squid anda juga sudah berjalan dengan mulus!!! Sekarang saatnya membuat iptablesnya utk redirect ke port 3128.
root  2951  0.0  0.1  4132   588 ?  Ss  17:16  0:00 /usr/local/squid/sbin/squid -SDN

[root@ghoz squid]#echo "1" > /proc/sys/net/ipv4/ip_forward
[root@ghoz squid]#iptables -F -t nat
[root@ghoz squid]#iptables -A PREROUTING -p tcp –dport 80 -j REDIRECT –to-port 3128
Klo iptables telah diterapkan.. buka browser anda dan masukkan IP address si proxy beserta port yang telah kita assignkan untuk port proxy.
Utk Firefox : Tools -> Options -> Advanced -> Network -> Settings
Utk IE : Tools -> Internet options -> Connection -> Lan settings -> "Centangin" Proxy server
Utk Mozzila : Edit -> Preferences -> Advanced -> Proxy

Akhirnya selesai juga pembuatan transparent proxy kali ini. Hihihi… Klo ada tambahan atau kekurangan di dalamnya.. Harap langsung di tanggapi saja yah lewat comments.

Best Regards,

Your friend

26 Comments »

The URI to TrackBack this entry is: http://ghozali.blogsome.com/2007/02/16/installasi-squid-di-fedora-core-6/trackback/

  1. [root@ghoz squid]#vi /usr/local/squid/etc/squid.conf
    sampai pada perintah diatas itu mas…kok ga ada yang akan saya edit..?
    saya pakai pico /usr/local/squid/etc/squid.conf, eh squid.conf-nya kosong melompong..???

    Comment by bingung — March 28, 2007 @ 11:45 pm

  2. Ketika “./configure”, “make” dan “make install” ada muncul pesen error ndak?
    nnti saya upload-in dech squid.conf saya.

    Best Regards,

    Your friend

    Comment by Administrator — March 29, 2007 @ 1:49 am

  3. Mas…
    kalo mau saya ulang lagi…apa saja yang mesti saya hapus..
    saya berusaha ikut dari yang ada di web anda nih..
    paling tidak nanti saya rekam tiap tahapnya biar ketahuan ada error dimana.
    Kawathirnya beda distro beda gaya..itu pikiran saya lho (maklum ga pernah pakai linux, tapi pengen bisa)
    Tks yah..

    Comment by bingung — March 29, 2007 @ 8:57 am

  4. klo mo bener2 dari awal installnya..
    mas bingung masuk ke directory squid mas bingung berada. Dan lakukan seperti ini :
    [root@ghoz ~]#cd /usr/local/squid
    [root@ghoz ~]#make clean
    or
    [root@ghoz ~]#make uninstall

    Saya lupa mas yg mana tuch commandnya, abis dah lama squid saya ndak saya uninstall :D . Di coba2 aja yah. Klo mas bingung mo menggunakan squid yang lama… jangan di “remove” folder squidnya. Tp klo mas bingung mo menggunakan squid terbaru.. di “remove” aja folder squidnya, utk digantikan squid versi terbaru. Klo mo di remove.. lakukan seperti ini :
    [root@ghoz ~]#rm -rf /usr/local/squid

    Klo udah dilakukan seperti diatas. InsyaALLAH mas bingung telah meng-unisnstall squid. Dan lakukan lah dari step awal yang saya berikan untuk menginstall squidnya lagi.

    Best Regards,

    Your friend

    Comment by Administrator — March 29, 2007 @ 5:09 pm

  5. Mas..saya install linux baru suse 10.2..
    pada step dibawah ini kok jadi ga bisa. Padahal urutan sudah saya ikuti semua.

    ./configure
    > –prefix=/usr/local/squid –enable-delay-pools
    > –exec-prefix=/usr/local/squid –enable-cache-diggests
    > –enable-poll –disable-ident-lookups –disable-wccp
    bash: ./configure: No such file or directory
    server1:/home/ngadmin # –enable-snmp –enable-gnuregex
    > –enable-default-err-languages=English
    bash: –enable-snmp: command not found
    server1:/home/ngadmin # –enable-err-languages=English –enable-removal-policies=heap
    > –enable-storeio=aufs,diskd –enable-async-io=24
    > –enable-aufs-threads=24 –enable-linux-filter
    > –enable-kill-parent-hack
    bash: –enable-err-languages=English: command not found

    Mohon saran

    Comment by bingung — March 31, 2007 @ 1:28 pm

  6. bash: ./configure: No such file or directory
    Sepertinya masalahnya mas bingung ketika melakukan “./configure” ini tidak pada di directory squid.
    ini squid punya saya:
    [root@ghoz squid]# pwd
    /usr/local/squid

    Diatas itu adalah letak directory squid sya mas.. coba mas bingung masuk ke directory dimana mas bingung itu meng-extract squidnya.
    Saya tambahkan dech command2nya dan dimana directory saya mengextract (ini dari paling awal sekali):
    [root@ghoz local]#pwd
    /usr/local
    [root@ghoz local]#tar -zxvf squid-2.6.STABLE6.tar.gz
    [root@ghoz local]#mv squid-2.6.STABLE6 squid
    [root@ghoz local]#cd /usr/local/squid
    [root@ghoz squid]#pwd
    /usr/local/squid
    [root@ghoz squid]# ./configure –blablabla (lakukan lah konfigure di directory squid berada)

    Best Regards,

    Your friend

    Comment by Administrator — March 31, 2007 @ 5:38 pm

  7. sedikit share aja mas utk hidden proxy tambahin di file squid.conf

    header_access Via deny all
    header_access Proxy-Connection deny all
    header_access X-Forwarded-For deny all

    trus coba cek di jasakom.com, kelihatan gak ya proxinya

    cmiiw
    salam

    Comment by jomblo_keparat — April 23, 2007 @ 10:22 am

  8. Wah, ada mas jomblo_keparat disini.. dah lama kita tidak bersua mas? hehehe.. bersua secara OL. :D
    Terima kasih banyak yah atas masukannya, Tak cobain ah..!!!

    Best Regards,

    Your friend

    Comment by Administrator — April 23, 2007 @ 5:02 pm

  9. Salam Kenal untuk mas Admin,
    Mas mo minta advice install squid di fedora6..
    Aku dah ngikutin perintah yang mas buat. Namun pada saat mau ./comfigure muncul errroro dibawah ini, padahal saya sudah masuk ke direktori squid yg saya extrak.. Mohon kesediannya untuk mengirimkan advice mas admin ke email saya. atas perhatiaanya, diucapkan terima kasih…

    [root@proxy squid]# ./configure-prefix=/usr/local/squid -enable-delay-pools-exec-prefix=/usr/local/squid -enable-cache-diggests-enable-poll -disable-indents-lookups -disable-wccp-enable-snmp -enable-gnuregex-enable-default-err-languages=English-enable-err-languages=English-enable-removal-policies=heap-enable-storeio=aufs,diskd -enable-async-io=24-enable-aufs-threads=24 -enable-linux-filter-enable-kill-parent-hack
    -bash: ./configure-prefix=/usr/local/squid: No such file or directory

    Comment by letnan_zoo — May 2, 2007 @ 12:00 am

  10. @letnan_zoo : saya telah mengirimkan email ke mas letnan_zoo, dicek ajah yah emailnya.

    Best Regards,

    Your friend

    Comment by Administrator — May 4, 2007 @ 4:29 pm

  11. ./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

    Kepada rekan2 yang mengalami error seperti kejadian letnan zoo coba copy script yang saya tulis ini, semoga itu bisa membantu anda.

    Sepertinya jika kita meng-copy apa yang telah disampaikan diatas, maka ada karakter yang tidak dikenal untuk mengeksekusi perintah ./configure nya. Hal ini dikarenakan karakter(–) (minus-minus) yang seharusnya digunakan tetapi tidak tercopy paste dengan sempurna pada console linuxnya. Sehingga kita harus ‘rajin’ dikit untuk mengubahnya :D

    Comment by Ricky W — July 8, 2007 @ 2:19 am

  12. Loh yang namanya Transparant proxy itu kan kita ga perlu nyeting browser di client…. ini kok malah nyeting portnya sih?????
    mohon penjelasan.

    Comment by Steeve — August 1, 2007 @ 2:28 pm

  13. @Steeve : Sebenernya, nggak usah di setting jg nggak pa2 koq. Hehehe.. :D
    Terima kasih kk Steeve atas koreksinya

    Best Regards,

    Your friend

    Comment by Administrator — August 1, 2007 @ 8:49 pm

  14. mas caranya setting transparent proxy gimana?
    aq menggubakan squid 2.6
    padahal squidku dah aku setting
    “http_port 10.1.2.10:8080 transparent” dan iptablesnya
    “-A PREROUTING -s 10.1.2.0/255.255.255.0 -p tcp -m tcp –dport 80 -j DNAT –to-destination 10.1.2.10:8080″
    tapi brouser saya kok ngak konek sama internet mas. tapi kalau brouser saya tak kasikan settingan proxynya jalan.
    gmn ini solusinya saya salah dari mananya???
    thanks

    Comment by ubaid — August 13, 2007 @ 12:23 am

  15. coba di pasang NAT dech,
    iptables -A POSTROUTING -t nat -s 10.1.2.0/255.255.255.0 -o eth0 -j MASQUERADE

    eth0 disini adalah packet yg keluar dr NIC si server menuju ke NIC proxy.

    di coba aja “http_port” nggak ush pake IP, jd lgsg aja portnya.

    Best Regards,

    Your friend

    Comment by Administrator — August 13, 2007 @ 1:31 pm

  16. bang..ngikutin konfigurasinya… tapi???
    parseConfigFile: line 2889 unrecognized: ‘TAG: cache_effective_user’
    2007/08/27 21:21:40| Creating Swap Directories
    FATAL: Failed to make swap directory /usr/local/squid/var/cache/00: (13) Permission denied
    Squid Cache (Version 2.6.STABLE14): Terminated abnormally.
    maklum newbie… mo belajar…
    mohon tutornya. makasih.

    Comment by lingga — August 27, 2007 @ 9:32 pm

  17. @lingga : koq ada permision denied yah..?? mgkn kamu blom jadi root kali. coba kamu jadi root dulu baru lakukan install squid.

    Best Regards,

    Your friend

    Comment by Administrator — August 27, 2007 @ 10:54 pm

  18. alam kenal……..

    newbie ni maaf yee…..

    klo boleh tanya emenk harus ya di pisah PC router & squid… jd harus ada 2 pc
    (ada yang bilang dengan saya)

    mohon bANTUAN nya………..
    thx

    Comment by g0t0 — September 14, 2007 @ 3:05 pm

  19. Klo bisa seh di pisah kk g0t0.. soalnya squid itu banyak memakan RAM. Semakin besar RAM yang digunakan semakin cepat squid bekerja.
    Klo digabungin takutnya squid tidak bekerja secara optimal k. Walaupun kk gOtO ingin menggabungkan ke dua2nya jg nggak pa2 koq, asalkan di gedein aja RAMnya. :)

    Best Regards,

    Your friend

    Comment by Administrator — September 14, 2007 @ 5:04 pm

  20. salam kenal mas,
    Mas sy sdh cba mengikuti langkah2 yg mas berikan namun pada saat meng-compile setelah perintah ./configure bla..bla..bla sy masukan hasilnya seperti ini:
    checking for a BSD-compatible install… /usr/bin/install -c
    checking whether build environment is sane… yes
    checking for gawk… gawk
    checking whether make sets $(MAKE)… yes
    checking whether to enable maintainer-specific portions of Makefiles… no
    checking for gcc… no
    checking for cc… no
    checking for cc… no
    checking for cl… no
    configure: error: no acceptable C compiler found in $PATH
    See `config.log’ for more details.
    Mohon pencerahannya donk mas…

    Comment by -dp- — September 19, 2007 @ 10:52 am

  21. Menurut saya.. di OSnya mas -dp- itu blom terdapat gcc (compiler). Jadi coba aja mas -dp- menginstall gcc dulu.

    sudo apt-get install build-essential (di Ubuntu)

    nah, klo dah diinstall.. coba lakukan configure ulang. klo msh nggak bisa.. coba install :

    sudo apt-get install g++ (di ubuntu)

    mas -dp- sesuaikan saja dengan command2 di Fedora Corenya. :)

    InsyaALLAH bisa dech. ;)

    Best Regards,

    Your friend

    Comment by Administrator — September 19, 2007 @ 12:32 pm

  22. bila dalam satu VPS ada beberapa IP (misal 4 IP) kita jalankan squid, agar IP outgoingnya bisa jalan semua gemana caranya? pemisahan nya menggungkan port yang d gunakan.

    Comment by airbush — October 21, 2007 @ 5:38 am

  23. Squidnya itu terpisah dr VPS or di VPSnya (yg multiple IP)?
    Klo biar IP outgoingnya bs jalan semua.. coba aja mas airbrush di servernya klo nggak di Squidnya itu aktifin NAT..

    Misalkan IP2 tersebut adalah IP Public (yg 4 IP tsb). Lalu ingin mengakses ke squid yg sama dan agar jalan.. coba aja mas airbrush tambahin di squid.conf
    http_port IP1:80 IP2:80 IP3:80

    Sebenernya saya jg kurang tau mas, soalnya saya blom pernah buat kya gitu.. ini cmn di pemikiran saya aja. :)
    Semoga bs berguna..

    Best Regards,

    Your friend

    Comment by Administrator — October 21, 2007 @ 6:24 am

  24. Squidnya itu terpisah dr VPS or di VPSnya (yg multiple IP)?

    Comment by airbush — October 22, 2007 @ 12:54 am

  25. halo mas, saya dah berhasil jalanin squidnya tapi yang saya ingin client ga perlu setting proxy di browser tapi langsung tambak ke server, solanya kalo gitu ga bisa meail mohon bimbingannya thx

    Comment by opicz — January 21, 2008 @ 10:06 am

  26. kalau squidnya udah install bawaan fedora core 6 gimana mas admin, apa ada lagi perintah perintah yang lain untuk jalanin nnya

    Comment by monoxs — March 9, 2008 @ 3:39 pm

RSS feed for comments on this post.

Leave a comment

Line and paragraph breaks automatic, e-mail address never displayed, HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>



Anti-spam measure: please retype the above text into the box provided.