ตัว Squid นั้นผมขอใช้ตัว Squid เดิมๆ ของ CentOS เองเลยนะครับซึ่งเป็น Version 2.6.STABLE21 ซึ่งมันเสถียรดีอยู่แล้ว ใช้ร่วมกับ Frox ที่เราเคยทำไว้ก่อนหน้านี้
ติดตั้ง Squid
yum -y install squid
cd /etc/squid
mv squid.conf squid.conf.org
wget http://linux.blog.in.th/system/files/squid.conf
แก้ไข ip และปรับจำนวน Cache ให้ตรงกับ ความต้องการ
nano /etc/squid/squid.conf
แก้ไข บรรทัดเหล่านี้
cache_dir ufs /var/spool/squid 20480 16 256
ปรับ เลข 20480 เป็นตามจำนวน Cache ที่ต้องการ ของเดิม คือ 20 G เช่นต้องการ 40G ก็ เปลี่ยนเป็น 40960
แต่ปกติแล้วผมไม่เคยตั้งไว้เกิน 10G เลยคือปกติผมจะใช้ ราวๆ 8192 หรือ 8 G นั่นเอง
cache_mem 128 MB
หากมี Memory เยอะ ตั้งไว้สัก 1/2 ของที่มีก็ได้เช่น Ram 1 G ก็ตั้งไว้สัก 512
acl webconfig_lan src 192.168.2.0/24 acl webconfig_to_lan dst 192.168.2.0/24
แก้ 192.168.2.0/24 เป็น วง network ของท่าน เช่น Server ใช้ ip 10.0.1.254 ก็เปลี่ยนเป็น 10.0.1.0/24
http_port 192.168.2.254:3128 transparent
http_port 127.0.0.1:3128 transparent
เลข ip 192.168.2.254 แก้เป็น ip Server ของท่าน และต้อง ใส่ transparent ต่อท้ายทุกครั้ง ไม่อย่างนั้นหลังสั่ง transparent mode แล้วจะใช้งาน Squid ไม่ได้ สั่งสร้าง ที่เก็บ Cache, Start squid, และ ตั้งให้ squid start ทุกครั้งหลัง restart เครื่อง
squid -z
service squid start chkconfig squid on
สั่ง iptables เพื่อ redirect port http ต่างๆ เข้า squid ตัวอย่างคือ เครื่องลูกเข้าใช้งาน port 88,80,9898 จะผ่านเข้า Squid อัตโนมัติ
iptables -t nat -A PREROUTING -m multiport -p tcp -i eth1 --dport 88,80,9898 -j REDIRECT --to 3128แก้ eth1 เป็น Card lan ใบที่จ่ายให้ Client check การทำงานของ squid
tail -f /var/log/squid/access.logหากต้องการปรับเปลี่ยน รูปแบบ การแสดง log แก้ไข ตรงส่วน logformat ครับติดตั้ง Frox
wget http://linux.blog.in.th/system/files/lib-frox.tar.gztar zxvf lib-frox.tar.gz
cd lib
cp libcrypto.so.0.9.7a /lib/libcrypto.so.4 cp libssl.so.0.9.7a /lib/libssl.so.4 wget http://linux.blog.in.th/system/files/install-frox-fix.binchmod +x install-frox-fix.bin
./install-frox-fix.bin
ดูการติดตั้งแบบ อื่นๆจากที่นี่ [a href="../../../../node/85" title="Download : Frox for ClarkConnect 4.X Update Full Install"]Download : Frox for ClarkConnect 4.X Update Full Install[/a] แก้ไข Config ของ Frox เพื่อทำงานร่วมกับ Squidnano /etc/frox.confแก้บรรทัดเหล่านี้
##################################
# For use http cache with squid
# Remove all mark if you want to use with http cache.
##################################
HTTPProxy 127.0.0.1:3128 #Don't Change this line if use with http cache just remove mark only. HTTPProxy 192.168.2.254:3128 #Change to your ip.#ForceHTTP yes
#CacheModule HTTP
##################################
##################################
# For use http cache with squid
# Remove all mark if you want to use with http cache.
##################################
CacheModule local
CacheSize 4000 # default size 4000 = 4G##################################
เป็น
##################################
# For use http cache with squid
# Remove all mark if you want to use with http cache.
##################################
HTTPProxy 127.0.0.1:3128 #Don't Change this line if use with http cache just remove mark only. HTTPProxy 192.168.2.254:3128 #Change to your ip.ForceHTTP yes
CacheModule HTTP##################################
##################################
# For use http cache with squid
# Remove all mark if you want to use with http cache.
##################################
#CacheModule local
#CacheSize 4000 # default size 4000 = 4G
##################################
ของเดิมคือทำงานแบบ local Cache คือ Squid ก็มีพื้นที่ เก็บ Cache ของ Squid Frox ก็มีพื้นที่เก็บ Cache ของ Frox เอง เราจึงปรับให้ Frox ใช้พื้นที่ร่วมกับ Squid ไปทีเดียวเลย ประโยชน์คือ สามารถใช้ pattern ของ Squid บังคับในการจัดเก็บ Cache ของ Frox ได้ด้วยว่า File ไหนเก็บไม่เก็บ และกันปัญหา Error อื่นๆ แก้ไข /etc/rc.d/rc.firewall.local ส่วนของ Frox
if [ -f /var/run/frox.pid ]; then /sbin/iptables -t nat -A PREROUTING -m multiport -p tcp -i eth1 --dport 6001,21,8021 -j REDIRECT --to 2121 fiส่วนของ Squid
if [ -f /var/run/squid.pid ]; then /sbin/iptables -t nat -A PREROUTING -m multiport -p tcp -i eth1 --dport 88,80,9898 -j REDIRECT --to 3128 fiหมายเหตุ การแก้ไข /etc/rc.d/rc.firewall.local นั้นต้องทำหลัง นำ ระบบ Firewall ของ ClarkConnect 4.3 ติดตั้งลงใน CentOS 5.3 มาติดตั้งแล้วเท่านั้น สั่ง Start และ restart การทำงานทั้งหมด อีกที
service frox restart service squid restart service firewall restartDownload : Frox for ClarkConnect 4.X Update Full Install Credit Squid 2.6 Config Muzazhi Modifly By Ton-Or