Jul 29

Bagaimana membuat koneksi bridge mode dengan speedy dan membuat layanan Transparent Proxy untuk small office, dengan diagram jaringan sebagai berikut

            

IP Speedy : 125.161.2xx.xxx
eth0 : Bridge
Server : Gateway, Proxy, DHCP-Server
eth1 : 192.168.1.0/24
Hotspot : bridge mode

installasi :

1. pastikan mada modem adsl kita pada mode bridge
2. konekan kabel utp dari modem ke eth0 ( atau sesuaikan dengan jaringan )
3. remote login ke mesin server

note : spesifikasi server

/boot = 256MB
/ = 2GB
/swap = 2GB
/cache = 2GB x 4
rest = LVM ( Logical Volume Management )

pastikan 3 point di atas sudah di lakukan dengan baik, dan lakukan perintah ini :

di karenakan setting up memerlukan hak akses root maka bisa dilakukan dengan sudo

user@ubuntu$sudo pppoeconf
or
root@ubuntu#pppoeconf

kita akan di berikan beberapa pertanyaan pertanyaan seputar login dan password speedy kita

1. ALL DEVICE FOUND? - Jawab: Yes <enter>
2. OKAY To MODIFY - Jawab: Yes <enter>
3. POPULAR OPTIONS - Jawab: Yes <enter>
4. ENTER USERNAME - Isi: nomorspeedy@telkom.net <enter>
5. ENTER PASSOWORD - Isi: passwordspeedy <enter>
6. USE PEER DNS - Jawab: Yes <enter>
7. LIMITED DSS PROBELM - Jawab: Yes <enter>
8. DONE - Jawab: Yes <enter>, jika tidak ingin langsung terkoneksi saat booting jawab NO <enter>
9. ESTABLISH A CONNECTION - Jawab: Yes <enter> Maka langsung nyambung.

untuk yang memakai speedy base quota untuk mengoneksikan dengan sintaks

pon dsl-provider

untuk mematikan

poff

server saya mengunakan ubuntu bisa secara otomatis langsung terkoneksi ke internet setiap kali reboot, mungkin untuk distro yang lain yang tidak bisa secara otomatis terkoneksi bisa menambahkan ini pada rc.local di atas exit 0

ifconfig eth0 up
pon dsl-provider

pada /etc/network/interfaces tambahkan :

vim /etc/network/interfaces
# eth0 connect ke modem
auto eth0
iface eth0 inet manual

installasi proxy transparent untuk sedikit hemat bandwith kantor :

users@ubuntu$sudo apt-get install squid3 squid3-common squid3-cgi

tunggu hingga proses installasi selesai di lakukan, jika proses installasi selesai dan tidak ada masalah maupun error maka kita sudah bisa mulau mengkonfigurasi squid kita :

users@ubuntu$ mv /etc/squid3/squid.conf /etc/squid3/squid.conf.ori
users@ubuntu$vim /etc/squid3/squid.conf

kopi pasti konfigurasi di bawah ini dan sedikit memodifikasi sesuai dengan mesin kita :

http_ports 3128 transparent <== untuk membuat proxy kita transparent
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
hosts_file /etc/hosts
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
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 to_localhost dst 127.0.0.0/8
acl purge method PURGE
acl CONNECT method CONNECT
cache_mem 1024 MB
http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
acl lan src 192.168.1.1 192.168.2.0/24 <== sesuaikan dengan lokal network kita
http_access allow localhost
http_access allow lan
http_access deny all
http_reply_access allow all
icp_access allow all
visible_hostname myclient.hostname.com <== sesuaikan dengan hostname kita
coredump_dir /var/spool/squid
cache_dir aufs /cache 2000 4 256 <== sesuaikan dengan partisi atau direktori cache kita

perhitungan untuk mencari L1 cache, contoh :

2GB di bagi 13 di bagi 256 dibagi lagi 256 di kalikan 2, nilah terakhir adalah L1 kita dan untuk kapasitas 2GB adalah 4,5 atau saya ambil nilai terkecil 4 untuk menghindari space di isi secara penuh 2 GB yang akan membuat proxy kita kurang optimal, silakan di sesuaikan dengan kebutuhan kita untuk yang ini.

simpan shell script iptables di bawah ini untuk membuat server kita berfungsi sebagai gateway dan proxy transparent, agar seluruh request dari blok 192.168.1.0./24 pada port 80 di redirect pada port 3128

#!/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.2″
# Interface connected to Internet
INTERNET=”ppp0″
# Interface connected to LAN
LAN_IN=”eth1″
# 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 -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

di karenakan pada ubuntu saya belum menemukan bagaimana cara menyimpan iptables maka shell script di atas saya simpan pada direktori home saya dan saya menambahkan pada rc.local agar setiap kali reboot shell script di atas di execute/jalankan.

sh iptables.sh < tambahkan baris ini di atas exit 0

5 Responses to “Speedy Bridge + Squid Proxy”

  1. Epat Says:

    hakah tewur gak mudeng, bersenang-senang aja yuk? kemana kita? huehehe

  2. dudi Says:

    mantap! terus juragan, tutorial yang lain… semakin heker aja abang satu ini ^:)^

  3. kotiman Says:

    iptables -A INPUT -j DROP vs iptables -A INPUT -j REJECT

    sama tapi tak serupa…

  4. dudi Says:

    #kotiman. terbalik….

    serupa.. tapi tak sama

    dua perintah itu jelas-jelas tidak SAMA, tapi SERUPA fungsinya.

  5. Nanang Syaifudin[Aduhai] Says:

    Nganten Anyar….
    Enakkkkkk…………………………………………….

Leave a Reply