Lusca Proxy Untuk IPFire

Lusca proxy untuk IPFire adalah addons tidak resmi (unofficial) untuk IPFire – sebuah distribusi linux untuk firewall.  Pada dasarnya IPFire sudah memiliki web proxy sendiri yang diporting dari advanced proxy untuk IPCop dan Smoothwall, namun selalu di update menyesuaikan dengan rilis terakhir squid cache (versi 3.x). Lusca memiliki kemampuan dan stabilitas yang baik dalam melakukan web caching  walaupun dibuat berbasis squid 2.7. Its oldy, but mighty.

Addons Lusca untuk IPFire terdiri dari binari Lusca versi stabil yang dikompilasi dengan menitikberatkan pada kinerja dan fleksibilitas dalam melakukan web caching. Lusca proxy untuk IPFire terintegrasi dengan baik dengan semua fitur yang sudah terdapat didalam IPFire dan dapat diatur dengan mudah lewat antarmuka web. Selain itu, tuning tambahan pada konfigurasi Lusca addons ini di optimasi untuk melakukan caching website-website terkemuka di Indonesia, dan juga caching beberapa games online.

System requirement :

  • IPFire 2.11 Core Update 61

ISO image untuk IPFire 2.11 Core Update 61 dapat didownload dari link dibawah ini :

Prerequisite :

PENTING! Sebelum addons lusca di instal, pastikan anda sudah melakukan konfigurasi squid bawaan IPFire dengan mengklik “Save and Restart” di halaman interface web, tab “Networking” di bagian pengaturan proxy. Hal ini berguna agar IPFire dapat meng-generate acl-acl yang akan digunakan oleh squid dengan sempurna.

Cara instalasi Lusca proxy untuk IPFire :

# wget http://cachebox.googlecode.com/files/ipfire-lusca-beta.tar.gz
# tar -zxvf ipfire-lusca-beta.tar.gz
# cd ipfire-lusca-beta
# ./install

Jika anda menggunakan core updates terbaru, anda juga dapat melakukan instalasi Lusca. Yang perlu diperhatikan adalah, setelah anda selesai meng-ekstrak installer nya, edit lah file “install” dengan editor kesayangan anda. Carilah tulisan if ($core_release !~ 61) dan ganti menjadi if ($core_release !~ 62), dimana angka “62” adalah contoh core updates yang anda gunakan. Sesuaikan nilai ini dengan core updates yang anda gunakan!

Untuk mengetahui informasi versi core updates yang didukung dan kompatibel oleh Lusca proxy untuk IPFire ini, silakan bergabung di grup Facebook kami : http://www.facebook.com/groups/ipfire.id/.

Setelah proses instalasi selesai, akseslah halaman antarmuka web (web GUI) untuk pengaturan web proxy (tab network). Jika Lusca terinstal dengan baik, maka pada bagian squid cache version akan tampak seperti dibawah ini :

 lusca gui ipfire

Klik pada tombol “Save and Restart” untuk menyimpan seluruh konfigurasi dan memulai ulang (restart) web proxy.

Contoh statistik Lusca yang sudah running :

lusca performance ipfire1

*ps. HTTP request terlihat kecil, karena sebagian besar klien yang saya layani online dari gadget atau smartphone.

Catatan :

  • Lusca addons untuk IPFire ini dapat didistribusikan dan dimodifikasi secara bebas dengan menyertakan credit untuk penulis asli.
  • Addons ini dibuat sebagaimana-adanya (as-is) tanpa ada dukungan resmi dan segala resiko atau kerugian yang diakibatkan dari addons ini berada diluar tanggung jawab penulis.

Credits :

  • IPFire development team (thanks for developing this awesome firewall)
  • Lusca development team
  • Lusca proxy installer based on advanced proxy installer by M. Sondermann
  • URL rewriter by Chuddy Fernandez and Ucok Karnadi
  • Alexa

