Latest Movie :

WELCOME TO SHOP

UNTUK PEMESANAN SMS KE 085713341948

squidfreebsd07



Untuk menginstall squid proxy pada mesin freebsd ada beberapa hal yang perlu diperhatikan seperti besar cache yang akan digunakan untuk proxy dalam hal ini ada perhitungan yang perlu diketahui agar proxy yang kita buat bisa optimal.

Proxy banyak digunakan diwarnet-warnet bahkan sekelas ISP pun ikut menggunakanya karena bisa mengirit bandwidth kurang lebih 20%, mungkin sudah banyak sekali tulisan2 tentang proxy untuk FreeBSD yang saya tuliskan disini adalah versi saya kalo ada masukan lain dari temen2 silahkan karena dalam proxy banyak sekali variasinya, berikut Setting dan Konfigurasi Squid :
Dari pengalaman saya
Install FreeBSD di HDD SATA saya dengan kapasitas 120G, dengan pastisi :
Filesystem Size Used Avail Capacity Mounted on
/dev/ad4s1a 9.7G 77M 8.8G 1% /
devfs 1.0K 1.0K 0B 100% /dev
/dev/ad4s1e 5.8G 4.0K 5.3G 0% /cache0
/dev/ad4s1f 5.8G 4.0K 5.3G 0% /cache1
/dev/ad4s1g 5.8G 4.0K 5.3G 0% /cache2
/dev/ad4s1h 70G 1.5G 62G 2% /usr
/dev/ad4s1d 9.7G 22M 8.9G 0% /var
Sebelumnya jangan lupa ketika membuat partisinya, flag bootable nya di berikan, saya sempai ngulang install 3 kali karena lupa
lalu install dengan pilihan standart dan ikuti pihan-pilihan sesuai dengan kita
Setelah selesai instalasi, permasalahan pertama saya adalah, saya tidak bisa ssh ke freebsd, memakai putty, tapi setelah bertanya bang Google, yang di lakukan hanya mengedit file /etc/ssh/sshd_config
line :
#PermitRootLogin no
dirubah :
PermitRootLogin yes
Setelah itu mulah lah ke tahap optimalisasi freebsd yang kita instalkan, yaitu menginstall aplikasi~ pendukung yang kita butuhkan dan mngeupdate port port freebsd. apa itu ports ? ports merupakan kontribusi aplikasi.
Koleksi FreeBSD ports menawarkan cara yang simpel bagi pengguna dan administrator untuk menginstall aplikasi. setiap port berisi patch patch untuk aplikasi orsinil dan jalan di BSD. Cara kompile sebuah aplikasi sangatlah mudah dengan mengetikan make build pada port directory. Makefile secara otomatis mendownload source code aplikasi, mem patch nya dan mengcompile nya.
Dengan menggunakan perintah CVSup, kita dapat mengupdate port port terkini
pertama yang saya lakukan adalah mengambil pakcet dan menginstall CVSup dengan :
freebsd> pkg_add -r cvsup-without-gui
lalu menjalankannya dengan mengeksekusi file ports-supfile yang berada di :
freebsd> /usr/share/examples/cvsup/ports-supfile
copy terdahulu file tersebut ke dir /root :
freebsd> cp /usr/share/examples/cvsup/ports-supfile /root/
edit ports-supfile, ganti CHANGE_THIS.FreeBSD.org dengan kebutuhan, lalu jalankan :
freebs> cvsup -L 2 /root/ports-supfile
Setelah itu saya melakukan Compile kernel FreeBSD agar squid dapat berjalan dengan langkah :
Compile dan install kernel biasanya dilakukan bila kita menambahkan hardware baru atau saat menginstalasi software tertentu yang membutuhkan penyesuaian pada kernel. Pertama cek dulu apakah sudah ada source kernel FreeBSD nya, yaitu dalam usr/src/sys yang berisi berbagai sub-direktori yang merupakan bagian-bagian dari kernel.
freebsd> cd /usr/src/sys/i386/conf/
backup dulu file konfigurasi kernel nya :
freebsd /usr/src/sys/i386/conf > cp GENERIC KERNELBARU
Kemudian Edit file konfigurasi KERNELBARU sesuai kebutuhan, Jangan lupa mengganti baris “ident” dari GENERIC menjadi KERNELBARU (sesuaikan dengan nama file konfigurasinya).
OPTION yang di tambah kan untuk menjalankan squid :
options SYSVMSG
options MSGMNB=16384
options MSGMNI=41
options MSGSEG=2049
options MSGSSZ=64
options MSGTQL=512
options SYSVSHM
options SHMSEG=16
options SHMMNI=128
options SHMMAX=1073741824
options SHMALL=16384
Setelah itu :
freebsd /usr/src/sys/i386/conf > config KERNELBARU
freebsd /usr/src/sys/i386/conf > cd ../../compile/KERNELBARU
freebsd /usr/src/sys/compile/KERNELBARU > make depend
freebsd /usr/src/sys/compile/KERNELBARU > make
freebsd /usr/src/sys/compile/KERNELBARU > make install
Install selesai, reboot system.
Setelah System FreeBSD kita telah selesai di installasi, Kompile kernel telah kita lakukan, mulai lah kita ke tahap menginstalkan squid ke server. Squid yang aku pergunakan adalah squid-2.6.STABLE7, anda mencari source nya dimana saja.
Buat group dan user yang akan di gunakan untuk menjalankan squid :
freebsd> pw group add squid -g 100
freebsd> pw user add squid -u 100 -g squid -s /usr/sbin/nologin -d /usr/local/squid
freebsd> chown -Rv squid:squid /cache0 /cache1 /cache2
cache0, 1 dan 2 merukan direktori cache yang telah kita tentukan




