Posted in Komputer, Tips-tips sederhana

Squid Proxy Server


Hari ini saya kembali menulis lagi..*hihihihi..baruketemuamabolpoint*. Dan kali ini saya bakal mengupas Instalasi Squid sebagai Proxy Server di Ubuntu Server. Sebelumnya kita harus tahu dulu donk Squid itu seperti apa. Nah ini ada cuplikan dari wikipedia tentang Squid..disimak yaa??

Squid adalah sebuah daemon yang digunakan sebagai proxy server dan web cache. Squid memiliki banyak jenis penggunaan, mulai dari mempercepat server web dengan melakukan caching permintaan yang berulang-ulang, caching DNS, caching situs web, dan caching pencarian komputer di dalam jaringan untuk sekelompok komputer yang menggunakan sumber daya jaringan yang sama, hingga pada membantu keamanan dengan cara melakukan penyaringan (filter) lalu lintas. Meskipun seringnya digunakan untuk protokol HTTP dan FTP, Squid juga menawarkan dukungan terbatas untuk beberapa protokol lainnya termasuk Transport Layer Security (TLS), Secure Socket Layer (SSL), Internet Gopher, dan HTTPS. Versi Squid 3.1 mencakup dukungan protokol IPv6 dan Internet Content Adaptation Protocol (ICAP).
Squid pada awalnya dikembangkan oleh Duane Wessels sebagai “Harvest object cache”, yang merupakan bagian dari proyek Harvest yang dikembangkan di University of Colorado at Boulder. Pekerjaan selanjutnya dilakukan hingga selesai di University of California, San Diego dan didanai melalui National Science Foundation. Squid kini hampir secara eksklusif dikembangkan dengan cara usaha sukarela.
Squid umumnya didesain untuk berjalan di atas sistem operasi mirip UNIX, meski Squid juga bisa berjalan di atas sistem operasi Windows. Karena dirilis di bawah lisensi GNU General Public License, maka Squid merupakan perangkat lunak bebas.


Nah sekarang kita segera ke TKP..!!!
Langkah-langkah dalam Instalasi Squid sebagai Proxy Server

1. Ubuntu Server sudah dalam keadaan terinstall dengan baik
2. Dua Interface Ethernet Card
3. IP Server 192.168.1.12 (eth1), Range IP Client 192.168.21.2/24 (eth2), Modem 192.168.1.1
4. Selanjutnya kita mengkonfigurasi ip dari eth1 dan eth1

root@proxy:~# nano /etc/network/interfaces

auto eth1
iface eth1 inet static
address 192.168.1.12
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1

auto eth2
iface eth2 inet static
address 192.168.21.1
netmask 255.255.255.0
broadcast 192.168.21.0

5. Selanjutnya kita akan mengkonfigurasi dns untuk Ubuntu Server

root@proxy:~# nano /etc/resolv.conf

nameserver 192.168.1.1
nameserver 180.131.144.144
nameserver 180.131.144.145

sekarang coba lakukan ping ke yahoo.com jika berhasil..berarti Ubuntu Server sudah terkoneksi dengan internet. Sekarang kita mulai untuk menginstall Squid sebagai Proxy Server

6. Masih sebagai aksess root kita lakukan update terhadap sistem Ubuntu Server. Tunggu sampai selesai

root@proxy:~# apt-get update

7. Selanjutnya

root@proxy:~# apt-get install squid

8. Kemudian setelah selesai kita mulai untuk melakukan konfigurasi terhadap Squid

root@proxy:~# nano /etc/squid/squid.conf

Berikut ada hal-hal yang perlu disesuaikan/diperhatikan dalam konfigurasi Squid

visible_hostname 192.168.0.1 # IP address server Squid anda

# Example rule allowing access from your local networks.
# Adapt to list your (internal) IP networks from where browsing
# should be allowed
acl localnet src 10.0.0.0/8 # RFC1918 possible internal network
acl localnet src 172.16.0.0/12 # RFC1918 possible internal network
acl localnet src 192.168.0.0/16 # RFC1918 possible internal network

acl our_networks src 192.168.0.0/24 192.168.11.0/24
http_access allow our_networks

9. Setelah itu kita restart services squidnya

root@proxy:~# /etc/init.d/squid restart

10. Sekarang tinggal kita mensetting ip client sesuai dengan konfigurasi Squid

Note : untuk transparent proxy anda harus menambahkan rule-rule iptables untuk mendirect port 80 ke 3128 (port default squid)

copy dan paste script berikut kemudian save dengan fw.proxy pada dir /etc/squid/

#!/bin/sh
# ————————————————————————————
# See URL: http://www.cyberciti.biz/tips/linux-setup-transparent-proxy-squid-howto.html
# (c) 2006, nixCraft under GNU/GPL v2.0+
# ————————————————————————————-
# squid server IP
SQUID_SERVER=”192.168.1.12″
# Interface connected to Internet
INTERNET=”eth1″
# Interface connected to LAN
LAN_IN=”eth2″
# Squid port
SQUID_PORT=”3128″

# DO NOT MODIFY BELOW
# Clean old firewall
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
# Load IPTABLES modules for NAT and IP conntrack support
modprobe ip_conntrack
modprobe ip_conntrack_ftp
# For win xp ftp client
#modprobe ip_nat_ftp
echo 1 > /proc/sys/net/ipv4/ip_forward
# Setting default filter policy
iptables -P INPUT DROP
iptables -A INPUT -p tcp –dport ssh -j ACCEPT
iptables -P OUTPUT ACCEPT
# Unlimited access to loop back
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
# Allow UDP, DNS and Passive FTP
iptables -A INPUT -i $INTERNET -m state –state ESTABLISHED,RELATED -j ACCEPT
# set this system as a router for Rest of LAN
iptables –table nat –append POSTROUTING –out-interface $INTERNET -j MASQUERADE
iptables –append FORWARD –in-interface $LAN_IN -j ACCEPT
# unlimited access to LAN
iptables -A INPUT -i $LAN_IN -j ACCEPT
iptables -A OUTPUT -o $LAN_IN -j ACCEPT
# DNAT port 80 request comming from LAN systems to squid 3128 ($SQUID_PORT) aka transparent proxy
iptables -t nat -A PREROUTING -i $LAN_IN -p tcp –dport 80 -j DNAT –to $SQUID_SERVER:$SQUID_PORT
# if it is same system
iptables -t nat -A PREROUTING -i $INTERNET -p tcp –dport 80 -j REDIRECT –to-port $SQUID_PORT
# DROP everything and Log it
iptables -A INPUT -j LOG
iptables -A INPUT -j DROP

kemudian kita berikan akses pada file tersebut agar bisa di eksekusi

root@proxy:~# chmod +x fw.proxy
root@proxy:~# ./fw.proxy

kemudian kita tambahkan script tersebut pada rc.local agar saat Ubuntu Server hidup maka akan mengeksekusi script tersebut secara otomatis

root@proxy:~# nano /etc/rc.local

tambahkan pada baris terakhir

/etc/squid/fw.proxy

kemudian save dan reboot Ubuntu Server

Ciaaooo…:-)

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