176 Comments

  1. Ivan

    Klo cara clear cache nya gimana bro? ane udah coba pencet clear cache dari pengaruran web nya, tapi ga ngefek, tetep ga kehapus cache nya. klo command via putty gimana caranya.

    • fazar

      rm -rf /var/log/cache/*

      kemudian jangan lupa jalankan squid -z untuk membuat cache swap yg baru. semoga bermanfaat.

  2. Mas Fazar…saya ada beberapa pertanyaan nih..mohon pencerahannya :

    1. Setelah saya coba buka cache hit proxy via putty dengan cara > # squidclient -h -m mgr:info , ngngak bisa mas ….., dan muncul tulisan >> client: ERROR: Cannot resolve -m: Host unknown.( ini link capturenya http://i50.tinypic.com/fok7y9.jpg ) . Apa solusinya ??

    2. Arahan dari mas diatas soal ” kesalahan dari NAT nya ” sdh bisa ter atasi, tapi ada yang aneh setelah saya cek proxy di MyIP Website !! Muncul gambar seperti gini capturenya http://i50.tinypic.com/686gko.jpg . Hasilnya ….IP Publik bisa saya PING dari jaringan lain ( Laptop + Modem Smart ) tapi ……….kalau saya pakai setting IP Publik dan Port Proxy nya di browser ….ngngak bisa DIRECT ke Internet dan muncul tulisan ” Proxy Refuse Connection ” . Gimana solusinya mas ??

    Mohon pencerahannya …Thanx before !!

    • fazar

      1. formatnya gini (misal ip green ane 192.168.1.1) -> squidclient -h 192.168.1.1 -m mgr:info
      2. jelas.. karena acl yg mengizinkan ip address dari luar tidak dibuatkan. saran ane, jangan izinkan akses proxy dari luar, karena akan menjadi mesin proxy masbro sebagai open proxy dan dapat disalahgunakan oleh pengguna proxy dari user.

      semoga bermanfaat dan good luck!

  3. Ivan

    Mau tanya lagi bro, klo misal cache nya udah penuh itu otomatis menimpa cache yg lama2 sama yg baru(tapi tetep penuh ya berarti) ato musti clear cache nya? punya saya udah jalan semingguan udah 23% (dari 100GB total) aja space yg kepake. Terus satu lagi, memori usage nya pas lama2 selalu mentok ke 98% ya, walopun ane udah tambah kapasitas RAM nya juga tetep mentok ke 98%, klo gitu jadi masalah ga? klo masalah ya apa ada solusinya? :D Thanks sebelom nya, maap banyak nanya hehe

    • fazar

      disinilah cache/memory replacement policy berperan, dengan melakukan purging/penghapusan dan replacement/penggantian object yg udah stale serta mengatur agar ukuran cache berada diantara swap cache minimum dan maksimum. squid melakukan semuanya secara otomatis, tanpa harus melakukan clear cache secara manual. singkatnya, ndak perlu dilakukan clear cache.

      seminggu 23% … hmm, kalo emang sesuai dengan aktivitas browsing klien ya hal tsb tetep bisa dimaklumi, yg jelas jangan alokasikan cache lebih besar dari 75% kapasitas harddisk.

      penggunaan memory yg besar-besaran adalah hal normal yg dilakukan oleh squid, karena squid juga menyimpan object kedalam memory. alasannya adalah time response dan kecepatan pengambilan object di memory lebih cepat ketimbang harddisk (menghasilkan TCP_MEM_HIT). walaupun ram ditambah terus menerus, squid tetep akan menggunakan memory dalam jumlah besar. hal ini normal kok. don’t worry! :)

  4. Posisi Mozilla (setting network No Proxy ) tapi kalau disetting proxynya sih terdeteksi, berarti khan PROXY nnya tidak direct ke PUBLIK ? Gimana caranya agar walau Mozilla tidak disetting akan tetap terdeteksi oleh MyIP website bahwa kita menggunakan PROXY yang berasal dari IP PC proxy…..sama seperti kalau saya menggunakan PROXY Internal mikrotik akan terdeteksi secara otomatis IP proxy yang berasal dari mikrotik…

    Maaf mas bro…ada yang kelupaan nih…

    Tadi pas ane coba cek PROXY OUT di http://www.whatismyip.com koq PROXY TIDAK TERDETEKSI ?? dan tertulis NO PROXY DETECTED !! Apa ada solusi nya masbro ??
    Thanx Before !!

    Mohon pencerahannya yah bro …hehehe

    • fazar

      kalo gini sepertinya ada masalah di nat. coba masbro pake route.

  5. Mas Fazar…sy coba buka cache hit via putty dengan cara

    # squidclient -h -m mgr:info > ngngak bisa, dan muncul tulisan

    client: ERROR: Cannot resolve -m: Host unknown.

    Apa yang salah yah ? ini link picturenya >> http://i50.tinypic.com/fok7y9.jpg

    Mohon pencerahannya….

  6. bang…Proxy Eksternal IPFire + Mikrotik RB750 punya saya sdh jadi….memang DAHSYAT IPFire bang…
    Tapi ada beberapa pertanyaan saya nih…maaf kalau skalian banyak pertanyaannya, soalnya sudah 7 hari sy oprek IPFire..pertanyaannya gini :

    1. Gimana cara menghapus CACHE IPFire yang telah tersimpan itu ?
    2. Gimana melihat CACHE HIT IPFire via ROOT lewat PUTTY ?
    3. Gimana cara melakukan RESTART / SHUTDOWN via root PUTTY ?
    4. Apa manfaat settingan bagian NETWORK > Cache Management
    – Memory replacement policy = LRU ?
    – Cache replacement policy = LRU ?
    Gimana kalau saya merubah menjadi …..
    – Memory replacement policy = heap GDSF ?
    – Cache replacement policy = heap LFUDA ?
    sama seperti settingan “seniornya IPFire” ?
    5. Apa manfaat memperbesar Memory cache size (MB) = 2 dan Harddisk cache size (MB) =
    50 pada nilai settingan standart ??

    Mungkin cukup itu dulu pertanyaan saya bang…maaf kalu agak panjang dan terima kasih sebelumnya. !!

    • fazar

      wah banyak pertanyaannya nih.. oke deh ane coba jawab satu-satu. :)

      1. menghapus cache secara keseluruhan ya? matikan proxy kemudian rm -rf /var/cache/* (sayang cache nya diapus.. hehe).
      2. periksa cache hit / cache stats via putty : squidclient -h -m mgr:info
      3. restart bisa pake perintah “reboot” tanpa tanda kutip, shudown bisa pake perintah “shutdown -h now”
      4. network > cache management, bagian cache replacement policy. ini adalah mekanisme bagaimana squid akan melakukan penghapusan/penggantian object dalam cache yg “busuk” / stale didalam memory (memory replacement) atau didalam harddisk (cache replacement). LRU adalah mekanisme bawaan squid (standar), dan masbro bisa menyesuaikan/mengganti settingnya sendiri. GDSF me-utilisasi hit pada object-object berukuran kecil, dan LFUDA me-utilisasi hit pada object-object berukuran besar. setting yg seperti masbro ganti cocok untuk lingkungan gamecenter/warnet.
      5. Memory cache size (MB) atau tag cache_mem adalah alokasi space memory untuk object yg “sedang lewat” ke klien / intransit, hot-object dan negative-cached object. besarannya silakan coba 6 sampai 12 mb. Harddisk cache size (MB) / cache_dir adalah alokasi cache didalam harddisk, ini gedein aja mas.. 1 gb = 1024 mb. semakin besar kapasitas memori fisik / RAM, semakin besar juga kita dapat mengalokasikan besaran cachenya. kalo ram 2 gb, bisa aja harddisk cache nya di naikin jadi 102400 mb (10gb) tentunya dengan menyesuaikan spesifikasi dan keperluan ditempat masbro.

      demikian yg ane tau, silakan dikoreksi kalo ada kesalahan. semoga bisa membantu.

      • Waaw …terima kasih banyaak masbro, alhamdulillah ane ucapkan semoga ilmu yang bermanfaat masbro Fazar tetap diberikan berkah dan Rahmat dari Allah,SWT..Amin

        Oh iya masbro…ane akan tetap trus ber-eksperiment IPFire ini, dan jangan bosan-bosan yah masbro. Insya Allah hasil percobaan ane tentu pasti akan ane bagi ilmunya buat rekan2 lain dan masbro Fazar…
        Kita sama-sama belajar demi kemajuan Networking Indonesia dan IPFire … :)

        • fazar

          sama-sama masbro. kalo dirasakan ipfire cukup bermanfaat, pertimbangkanlah memberikan donasi di ipfire.org – sukses selalu buat masbro!

  7. Ivan

    Di forum ipfire bingung nanya nya :D. musti english soalnya. kalo max object size udah ane set 128MB. cuma tinggal video nya ada sepertinya. Statistik nya seperti ini (nyala dari pagi tadi ampe sekarang) :
    Connection information for squid:
    Number of clients accessing cache: 11
    Number of HTTP requests received: 91821
    Number of ICP messages received: 0
    Number of ICP messages sent: 0
    Number of queued ICP replies: 0
    Number of HTCP messages received: 0
    Number of HTCP messages sent: 0
    Request failure ratio: 0.00
    Average HTTP requests per minute since start: 195.9
    Average ICP messages per minute since start: 0.0
    Select loop called: 2839213 times, 9.907 ms avg
    Cache information for squid:
    Request Hit Ratios: 5min: 18.0%, 60min: 21.6%
    Byte Hit Ratios: 5min: 3.5%, 60min: 36.2%
    Request Memory Hit Ratios: 5min: 6.4%, 60min: 3.6%
    Request Disk Hit Ratios: 5min: 28.2%, 60min: 56.2%
    Storage Swap size: 1849160 KB
    Storage Mem size: 4092 KB
    Mean Object Size: 19.82 KB
    Requests given to unlinkd: 0
    Median Service Times (seconds) 5 min 60 min:
    HTTP Requests (All): 0.49576 0.33943
    Cache Misses: 0.58309 0.52331
    Cache Hits: 0.00091 0.00091
    Near Hits: 0.11465 0.10857
    Not-Modified Replies: 0.00091 0.00091
    DNS Lookups: 0.00000 0.00000
    ICP Queries: 0.00000 0.00000
    Resource usage for squid:
    UP Time: 28128.240 seconds
    CPU Time: 175.262 seconds
    CPU Usage: 0.62%
    CPU Usage, 5 minute avg: 1.46%
    CPU Usage, 60 minute avg: 0.92%
    Process Data Segment Size via sbrk(): 19840 KB
    Maximum Resident Size: 99888 KB
    Page faults with physical i/o: 0
    Memory usage for squid via mallinfo():
    Total space in arena: 19972 KB
    Ordinary blocks: 18900 KB 396 blks
    Small blocks: 0 KB 0 blks
    Holding blocks: 2792 KB 2 blks
    Free Small blocks: 0 KB
    Free Ordinary blocks: 1071 KB
    Total in use: 21692 KB 95%
    Total free: 1071 KB 5%
    Total size: 22764 KB
    Memory accounted for:
    Total accounted: 12923 KB
    memPoolAlloc calls: 15553579
    memPoolFree calls: 15247210
    File descriptor usage for squid:
    Maximum number of file descriptors: 1024
    Largest file desc currently in use: 273
    Number of file desc currently in use: 122
    Files queued for open: 0
    Available number of file descriptors: 902
    Reserved number of file descriptors: 100
    Store Disk files open: 2
    IO loop method: epoll
    Internal Data Structures:
    93326 StoreEntries
    895 StoreEntries with MemObjects
    884 Hot Object Cache Items
    93275 on-disk objects
    kalo statistik gitu berarti jalan kan ya Lusca nya?

    • fazar

      sudah jalan.. dan silakan diperiksa dalam 3 – 5 hari kedepan. idealnya hit ratio berada diatas 30%. masih bisa dimaklumi kalau hit nya sekarang masih kecil karena populasi objek didalam cache masih sedikit.

      • bandi shippuden

        mas fazar saya mau nayak
        g mana cara cache youtube no-range biar full ?
        tolong pencerahanya mas ..???
        saya udah googling sana sini … gak ada yg berhasil … ???

        • fazar

          ane kasih clue aja ya… buat acl url_path atau url_regex untuk url youtube range nya. kemudian deny access acl tersebut.

  8. Ivan

    Bro, saya udah install lusca nya, tapi youtube nya blom ke caching. kira2 masalahnya dimana ya?

    • fazar

      silakan bertanya ke forum/grup diskusi seputar cache video youtube. oia.. jangan lupa max object size di konfigurasi proxy (webif tab networking) di gedein.. kurang lebih 32 mb atau lebih.

  9. kita uda cuba mas install paket lusca di core62
    wget https://fazar.net//projects/ipfire-lusca-beta.tar.gz dengan source ni

    Gimana cara meng- edit >>

    if ($core_release !~ 61)

    dan ganti menjadi :

    if ($core_release !~ 62) ??

    • fazar

      setelah di ekstrak (tar -zxvf ipfire-lusca-beta.tar.gz) masuk lah kedalam direktori hasil instal tsb, kemudian..
      vim install

      jika masbro tidak terbiasa dengan vim bisa juga menggunakan nano (instal terlebih dahulu nano menggunakan pakfire install nano).

      • Thanx mas bro infonya,,,saya coba dulu..Sekali lagi thanx banget jrn respon cepat. Bravo for IPFire !!

  10. rony

    mas,untuk penambahan hardisk untuk cache gimana??saya gunakan 2 hdd,30GB + 80GB…dimana 30GB untuk sistem dan 80GB untuk cache

    • fazar

      edit file /var/ipfire/proxy/advanced/acls/include.acl dan tambahkan cache_dir untuk harddisk yg kedua (pastikan harddisk kedua udah di mounting) contoh :

      cache_dir aufs /cache 79000 185 256

      • rony

        berarti untuk setingan cache management di halaman web maupun di /etc/squid/squid.conf tidak berlaku ya mas???soalnya kan konfigurasi cache_dir sudah di edit dalam file /var/ipfire/proxy/advanced/acls/include.acl…oh ya mas, hdd yg saya gunakan 250GB di bagi menjadi 3 partisi sebesar 80GB-an…saya ada trouble ketika masing” partisi tsb saya format menggunakan mkfs.reiseferfs. mohon bantuannya mas…terima kasih

        • fazar

          setting di web interface tetap berlaku karena web interface lah yang akan menggenerate konfigurasi standar dan menambahkan konfigurasi tambahan dari include.acl menjadi satu file squid.conf

          reiserfs memang sudah dianggap obsolete dan developer ipfire secara resmi sudah menyatakan tidak mendukung reiserfs. untuk mempermudah proses partisi dan mounting, coba gunakan fitur ExtraHD di web interface (Service > ExtraHD).

Leave a Reply

Your email address will not be published. Required fields are marked *