buat direktory src dulu untuk file squid yang akan kita install jangan lupa login dulu.

login : root
passwd : xxxxxx
belajar#
#cd /usr/ports/www/links
#make clean install
#cd /usr/ports/security/sudo
#cd /usr/ports/net/bmon
#cd /usr/ports/net/trafshow
#cd /usr/ports/ftp/wget

belajar # mkdir /usr/local/src

kemudian masuk ke directory /src dan download squid ver 2.5 menggunakan command wget

belajar # cd /usr/local/src
belajar # fetch http://www.squid-cache.org/Versions/v2/2.5/squid-2.5.STABLE14.tar.gz

tunggu sampai proses download selesai setelah itu extrak, konfigure dan install

belajar # tar zxvf squid-2.5.STABLE14.tar.gz
belajar # cd squid-2.5.STABLE14
belajar # ./configure --prefix=/usr/local/squid --exec-prefix=/usr/local/squid --enable-delay-pools --enable-ssl --enable-cache-diggests --enable-poll --disable-ident-lookups --enable-snmp --disable-internal-dns --enable-truncate --enable-removal-policies --enable-gnuregex --enable-removal-policies="heap lru" --disable-hostname-checks --enable-underscores --enable-icmp --enable-pf-transparent
squid-akbar # make && make install

