Squid 是http1.0的代理伺服器 全功能的代理伺服器
90年代中期面市 功能:節省internet流量 用于提高性能 給終端使用者提供良好的使用者體驗
實作代理加速 反向代理加速 可以擴充外部伺服器的适應能力及其規模 可以将使用者希望通路的内容分發至使用者門前
ICP :Internet Cache Protocol 網際網路緩存協定 基于UDP協定 監聽3130端口
代理(proxy)的類型:reverse正向代理 proxy反向代理SNAT
CDN:内容分發網絡 Content Delivery Network
專門用來做proxy的:Squid,Varnish,ATS,Nginx
Squid 官方網站 www.squid-cache.org 主程式:/usr/sbin/squid 預設監聽端口tcp/3128
配置目錄:/etc/squid/ 主配置檔案:/etc/squid/squid.conf
squid -k parse 檢查squid的文法有沒有錯誤 第一次啟動squid要初始化緩存:squid -z
啟動squid: service squid start squid -k reconfig 重新讀取配置檔案
常見的acl類型:src dst port srcdomain dstdomain time maxconn url_regex urlpath_regex
如何實作代理伺服器的透明代理Transparent Proxy
依然監聽3128端口
-j REDIRECT端口重定向 後面跟--to-ports 重定向的端口
端口重定向 例子:iptables -t nat -I PREROUTING -i eth1 -s 192.168.10.0/24 -p tcp --dport 80 -j REDIRECT --to-ports 8080
源位址轉換:iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -j SNAT --to-source 192.168.0.32
反向代理:
透明代理和反向代理不可以同時使用