Kau bisa bersembunyi dari kesalahanmu, tapi tidak dari penyesalanmu. Kau bisa bermain dengan dramamu, tapi tidak dengan karmamu.

  • About

    Seorang Teknisi Jaringan yang pernah berkecimpung di Internet Service Provider (ISP) dan akhirnya memutuskan diri untuk menjadi freelancer yang berdomisili di Solo, Surakarta Hadiningrat.

  • Services

    Melayani jasa pasang Internet berbasis Wireless maupun Fiber Optic, Jasa Pasang Tower/Pipa, Pointing Wireless, Setting Router, CCTV, Hotspot, Proxy, Web Server, Network Managed dan Monitoring

  • Contact

    Berbagai saran, kritikan, keluhan dan masukan akan sangat berarti bagi saya. Anda dapat menghubungi/whatsapp saya di nomor:08564-212-8686 atau melalui BBM:2128686

    Friday, April 8, 2011

    Untuk menginstall aplikasi pada FreeBSD ada dua cara yaitu melalui pkg_add untuk yang simpel

    atau koleksi ports untuk custome. Bisa juga menginstall dari source aslinya yaitu kita mengkonfigurasi manual(berarti ada 3 cara ya bukan 2 cara hehehe)

    pastikan anda sudah menginstall OS FreeBSD 8.2 dengan ZFS seperti pada tutorial disini:
    Install File System ZFS di FreeBSD untuk pemula

    Cara pertama
    kita pilih mirror freebsd yang terdekat yaitu link lokal (IIX) ketik di terminal:
    # setenv PACKAGEROOT “ftp://ftp.itb.ac.id”
    untuk install squid dengan cara simpel cukup pake perintah:
    # pkg_add -r squid

    tunggu sampai proses instalasi otomatis selesai,

    Cara kedua melalui ports
    (lewati langkah ini jika memakai install melalui pkg_add)

    ketik di console:
    # setenv PACKAGEROOT “ftp://ftp.itb.ac.id”
    # pkg_add -r cvsup-without-gui
    # rehash



    kita edit dulu csup untuk mirror ke link lokal (IIX) biar proses update port lebih cepat
    # cp /usr/share/examples/cvsup/ports-supfile /etc
    # ee /etc/ports-supfile

    cari string berikut "*default host=CHANGE_THIS.FreeBSD.org"
    lalu edit menjadi "*default host=cvsup.itb.ac.id"
    exit dari editor dan simpan lalu jalankan perintah berikut:
    # cvsup -L 2 -g /etc/ports-supfile

    setelah itu tunggu proses update ports sampai selesai,prosesnya bisa memakan waktu tergantung kecepatan koneksi internet anda dan kesibukan jaringan server mirror.
    setelah selesai update ports silahkan pindah ke direktori squid:
    # cd /usr/ports/www/squid
    # make config

    pilih option yg di perlukan dan sesuai kebutuhan saja
    (kalau penulis memakai sebagai berikut)

    SQUID_KERB_AUTH
    SQUID_NIS_AUTH
    SQUID_CARP
    SQUID_SSL
    SQUID_IDENT
    SQUID_AUFS
    SQUID_KQUEUE
    SQUID_LARGEFILE



    pilih OK lalu proses make dan install
    # make install
    nanti akan muncul popup config PERL langsung pilih OK saja (default)

    Cara ketiga
    (hanya untuk expert only)
    langsung ambil source mungkin yg sudah di patch (kustom) menggunakan fetch/wget dan extrak lalu recompile
    # ./configure --prefix=/usr/local/squid
    bla..bla.....

    berhubung cara ketiga ini sudah expert maka tidak perlu lagi saya menuliskan tutorial ini
    (padahal penulis juga belum pernah mencoba cara ketiga ini :ngakak)

    jika sudah selesai install squidnya sekarang tinggal create direktori cache dan edit squid.conf.
    saya ambil contoh dir cache dengan kapasitas 20G
    # zfs create -o compression=gzip-9 -o atime=off -o mountpoint=/cache1 -o quota=20 tank/cache1
    lalu set permissionnya sebagai berikut:
    # chown -R squid:squid /cache1

    timpah/edit squid.conf
    # ee /usr/local/etc/squid/squid.conf

    dengan konfigurasi berikut:
    (jng di copas langsung tp gunakan view source pada kanan atas code ini baru copas)
    (lebih mudah mengedit menggunakan WinSCP)

    http_port localhost:3128
    #192.168.1.7--> sesuaikan IP mesin ini
    http_port 192.168.1.7:3128 transparent

    #cache deny url that has cgi-bin and ? this is the default earlier than squid 2.7 version
    acl QUERY urlpath_regex cgi-bin \?
    cache deny QUERY

    #acl nocache dstdomain "/usr/local/etc/squid/disable.acl" # khusus membypass domain yg tidak -
    #cache deny nocache # perlu untuk di cache seperti rapidshare,megaupload dan file hosting lainya
    cache deny nocache1

    acl all src 0.0.0.0/0.0.0.0
    acl manager proto cache_object
    acl localhost src 127.0.0.1/255.255.255.255
    acl warnet src 192.168.0.0/16

    acl SSL_ports port 443
    acl Safe_ports port 80 # http
    acl Safe_ports port 21 # ftp
    acl Safe_ports port 443 # https
    acl Safe_ports port 70 # gopher
    acl Safe_ports port 210 # wais
    acl Safe_ports port 1025-65535 # unregistered ports
    acl Safe_ports port 280 # http-mgmt
    acl Safe_ports port 488 # gss-http
    acl Safe_ports port 591 # filemaker
    acl Safe_ports port 777 # multiling http
    acl purge method PURGE
    acl CONNECT method CONNECT

    http_access allow purge all
    http_access allow manager all
    http_access deny !Safe_ports
    http_access deny CONNECT !SSL_ports
    http_access allow localhost
    http_access allow warnet
    http_access deny all
    http_reply_access allow all

    # optional jika tidak memakai dns nawala
    # acl block dstdomain "/usr/local/etc/squid/block.acl"
    # http_access deny block

    # disini penulis juga belum begitu paham jd untuk settingan di bawah ini menggunakan RAM 1G dan dir cache 20G
    # silahkan oprek sendiri untuk hasil yang maksimal
    cache_mem 8 MB
    cache_swap_low 95
    cache_swap_high 99

    maximum_object_size 180 MB
    maximum_object_size_in_memory 32 KB

    cache_replacement_policy heap LFUDA
    memory_replacement_policy heap GDSF
    cache_dir aufs /cache1 20000 40 256
    cache_access_log /cache1/access.log
    # /cache1/access.log none
    cache_log /cache1/cache.log
    # /cache1/cache.log none
    cache_store_log /dev/null
    logfile_rotate 7

    # refresh pattern untuk squid disini belum support store-stale jd ini hanya sebagai contoh dan ini yg saya pake sekarang
    refresh_pattern -i \.(css|js|jsp|xml)$ 10080 100% 604800 override-expire override-lastmod reload-into-ims ignore-no-cache ignore-auth ignore-private ignore-reload
    refresh_pattern -i \.(gif|png|jpg|ico|bmp|tiff)$ 10080 100% 604800 override-expire override-lastmod reload-into-ims ignore-no-cache ignore-auth ignore-private ignore-reload
    refresh_pattern -i \.(swf|wav|mp3|mp4|au|mid)$ 10080 100% 604800 override-expire override-lastmod reload-into-ims ignore-no-cache ignore-auth ignore-private ignore-reload

    refresh_pattern .photobucket.*\.(jp(e?g|e|2)|tiff?|bmp|gif|png) 14400 99999999% 14400 override-expire ignore-reload ignore-private negative-ttl=0
    refresh_pattern .wordpress.*\.(jp(e?g|e|2)|tiff?|bmp|gif|png) 14400 99999999% 14400 override-expire ignore-reload ignore-private negative-ttl=0
    refresh_pattern .speedtest.*\.(jp(e?g|e|2)|tiff?|bmp|gif|png) 14400 99999999% 14400 override-expire ignore-reload ignore-private negative-ttl=0
    refresh_pattern .piceye.*\.(jp(e?g|e|2)|tiff?|bmp|gif|png) 14400 99999999% 14400 override-expire ignore-reload ignore-private negative-ttl=0
    refresh_pattern ^ftp: 1440 20% 10080
    refresh_pattern ^gopher: 1440 0% 1440
    refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
    refresh_pattern . 0 20% 4320

    visible_hostname proxy.server
    cache_mgr proxy

    zph_mode tos
    zph_local 0x30
    zph_parent 0
    zph_option 136

    cache_effective_user squid
    cache_effective_group squid

    pid_filename /var/squid/logs/squid.pid

    # vary_ignore_expire on
    header_access From deny all
    # header_access Link deny all
    # header_access Server deny all
    header_access Via deny all
    header_access X-Forwarded-For deny all
    # header_access Host deny all
    # header_access Referer deny all
    # header_access Location deny all

    setelah selesai edit squid.conf ketik di terminal:
    # rehash
    untuk cek squid.conf
    # squid -k parse
    jika tanpa error lanjut create swap
    # squid -z
    dan jalankan squidnya
    # squid

    silahkan test squid anda :D
    # squidclient mgr:info

    Langkah terakhir beberes config, pertama edit rc.conf
    # ee /etc/rc.conf
    tambahkan entry berikut:

    sendmail_enable="NO"
    sendmail_submit_enable="NO"
    sendmail_outbound_enable="NO"
    sendmail_msp_queue_enable="NO"

    edit juga loader.conf
    # ee /boot/loader.conf
    tambahkan entry berikut:
    (ingat ram minimal 1G)

    vm.kmem_size="512M"
    vm.kmem_size_max="512M"
    vfs.zfs.arc_max="40M"
    vfs.zfs.vdev.cache.size="5M"

    dan membuat start-up untuk squidnya
    # ee /usr/local/etc/rc.d/squid.sh
    copas entry berikut:

    #!/bin/sh
    /usr/local/sbin/squid

    lalu
    # chmod 755 /usr/local/etc/rc.d/squid.sh
    jika anda ingin menambahkan dir_cache tinggal create zfs lagi seperti:
    # zfs create -o compression=gzip-9 -o atime=off -o mountpoint=/cache2 -o quota=20 tank/cache2
    lalu set permissionnya sebagai berikut:
    # chown -R squid:squid /cache2
    lalu tambahkan ke squid.conf

    cache_dir aufs /cache2 20000 40 256

    dan seterusnya.....

    Sekian dan terima kasih atas perhatiannya dan semoga bermanfaat.

    Source : http://reges007.wordpress.com/2011/04/06/tutorial-membuat-proxy-dengan-freebsd-8-2-zfs/

    0 comments:

    Post a Comment