konfigurasi file squid.conf ada yang ada di /usr/local/squid/etc/ berikut contoh konfigurasi squid.conf saya dan anda bisa langsung dicopy paste ke file squid.conf
# WELCOME TO SQUID 2
# ------------------
#
#
# NETWORK OPTIONS
# -----------------------------------------------------------------------------
http_port 3128 transparent
icp_port 3130
# OPTIONS WHICH AFFECT THE NEIGHBOR SELECTION ALGORITHM
# -----------------------------------------------------------------------------
hierarchy_stoplist cgi-bin ?
acl code_1 url_regex ^http://www.scripts/root\.exe?
acl code_1 url_regex ^http://au.download.windowsupdate.com
acl code_1 url_regex ^http://ad.doubleclick.net
acl code_1 url_regex ^http://click.adbrite.com
acl code_1 url_regex readme.exe
acl code_2 urlpath_regex .*/winnt/system32/cmd.exe.* .*/MSADC/root.exe..c.dir$ .*/scripts/root.exe..c.dir$
http_access deny code_1
http_access deny code_2
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
# OPTIONS WHICH AFFECT THE CACHE SIZE
# -----------------------------------------------------------------------------
cache_mem 64 MB
cache_swap_low 90
cache_swap_high 95
maximum_object_size 4096 KB
minimum_object_size 0 KB
maximum_object_size_in_memory 256 KB
ipcache_size 1024
ipcache_low 90
ipcache_high 95
fqdncache_size 1024
# LOGFILE PATHNAMES AND CACHE DIRECTORIES
# -----------------------------------------------------------------------------
cache_dir ufs /cache 22000 51 256 # catatan 1
cache_access_log /usr/local/squid/var/logs/access.log
cache_log /usr/local/squid/var/logs/cache.log
# OPTIONS FOR EXTERNAL SUPPORT PROGRAMS
# -----------------------------------------------------------------------------
dns_children 20
dns_defnames on
dns_nameservers 203.89.xxx.10 203.89.xxx.6 # catatan 2
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
# OPTIONS FOR TUNING THE CACHE
# -----------------------------------------------------------------------------
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
# TIMEOUTS
# -----------------------------------------------------------------------------
half_closed_clients off
# ACCESS CONTROLS
# -----------------------------------------------------------------------------
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 SSL_ports port 443 563
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 # https, snews
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
acl our_networks src 192.168.0.0/24 # catatan 3
http_access allow our_networks
http_access allow all
http_reply_access allow all
icp_access allow all
http_access deny all
# ADMINISTRATIVE PARAMETERS
# -----------------------------------------------------------------------------
cache_mgr webmaster
cache_effective_user nobody
visible_hostname try@sunarno.web.id
# OPTIONS FOR THE CACHE REGISTRATION SERVICE
# -----------------------------------------------------------------------------
# HTTPD-ACCELERATOR OPTIONS
# -----------------------------------------------------------------------------
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on # catatan 4
httpd_accel_uses_host_header on
# MISCELLANEOUS
# -----------------------------------------------------------------------------
logfile_rotate 10
# DELAY POOL PARAMETERS (all require DELAY_POOLS compilation option)
# -----------------------------------------------------------------------------
coredump_dir /usr/local/squid/var/cache

selanjutnya membuat log file untuk squid dan ubah permision file log

belajar # touch -f /usr/local/squid/var/logs/access.log
belajar # touch -f /usr/local/squid/var/logs/cache.log
belajar # touch -f /usr/local/squid/var/logs/store.log
belajar # chown nobody:nobody /cache
belajar # chown nobody:nobody /usr/local/squid/var/logs/access.log
belajar # chown nobody:nobody /usr/local/squid/var/logs/cache.log
belajar # chown nobody:nobody /usr/local/squid/var/logs/store.log

yang terakhir buat swap direktory di cache squid anda dan jalankan squid anda dengan command berikut :

belajar # /usr/local/squid/sbin/squid -z
belajar # /usr/local/squid/sbin/squid -sCYD
cek squid anda dan pastikan telah berjalan dengan menggunakan perintah ps ax :

belajar # ps ax |grep squid
393 ?? Is 0:00.00 /usr/local/squid/sbin/squid -sCYD
398 ?? S 27:07.23 (squid) -sCYD (squid)
70681 p0 R+ 0:00.00 grep squid
belajar #

bila proxy anda sekaligus router silahkan tambahi dengan rule
belajar # ipfw add 500 fwd 127.0.0.1,3128 tcp from any to any dst-port 80 via rl0 (rl0 adalah interface client)

catatan-catatan :
catatan 1 : cache_dir ufs /cache 22000 51 256
/cache adalah directory cache untuk squid tidak harus /cache anda bisa menaruh direktory cache dimana saja misal /usr/cache juga bisa
22000 : adalah jumlah directory cache dalam ukuran Mb jadi 22Gb
51 256 : yang perlu ditentukan adalah angka 51 berikut cara perhitungannya 22000000 :13:256:256X2 = 20000 51 256

catatan 2 : dns_nameservers 203.89.xxx.10 203.89.xxx.6 adalah dns yang anda pergunakan
catatan 3 : acl our_networks src 192.168.0.0/24 adalah network yang diijinkan untuk lewat squid
catatan 4 : httpd_accel_with_proxy on
on = bila posisi 'on' maka kita tidak bisa mengisikan proxy ke browser kita
off = bila posisi 'off' maka kita bisa mengisikan proxy ke browser kita

mohon maaf bila sedikit memusingkan dalam menyuguhkan kata-kata yang tepat.

