Monday, July 8, 2013

Install Squid Proxy di Linux (Slackware 13.37)

Nih buat kalian yang mau belajar bikin proxy yang ampuh dan Maintenance Free (macem aki aja :D) mungkin squid dan slackware yang jadi jawabannya. Dalam kesempatan yang berbahagia ini saya akan menjelaskan trik mengkonfigurasi squid sebagai proxy dan cache server di slackware.

Dongeng dulu yaa :D
Squid adalah sebuah service jaringan yang berguna untuk menggandakan data yang dibrowse oleh jaringan lokalnya. Penggandaan pertama disimpan di directory cache squid, gandaan kedua diforward ke jaringan lokal. Mengapa digandakan? Tujuannya adalah, jika jaringan lokal menghendaki akses ke URL yang sama, squid akan menyodorkan file yang disimpan di directory cache. Apa tujuannya? Tentu supaya akses ke URL yang dimaksud lebih cepat, karena data hanya berputar di jaringan lokal. Keuntungan berikutnya, bandwidth akan lebih lega karena jaringan lokal akan banyak mengambil resource data dari cache server (squid).

Perlu diketahui, dalam postingan ini Slackware berperan sebagai Eksternal Proxy. Artinya masih ada satu perangkat jaringan lagi yang berperan sebagai Gateway. Mungkin untuk konfigurasinya tidak akan saya jelaskan dalam postingan ini :P nanti kepanjangan. Berikut saya sertakan topologinya (copas dari google gambar)


Oke, sudah dulu dongeng nya, keburu ngantuk .. udah jam 23:47 nih ...
Tiba saatnya kita berkemas-kemas, karena sebentar lagi kita masuk dunia jaringan lebih dalam lagi.
Dalam kasus ini saya anggap temen-temen sudah install Slackwarenya... (kalo harus dijelasin juga panjang meennn ...)

PERSIAPAN

  1. Paket installasi squid-2.7.STABLE9.tar.gz (disini)
  2. File konfigurasi squid.conf yang sudah jadi (disini)
  3. Script compile | jamunya buat bikin squid nih :D (disini)
  4. WinSCP | ini jembatannya windows sama server squid kita (disini)
  5. Putty (optional) | ini buat remote server dari windows (disini)
  6. Server Proxy dengan kondisi sebagai berikut :
    - IP Address                    =    172.16.0.2/30
    - Alokasi partisi                =    <swap | 2 x Ram>
                                                  </ (root) | min. 10GB>
                                                  </data | min. 5GB>
                                                  </cache (1,2,3,4,5 sesuai kebutuhan) | masing2 20GB>
  7. Konfigurasi Proxy yang sesuai :D
PENGERJAAN
  1. Install WinSCP (cari tutorial installnya di google aja, banyak kok), terus LOGIN ke server proxy.
  2. Otomatis kamu ada di folder / (root) langsung create folder dengan judul 'download'
  3. (di jendela kiri) masuk ke folder tempat nyimpen file installasi squid-2.7.STABLE9.tar.gz dan squid.conf di windows, (di jendela kanan) masuk ke folder 'download' yang baru dibuat
  4. Drag and Drop file squid-2.7.STABLE9.tar.gz dan squid.conf ke dalam folder 'download'
  5. Close koneksi WinSCP, pindah ke Putty, login ke server proxy
  6. Masuk ke folder 'download' dan ekstrak paket instalasi squid-2.7.STABLE9.tar.gz
    #cd download
    #tar -zxvf squid-2.7.STABLE9.tar.gz
  7. Masuk ke folder squid-2.7.STABLE9 (hasil ekstraksi) dan cek spesifikasi processor
    #cd squid-2.7.STABLE9
    #cat /proc/cpuinfo

              
    Informasi yang kita butuhkan adalah 'cpu MHZ' ambil angka tanpa angka di belakang koma. Jadi di contoh ini angka yang diambil 2699 (tanpa dibulatkan). 
  8. Dari angka yang didapat di langkah sebelumnya, terapkan rumus berikut
    {(cpuMHz : 500) x 30} >> {(2699 : 500) x 30} = 161.94
    dari hasil itu, yang diambil adalah 161 (abaikan angka di belakang koma)
  9. Buka file script (jamunya squid) yang tadi sudah di download dan ganti beberapa data berikut
    --enable-async-io=161
    --with-aufs-threads=161
    -DNUMTHREADS=161
  10.  
  11. Copy perintah tersebut ke putty dan jalankan
  12. Setelah proses compile selesai, lakukan proses make dan make install
    #make && make install 
  13. Kalau sudah beres semua, pindah ke folder download lagi dan replace file squid.conf
    #cd ..
    #cp /root/download/squid.conf /etc/squid/squid.conf
  14. Setelah itu ubah sedikit konfigurasi squid.conf untuk menyesuaikan keadaan server proxy dan keadaan jaringan anda
  15.  #nano /etc/squid/squid.conf

      Setelah konfigurasi cache_dir sesuai dengan yang anda inginkan,
      Sekarang waktunya allow akses dari jaringan lokal


  16. Jika konfigurasi squid sudah siap, keluar dari editor dengan cara tekan Ctrl+X -> y -> [enter]
  17. Sekarang waktunya untuk membuat access.log dan cache.log
    #cd /data                     (masuk ke direktori /data)
    #mkdir log                    (membuat direktori /data/log)
    #cd log                       (masuk ke direktori /data/log)
    #mkdir squid                  (membuat direktori /data/log/squid)
    #cd squid                     (masuk ke direktori /data/log/squid)
    #touch access.log cache.log   
    (membuat file access.log dan cache.log)
  18. Setelah file konfigurasi siap, sekarang saatnya untuk membuat Group dan User squid untuk hak kepemilikan direktori, agar squid bisa mengakses file atau direktori yang dibutuhkan ketika berjalannya service
    #groupadd squid
    #useradd squid -g squid -s /no/login 
  19. Ubah hak kepemilikan folder /data/log/squid/ agar file access.log dan cache.log bisa diakses oleh squid
    #chown -R squid.squid /data/log/squid 
    (masuk ke direktori /data)
  20. Ubah hak kepemilikan partisi cache agar bisa diakses oleh squid
    #chown -R squid.squid /cache1
    #chown -R squid.squid /cache2
    #chown -R squid.squid /cache3
    #chown -R squid.squid /cache4
  21. Perintahkan squid untuk membuat subdirectory untuk cache-nya
    #squid -z 
  22. Periksa konfigurasi squid dan bila tidak ada masalah langsung jalankan servicenya
    #squid -k parse   (bila konfigurasi benar, seharusnya tidak ada tampilan tambahan)
    #squid &          (perintah untuk menjalankan squid)
    #nmap localhost   (perintah untuk memeriksa apakah squid sudah berjalan)


Sebagai catatan, konfigurasi ini hanya efektif jika digunakan untuk akses URL statis.
Untuk URL dinamis seperti Youtube masih dalam pengembangan
Sekian, bila ada pertanyaan bisa add pin BB 7CA6DD90

~ SELAMAT BERKARYA ~


No comments:

Post a Comment