Rabu, 09 Juni 2010

Proxy Sederhana Debian

1. Bangun Proxy Sederhana Berbasis Linux "Debian"
hai friend, maap ya mungkin teman-teman ga terlalu suka tampilan blog ini heheheh...namanya juga belajar. oya friend, sekarang saya mau coba berbagi sedikit ilmu yg saya dapat dari teman, yakni membangun server proxy berbasis linux. disini saya mau mencoba linux yang biasa digunakan sebagian besar komuniti linuxer di dunia khususnya indonesia "Debian".
sebenarnya banyak jenis linux lain yang bisa digunakan untuk membangun server proxy, semuanya memiliki kelebihan masing-masing. di sini saya akan coba menjelaskan bagaimana membangun server proxy debian sederhana yang baik buat digunakan di hampir semua user, terutama warnet yang menggunakan speedy.
ok sekarang kita coba langkah-langkahnya..adapun langkah pertamanya tentu saja install system menggunakan CD Debian,ini mutlak dilakukan hehehe...ada dua cara waktu partisi HDD, yakni melalui auto partition atau secara manual. disini saya akan coba melakukan manual, disana saya buat sebuah system (/), swap, dan 3 buah cache (cache1, cache2, cache3). dimana cache-cache tersebut memiliki fungsi sebagai tempat menjalankan dan menyimpan squid yang berjalan. setelah selesai melakukan instalasi, sekarang kita melakukan tahap yang sangat penting. adapun tahapannya adalah :

1. Setting ip
setelah selesai instalasi system Os, sekarang hal yang tidak kalah penting adalah pemberian ip internet dan lokal pada server anda tersebut. sekarang coba anda login pada server debian anda, setelah itu coba ketik perintah

" nano /etc/network/interfaces"

disana akan tampak sbb: ( coba anda gunakan ip internet yg sudah isp berikan kepada anda. sebagai contoh ip publik kami 202.152.167.94)

# The primary network interface
auto eth0
iface eth0 inet static
address 202.152.167.94
netmask 255.255.255.0
network 202.152.167.0
broadcast 202.152.167.255
gateway 202.152.167.81

coba anda lakukan perubahan dengan memasuk secara manual beberap script yang sangat penting guna melakukan routingan pada server anda tersebut. adapun perubahannya adalah sbb:

# The primary network interface
#tambahkan eth1
auto eth0 eth1
#ip internet anda
iface eth0 inet static
address 202.152.167.94
netmask 255.255.255.0
network 202.152.167.0
broadcast 202.152.167.255
gateway 202.152.167.81
#ip lokal anda
iface eth1 inet static
address 192.168.1.1
netmask 255.255.255.0

setelah itu anda save ( Ctrl+x ) Enter , lalu coba restart sistem anda dengan ketik

"/etc/init.d/networking start "

atau biar lebih pasti anda restart server anda dengan ketik " reboot ".


2. tahap update source-list

setelah anda login, sekarang anda coba masuk ke directory source-list dengan mengetikan perintah sbb: "nano /etc/apt/source-list". setelah itu coba anda abaikan semua script yg ada dengan memberi tanda "#" di awal baris. lalu coba anda ketik manual beberapa link buat update yang baru.

"deb http://komo.vlsm.org/debian etch main contrib non-free"
"deb http://komo.vlsm.org/debian etch-proposed-updates main contrib non-free"

setelah semua list anda masukkan, sekarang anda save ( Ctrl+x) Enter
lalu anda coba ketik perintah update ( apt-get update ) Enter
maka secara otomatis sistem anda akan mengupdate " jangan lupa cpu anda harus terhubung dengan internet".

3. install ssh
agar anda dapat meremote server debian anda pada cpu lain langkah yang harus anda lakukan adalah dengan menginstall ssh pada server debian anda tersebut. adapun perintah yang harus anda ketik :

" apt-get install ssh "

4. install squid
ditahap ini anda harus penuh ketelitian dan kesabaran yang tinggi. karena di tahap ini kita harus menginstall dan mengedit squid pada server debian anda secara bertahap. sekarang kita coba install squid nya terlebih dahulu, adapun perintahnya :

" apt-get install squid "

setelah anda selesai melakukan install squid, sekarang anda coba meng-copy squid baru dari komputer lain dengan menggunakan Winscp pada komputer yang mau meremote server anda tersebut. dengan memberikan ip lokal 192.168.1.2 dan gateway 192.168.1.1 pada komputer anda, coba anda jalanka winscp dengan login melalui ip lokal 192.168.1.1 user dan password sesuai dengan server debian anda. sebelumnya anda harus copy script berikut di notepad pada komputer anda dengan memberi nama squid.conf :