#make
#make install
#cd /usr/local/squid/etc/
#ee /squid.conf
#mv squid.conf squid.conf.bak #untuk menghapus file di direktori squid
#ee /squid.conf
#mkdir /usr/cache #untuk memindah cache ke partisi usr
#more /var/log/messages #untuk melihat yang eror

agar secara otomatis squid berjalan masukkan perintah /usr/local/squid/sbin/squid ke /etc/rc.local
belajar# ee /etc/rc.local masukkan /usr/local/squid/sbin/squid
Memaksa squid untuk membaca file konfigurasi tanpa harus mematikan server squid yang sedang
# /usr/local/squid/sbin/squid –k reconfigure





Biar disaat start otomatis running masukkan perintah ini di /etc/rc.conf
Squid_enable=”YES”
Squid_flag=”-DF”
7. Test dengan browser dengan setting arahkan pada ip Proxy anda.
8. Untuk melihat aktivitas traffic :
root# tail -f /usr/local/squid/var/logs/access.log


Pastikan kalo di top udah running.
Ada beberapa file yang harus sering2 dilihat di linux antara lain:
1. /var/log/messages >> file untuk mengetahui keadaan sistem, akses yang sedang berlangsung, dan mengetahui ada tidaknya tindakan yang tidak diinginkan, sehingga kita bisa mengantisipasinya. Untuk melihatnya sbb:
root#tail-f /var/log/messages
2. /var/log/httpd/access_log >> untuk melihat aktivitas webserver. perintahnya seperti diatas.
3. /var/log/squid/access.log >>untuk melihat user yang sedang akses ke server kita.
4. /var/log/mail >> melakukan pelacakan email yang masuk dan keluar. disini bisa melakukan pelacakan keberadaan virus komputer dan siapa yang menjadi tersangka pertama kali.
5. /var/log/frewall.
Ee /etc/rc.conf
Natd_enable=”YES”
Natd_interface=”rl0”
Natd_program=” /sbin/nad”
Firewall_enable=”YES”
Firewall_type=”OPEN”
Ipfilter_enable=”YES”
Ipfilter_program=“/sbin/ipf”
Ipfilter_rules=”/etc/ipf.rules”


#ee /etc/ipf.rules

Pass in from any to any
Pass out from any to any





Nah... jadi jika ingin men stop atau me-run kan squid tinggal gunakan command :


/usr/sbin/squid.sh start ---> ( gunakan start, stop atau restart ).



9. OK squid sudah beres sekarang masuk ke konfigurasi ip forward nya :P


ee /etc/sysctl.conf ----> edit file sysctl.conf

net.inet.ip.forwarding=1 ---> masukan option forward.


sekarang pastikan command di bawah ini pada file rc.conf anda :

ee /etc/rc.conf -----> edit file rc.conf

gateway_enable=YES
firewall_enable=YES
firewall_type=OPEN

natd_enable=YES
natd_interface="rl0"
inetd_enable=YES

router_enable=YES
named_enable=YES
sshd_enable=YES

ifconfig_rl1="inet ip_local netmask local_mask"
ifconfig_rl0="inet ip_public netmask public_mask"




10. Langkah terakhir rule untuk ip forwardnya agar lebih aman masukan langsung rule nya
ke file rc.local .. so sewaktu server di reboot bisa di bacanya hehehe....
btw sekalian squidnya jugak boleh jadi coba pastekan aja langsung file di bawah ke rc.local :

ee /etc/rc.local ---> edit file rc.local


/sbin/ipfw -f flush
/sbin/ipfw add divert natd all from any to any via rl0
/sbin/ipfw add pass all from any to any
/sbin/ipfw add 00050 fwd 192.168.0.254,3128 tcp from any to any 80 via rl1

/usr/sbin/squid.sh start


