Sabtu, 25 April 2009

Membuat Squid + tproxy pada slackware 12.2

Karena rasa penasaran akhirnya saya mencoba membuat sebuah squid, dimana squid ini dapat membuat para admin dapat membuat sebuah proxy serta membatasi bandwith user,
caranya lumayan susah buat saya karena saya masih newby dalam hal ini :D
ada beberapa langkah, sebaiknya kita mulai penjelasan membosankan ini

*silahkan mendownload kernel 2.6.29.1 bagi yang tidak mau nge patch kernelnya di kernel.org .
*dowload iptables versi 1.4.3
* silahkan extrak kernel yang telah anda download pada /usr/src/
* lalu copy .config dari kernel lama /usr/src/linux-kernel-lama ke .config /usr/src/2.6.29.1
* Masuk ke directory kernel terbaru cd /usr/src/linux-2.6.29.1/
* ketik perintah make xconfig u/mengaktifkan modul atau dengan cara edit file .config pada kernel 2.6.29.1 adapun modul yang diaktifkan adalah

CONFIG_NETFILTER_TPROXY=m
CONFIG_NETFILTER_XT_TARGET_TPROXY=m
CONFIG_NETFILTER_XT_MATCH_SOCKET=m

setelah itu save dan ketik perintah make all etzzz lupa pastika kalau compile kernel pastikan jika menggunakan file sistem reisers sudah diaktifkan
* setelah make all dan ndak ada errornya, tapi jika ada error silahkan tanggung sendiri
* make modules_install
* setelah langkah diatas selesai silahkan copy bzimange dari hasil compile kernel yang telah dilakukan cp /usr/src/linux-2.6.29.1/arc/i386/boot/bzimange /boot/namanya
* edit lilo tambahkan bzimange yang telah dibuat caranya cari di google.com
* reboot

OK tenangkan pikiran sekarang :D udah steress ndak kalau blum get slackingggg !!!!

*aktifkan modulnya
atau lebih mudah pasang aja di /etc/rc.d/rc.local adapun file yang harus di load

modprobe xt_TPROXY
modprobe xt_socket
modprobe nf_tproxy_core
modprobe xt_MARK
modprobe nf_nat
modprobe nf_conntrack_ipv4
modprobe nf_conntrack
modprobe nf_defrag_ipv4
modprobe ipt_REDIRECT
modprobe iptable_nat

ok silahkan memastikan modul diatas sudah di load dengan perintah
lsmod | egrep "xt|nf"xt_TPROXY 2944 1
xt_socket 3264 0
nf_tproxy_core 3200 2 xt_TPROXY,xt_socket,[permanent]
xt_MARK 3456 0
nf_nat 18580 2 ipt_REDIRECT,iptable_nat
nf_conntrack_ipv4 14680 3 iptable_nat,nf_nat
nf_conntrack 58984 4 xt_socket,iptable_nat,nf_nat,nf_conntrack_ipv4
nf_defrag_ipv4 2560 3 xt_TPROXY,xt_socket,nf_conntrack_ipv4

ok selanjutnya kita install squidnya
pertama tama download source squid squid-3.1.0.6.tar.bz2 di search aja di Om google.com
setelah itu di extrack lalu masuk ke dalam directorynya root@rahmat:~# cd squid-3.1.0.6
lalu setelah itu lakukan compilasi dengan perintah ./configure \
--prefix=/usr \
--sysconfdir=/etc/squid \
--localstatedir=/var/log/squid \
--datadir=/usr/share/squid \
--mandir=/usr/man \
--enable-snmp \
--enable-linux-netfilter \
--enable-async-io
setelah itu make all dan make install
langkah selanjutnya configurasi /etc/squid/squid.conf
perhatikan beberapa item di bawah ini
>http_port 3128 tproxy
>cache_mem 256 'tergantung memoryNya'
>cache_dir ufs /cache 10000 16 256 "Letak cache di buat dan besarnya"
>acl localnet src xx.xx.xx.xx IP yang ke internet
>sisa konfigurasinya silahkan di sesuaikan dan tinggal membaca di google.com
selanjutnya kita atur firewallnya
iptables -t mangle -N DIVERT
iptables -t mangle -A DIVERT -j ACCEPT
iptables -t mangle -A PREROUTING -p tcp -m socket -j DIVERT
iptables -t mangle -A PREROUTING -p tcp -m tcp --dport 80 -j TPROXY --on-port 3129 --on-ip 0.0.0.0 --tproxy-mark 0x1/0x1
iptables -t mangle -A DIVERT -j MARK --set-xmark 0x1/0xffffffff

ROUTINGNYA
ip rule add fwmark 1 lookup 100
ip route add local 0.0.0.0/0 dev lo table 100

DONE

Tidak ada komentar:

Posting Komentar