http_port 8080 transparent

icp_port 0

hierarchy_stoplist cgi-bin ?

cache_effective_user squid

cache_effective_group squid

acl QUERY urlpath_regex cgi \?

no_cache deny QUERY

dns_nameservers 124.195.17.45

hosts_file /etc/hosts

cache_mem 8 MB

cache_swap_low 98

cache_swap_high 99

cache_effective_user proxy

cache_effective_group proxy

cache_access_log /var/log/squid/access.log

cache_log /var/log/squid/cache.log

cache_dir aufs /cache1/ 20000 8 256

cache_dir aufs /cache2/ 20000 8 256

cache_dir aufs /cache3/ 20000 8 256

#cache_dir aufs /cache4/ 3000 8 256

#cache_dir aufs /cache5/ 3000 8 256

cache_store_log none

#mime_table /etc/squid/mime.conf

logfile_rotate 360

emulate_httpd_log on

negative_ttl 1 minutes

refresh_pattern \.(gif|jpg|jpeg)$ 600 80% 86400

refresh_pattern \.(xbm|xpm|ico|tiff)$ 600 80% 86400

refresh_pattern \.(au|snd|wav|ra|mid)$ 600 80% 86400

refresh_pattern \.(qt|mov|avi|mpeg|3gp)$ 600 80% 86400

refresh_pattern \.(iv|wrl|vrml)$ 600 80% 86400

refresh_pattern \.(Z|gz)$ 600 80% 86400

refresh_pattern \.(hqx|bin)$ 600 80% 86400

refresh_pattern \.(tar|zip|rar)$ 600 80% 86400

refresh_pattern ^http:// 30 50% 86400

refresh_pattern ^ftp:// 30 50% 86400

maximum_object_size 5120 KB

minimum_object_size 1 KB

quick_abort_min 0

quick_abort_max 0

quick_abort_pct 98

shutdown_lifetime 10 seconds

memory_pools off

visible_hostname core.badjingan.net

cache_mgr dokter.error@gmail.com

acl manager proto cache_object

acl Lokal-1 src 192.168.1.0/255.255.255.240

acl all src 0.0.0.0/0.0.0.0

acl localhost src 127.0.0.1/255.255.255.255

acl ssl_port port 443 563

acl safe_port port 80 21 443 563 70 210 1025-65535

acl CONNECT method CONNECT

acl PURGE method PURGE

http_access allow Lokal-1

http_access allow localhost

http_access allow manager localhost

icp_access allow all

miss_access allow all

http_access deny manager

http_access deny !safe_port

http_access deny CONNECT !ssl_port

http_access deny all

http_access deny PURGE !localhost

tcp_outgoing_address 192.168.1.1 Lokal-1

tcp_outgoing_address 10.10.20.2

server_persistent_connections off



jangan lupa melakukan pengeditan pada cache dan ip lokal anda. setelah itu save ( Ctrl+x ) Enter

setelah itu anda harus melakukan beberapa langkah untuk menjalankan squid tersebut, adapun langkah-langkahnya sbb :
- ketik script pada directory #debian
" chown -R proxy.proxy /cache1 /cache2 /cache3 "

- lalu coba anda jalankan squid anda dengan mengetik
" squid -z "
bila tidak ada pesan error, berarti configurasi squid anda sudah benar.


5. NAT ip

setelah anda melakukan semua tahapan-tahapan diatas, maka tahap terakhir yang harus anda lakukan adalah nat ip lokal dan internet anda. adapun perintah yang harus anda lakukan adalah sbb:

- coba anda masuk ke directory lokal anda dengan mengetikan perintah

"nano /etc/rc.lokal"

lalu coba anda abaikan semua yang ada di directory tersebut dengan memberi tanda " # " pada awal kalimatnya. dan coba mengetik manual pada directory tersebut dengan script sbb :

echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 8080
exit 0

setelah itu save ( Ctrl+x ) Enter

lalu anda coba ping server dan DNS anda dari komputer lokal anda, lalu coba browsing juga. maka server sederhana anda berbasis linux Debian telah berhasil dan selesai dengan selamat heheheheh...Good Luck :D

--------------------------------------------------------------------------------

Tidak ada komentar:

Posting Komentar