Router sederhana
******************************************************************
#
#Konfigurasi Sederhana FreeBSD sebagai Router gateway
#
******************************************************************
ni dokumentasi aku waktu PRAKERIN di TimeExellindo Jogja.Setelah utak-utik berkali-kali dan berhari-hari,trus ma dibantu oleh Mas-Mas di sini & temen-temen PSG (da Muklis, Yeyen, and Yuning, serta da temen-temen laen dari Jogja),tidak lupa da Mbah Google,akhirnya Alhamdulillah aq mulai sedikit paham dan akhirnya aku buat dokumentasi, Biar q ga lupa dan utk berbagi kepada temen-temen yg membutuhkan.Tapi ni masih sederhana karena aq juga masih baru belajar.Jika ada yang kurang aku minta saran dari temen-temen yang sedia utk mengoreksi.
nah, abis selesai install FreeBSD, lihat NIC yang terdeteksi…
moklet_psg#ifconfig
(punya aku yang d sini terdeteksi dc0 dan dc1)
na di sini dc0 –>utk ippublic dan dc1 –>utk iplocal
kemudian konfigurasi pada file /etc/rc.conf
##################################################################
/etc/rc.conf
——————————————————————
### pasang ip pada interface ###
ifconfig_dc0=”202.91.11.226 netmask 255.255.255.248″
ifconfig_dc1=”192.168.1.1 netmask 255.255.255.0″
### gateway ###
gateway_enable=”YES”
defaultrouter=”202.91.11.225″
### options ###
inet_enable=”YES”
sshd_enable=”YES”
usbd_enable=”YES”
pf_enable=”YES”
pf_rules=”/etc/pf.conf”
#################################################################
setelah itu, coba ping 192.168.1.1 bila berhasil,
lanjutkan ping ke 202.91.11.226
dan 202.91.11.*** (gateway)
bila belum berhasil bersabar saja dan coba cek konfigurasi sebelumnya, bila belum berhasil juga, coba tanya Mbah google n ber-do’a minta petunjuk kepada yang Maha Mengetahui Segalanya.
jika sudah, dilanjutkan dengan pasang DNS, konfigurasinya terletak pada file /etc/resolv.conf
### dns ############################################################
nameserver 202.91.8.***
nameserver 202.91.*.***
####################################################################
simpan, dan restart konfigurasi
moklet_psg# sh /etc/netstart
lalu coba ping ke 202.91.8.*** dan 202.91.*.*** , bila berhasil insyaAlloh ping ke mBah Google juga mau, he he…. Alhamdulillah……:) lalu dilanjutkan dengan konfigurasi untu NAT(Network Address Translation). Hal ini bertujuan; agar ip komputer client yang dihubungkan ke router FreeBSD bisa di kenali di Internet, jadi client bisa browsing dech…
file konfigurasinya terletak pada /etc/pf.conf
###################################################################
ext_if=”dc0″ # replace with actual external interface name i.e., dc0
int_if=”dc1″ # replace with actual internal interface name i.e., dc1
internal_net=”192.168.1.0/24″
external_addr=”202.91.11.226″
nat on $ext_if from $internal_net to any -> ($ext_if)
#di bawah sendiri tambahkan
pass in all
pass out all
###################################################################
setelah selesei konfigurasi, baru restart konfigurasi
moklet_psg#pfctl -F all -f /etc/pf.conf atau reboot aja mesin FreeBSD-nya
lalu coba ping dari klien ke gateway jika berhasil, coba ping ke google.Jika berhasil, Alhamdulillah…Selesai juga setUp sederhana FreeBSD sebagai router, dan bisa dilanjutkan utk setUp selanjutnya.
keterangan lebih lanjut:
http://indofreebsd.or.id/
http://www.freebsd.org/

catatan untuk install

ifconfig
ee /etc/rc.conf
ifconfig_rl0="inet 192.168.10.1 netmask 255.255.255.0"
ip alias-> ifconfig_rl0_alias0="192.168.10.1 netmask 255.255.255.0"
ip gateway-> Route add default 10.2.255.1
ee /etc/rc.conf
defaultroute="10.2.255.1"
gateway_enable="YES"
sshd_enable="YES"

Remot putty
vi /etc/ssh/sshd_config
cari-> PermitRootLogin Yes
kemudian->direstart->/etc/rc.d/sshd restart






Share this article :

Posting Komentar

 
Support : Creating Website | Johny Template | Mas Template
Copyright © 2011. cara mudah menghasilkan uang lewat internet - All Rights Reserved
Template Created by Creating Website Published by Mas Template
Proudly powered by Blogger