squidcache(簡稱squid) 是一個流行的自由軟體(gnu 通用公共許可證)的代理伺服器和web緩存伺服器. squid有廣泛的用途.從作為網頁伺服器的前置cache伺服器緩存相關請求來提高web伺服器的速度到為一組人共享網絡資源而緩存網際網路,域名系統和其它網絡搜尋,到通過過濾流量幫助網絡安全,到區域網路通過代理上網. squid主要涉及用于unix一類系統運作
模式: c/s 模式
squid服務端安裝:
1002 rpm -ivh/mnt/packages/squid-3.1.10-19.el6_4.x86_64.rpm
1003 ls/etc/squid/squid.conf
1004 /etc/init.d/squid start
1005 netstat -auntp | grep 3128 也可以用lsof -i:3128 顯示所有打開3128端口的程序
配置 squid 正向代理伺服器 區域網路--外部
搭建squid代理伺服器 使内網主機192.168.2.2 能夠通過 oca上的squid代理伺服器加速上網
配置服務端網絡:oca 添加eth1 配置 ip 192.168.2.1 vmnet4
用戶端 client 添加eth1 配置ip 192.168.2.2 網關 192.168.2.1 vmnet4
用 setup 指令在網絡配置 配上 ip 掩碼 dns
servicesquid start
chkconfigsquid on
測試:
在浏覽器中打開百度可以通路
ping www.baidu.com 是不通的
例2: 配置透明squid 代理提升通路速度
用戶端不用在浏覽器裡指定代理伺服器的ip位址和端口号,就可以直接通路公網上的網站伺服器
透明代理= squid +iptables
打開透明代理功能
vim/etc/squid/squid.conf
加上 transparent
servicesquid restart
開啟路由轉發功能
vim/et/sysctl.conf
配置 iptables
iptables-t nat -a postrouting -s 192.168.2.0/24 -j snat --to 192.9.100.84
iptables-t nat -a prerouting -s 192.168.2.0/24 -i eth1 -p tcp --dport 80 -j redirect --to-port 3128
測試:
把網頁代理取消
通路www.baidu.com
例3 :配置 squid 反向代理加速内網web 伺服器通路速度
反向代理:cdn 藍汛 網宿
反向代理伺服器: 要求記憶體足夠大,硬碟要夠快 不需要太大
阿裡 淩動處理器 atom ssd
回源 多長時間跟源更新
讓外網中192.168.1.224/24 通路192.168.1.63 代理伺服器
192.168.1.63代理伺服器緩存 192.168.2.2web伺服器中的資料
實作 oca 給 client 加速80 和 81 兩個服務
隻加速靜态頁面 或視訊 。使用者登入 注冊碼 不能加速
新開一個虛拟機windows系統
在c:\windows\system32\driver\etc\hosts 檔案裡加入兩行
192.9.100.84 www.servera.com
192.9.100.84 www.serverb.com
http_accessallow all
#http_accessdeny all
#squid normally listens to port 3128
#http_port3128 transparent
http_port8000 vhost 打開虛拟主機支援
cache_peer 192.168.2.2 parent 800 no-query originserver weight=1 name=a
cache_peer 192.168.2.2 parent 810 no-query originserver weight=1 name=b
cache_peer_domain awww.servera.com
cache_peer_domain bwww.serverb.com
#讓squuid 伺服器知道
從用戶端發來的請求 如果是www.servera。com 則 squid向 192.168.2.2的端口80發送請求;
從用戶端發來的請求 如果是www.serverb。com 則 squid向 192.168.2.2的端口81發送請求;
cache_peer_accessa allow all
cache_peer_accessb allow all
#cache_peer設定: 允許其他cache機 通路a和b