搭建squid代理伺服器
阿新 • • 發佈:2020-10-09
傳統代理
需要手動設定代理伺服器的地址和埠,然後使用代理伺服器訪問網路
配置squid.conf
主要配置如下 http_port3128#用於指定代理伺服器監聽的地址和埠 cache_mem64MB#指定快取功能使用的記憶體空間,建議為實際實體記憶體的1/4 maximum_object_size4096KB#允許儲存到快取空間的最大檔案大小 visible_hostnamelocalhost.localdomain#代理伺服器的本地主機名稱,uname–n可以看到 reply_body_max_size10240000allowall#允許使用者下載的最大檔案大小,單位位元組 cache_dirufs/var/spool/squid10016256#指定快取資料所使用的目錄,容量,子目錄數量,ufs快取檔案格式。快取目錄分配的磁碟空間大小(單位MB),一級目錄數量16個,二級目錄資料量256個 cache_swap_high90#快取目錄空閒空間小於90%時,新快取自動取代舊快取 cache_swap_low85#空閒空間降到85%才停止取代 cache_replacement_policylru#快取替換策略 memory_replacement_policylru#記憶體替換策略 memory_poolson#開啟記憶體池
客戶端手動設定代理
開啟瀏覽器的“Internet選項”
設定代理
透明代理
提供予傳統代理伺服器相同的功能和服務,其區別在於:客戶機不需要指定代理伺服器的地址和埠,而是通過預設路由,防火牆策略將web訪問重定向。
安裝域名解析bind-9.3
[[email protected]~]#rpm-Uvh/media/Server/bind-9.3.3-7.el5.i386.rpm warning:/media/Server/bind-9.3.3-7.el5.i386.rpm:HeaderV3DSAsignature:NOKEY,keyID37017186 Preparing...###########################################[100%] 1:bind###########################################[100%] [[email protected]~]#rpm-Uvh/media/Server/caching-nameserver-9.3.3-7.el5.i386.rpm warning:/media/Server/caching-nameserver-9.3.3-7.el5.i386.rpm:HeaderV3DSAsignature:NOKEY,keyID37017186 Preparing...###########################################[100%] 1:caching-nameserver###########################################[100%] [[email protected]~]#rpm-Uvh/media/Server/bind-chroot-9.3.3-7.el5.i386.rpm warning:/media/Server/bind-chroot-9.3.3-7.el5.i386.rpm:HeaderV3DSAsignature:NOKEY,keyID37017186 Preparing...###########################################[100%] 1:bind-chroot###########################################[100%] [[email protected]~]#cd/var/named/chroot/etc/ [[email protected]etc]#ls localtimenamed.caching-nameserver.confnamed.rfc1912.zonesrndc.key [[email protected]etc]#cp-pnamed.caching-nameserver.confnamed.conf [[email protected]etc]#cat>named.conf<<end >options{ >directory"/var/named"; >forwarders{8.8.8.8;};//DNS解析轉發給8.8.8.8處理 >}; >end [[email protected]etc]#servicenamedrestart 停止named:[失敗] 啟動named:[確定]
防火牆重定向請求:
[[email protected]~]#iptables-tnat-APREROUTING-ieth1-ptcp--dport80-jREDIRECT--to-ports3128//把所有80埠請求轉交squid [[email protected]~]#iptables-tnat-APREROUTING-ieth1-ptcp--dport443-jREDIRECT--to-ports3128////把所有443埠請求轉交squid
配置squid.conf
[[email protected]~]#vim/etc/squid/squid.conf http_port192.168.1.10:3128transparent//修改為透明模式
配置客戶端ip,DNS使用192.168.1.10的代理
測試成功:
ACL控制上網行為
ACL列表名 型別 內容
http_accessallow或deny列表名
no_cacheallow或deny 列表名
aclallsrc0.0.0.0/0.0.0.0 aclSafe_portsport80443#除80和443以外,!表示取反 aclConnLimitmaxconn40#多於40個請求 aclsrc_ip192.168.2.167192.168.1.0/24#源地址,網段 acldst_ipdst192.168.2.167192.168.1.0/24#目標地址,網段 acldstdomain.qq.com.taobao.com#匹配qq,淘寶的域名 aclforbidurlpath_regex-i\.mp3\.rmvp#匹配MP3,rmvb,-i表示不區分大小寫 acllimit_timetime12:00-13:00#匹配每天的12到13點,M-monday.T-tuesday.W-wednesday.H-Thursday.F-fariday.A-Saturday.S-sunday aclQueryStringurlpath_regex-icgi-bin\?\.asp\.php\.jsp\.cgi#匹配動態內容 no_cachedenyquery#不快取動態內容 http_accessdenyConnLimit http_accessallowall#接受所有請求,與ACL定義的all相關 http_accessdeny!Safe_ports#除80和443埠以外拒絕其他埠請求 http_accessdenysrcip#源地址是192.168.1.0被拒絕 http_accessdenydstdomain#禁止上qq和淘寶 http_accessdenyforbid#禁止下載MP3和rmvb
轉載於:https://blog.51cto.com/dragon123/1591545