Skip to content

PROXY SERVER : Ubuntu

August 19, 2007

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….

1. HTTP Port : Merupakan port yang digunakan untuk menjalankan Squid
http_port 3128

2. Visible Host Name : Agar jika terjadi error Squid dapat menemukan hostname yang valid
visible_hostname localhost

localhost bisa diganti menjadi ip (e.g 192.168.1.254) atau domain seperti proxy.domainLAN.com

3. Cache Manager : Untuk mendefinisikan email address dari Cache Manager Squid
cache_mgr admin@domain.com

4. 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

5.
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 aksesnet src 192.168.1.1/255.255.255.255
acl : merupakan perintah access list
akesnet : 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.255

Filtering 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 pengguna

Filtering 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.txt

kemudian isikan dengan :
http://www.worldsex.com
http://www.17tahun.com
dll

Lalu 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.txt

Lalu 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 micokelana # Memperbolehkan acl waktu-akses pada acl user micokelana
http_access deny all # Men-deny semua user yang tidak terdaftar pada squid.conf

http_reply_access allow all #default
icp_access allow all #default

Kemudian 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 -z

Fungsi : untuk membuat direktori cache yang telah kita buat pada perintah squid.

6. 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 8800

Kemudian restart proxy dengan perintah :
# /etc/init.d/squid restart

taken from http://ubuntulinux.or.id/blog/author/micokelana/
thx 2 author nih

Powered by ScribeFire.

From → Linux

11 Comments
  1. mukhlis permalink

    Saya punya masalah dengan squid, semua client tidak dapat memanfaatkan Yahoo E-mail secara maksimal sering muncul pesan ” Error URL…”. yang sering terjadi tampilan kotak e-mail klasik terlihat kacau atau tidak sewajarnya. so.. configurasi apa yang harus saya lakukan pada squid

  2. vade permalink

    coba baca artikel ini mas,

    http://blog.last.fm/2007/08/30/squid-optimization-guide

    saya udah coba aplikasikan di ktr (user 70 org) dgn bw 64kbps, hasilnya lumayan berhasil.

  3. pingback permalink

    Hatur nuhun mas…..
    ijin kupi tutornya……
    yuuuu…….

  4. yogi permalink

    halo mas..
    saya mau tanya nih,,saya mau buat server dengan hd 10 Gb,,mau buat squid cachenya juga, tapi masih bingung mau di buat nilai berapa untuk direktori cachenya,,maunya 6 Gb di alokasikan untuk direktori cachenya,,
    dan perintah access list kalau netmasknya 255.255.255.0 gmna mas?

    thanks very much mas atas pencerahannya…

  5. vade permalink

    to yogi

    btw server yg disini server proxy ya…
    untuk masalah alokasi, buat saja 1 folder cache saat instalasi,
    misal /cache dengan 6 GB, sisanya untuk boot, /etc, /var…dsb, ga masalah koq, mgkn minimal hny perlu 1,5 GB-an.

    untuk netmask 255.255.255.0 atau /24, perintahnya :

    acl LAN src 192.168.1.0/24
    http_access allow LAN

    :)

  6. yogi permalink

    iya mas saya mulai paham nih mas,,
    o ya mas.. kalau sudah buat setting squid.. apa otomatis jalan saat restart mas?
    kalau tidak bagaimana cara nya mas?

    thanks banget mas atas bantuannya..

  7. vade permalink

    secara default iya,

    coba cek di /etc/rc2.d/ misal ada service squid, berarti proxy otomatis start stiap kali reboot.

    mis :

    root@proxy:~# vi /etc/rc2.d/
    README S20clamav-freshclam S89cron
    S10sysklogd S20rsync S99rc.local
    S11klogd S30squid<<< S99rmnologin
    S15bind9 S50dansguardian S99webmin
    S16ssh S89atd

    bila menggunakan centos/fedora/redhat itu lebih mudah,
    ketik aja setup, lihat service squid/proxy, dan check untuk memilih autostart tiap reboot.

  8. Firdaus Firdian permalink

    saya masih agak bingung nich mas, proxy kan untuk menghubungkan ke internet. berarti kan harus ada ip public dan dns. lha settingannya ip public dan dns itu dimana ya mas?…

  9. aan-7695524 permalink

    makasih banyak atas penbelajarannya mr guru,dan ini ada masalah baru pada diriku yaitu karena aku menggunakan router mikrotik rb 450 seting web proxy nya bagaimana ya biar bisa baca proxy yang ada di ubuntu,port 8080,makasih kalau berkenan saya pingin bisa seting mikrotiknya sebagai router dan ubuntu sebagai proxy..makasih mr.guru by;aan

  10. ada yang bisa gak,,, kasih pengalaman atau ilmu tentang cara setting Ubuntu server proxy langsung selesai…. soalnya saya sudah sering kali coba setting nya seperti install paket-paketnya, Squid nya serta Squid.conf sampai selesai, kemudian saya coba tidak dapat konek ke internet…. tapi saya ping ke yahoo.com >> replay tapi klau browsing tidak konek,,, mohon bantuannya

  11. saya ingin, membuat suatu forward proxy, dimana, x mengakses sebuah server, kemudian server tersebut meneruskan x tersebut ke beberapa server lainnya tanpa username lagi, jadi x hanya memasukkan username di server yang pertama. cara nya bagaimana?

    Terima Kasih.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: