RHEL6系统squid正向代理

本文发布时间: 2019-Mar-22
Squid cache(简称为Squid)是一个流行的自由软件(GNU通用公共许可证)的代理服务器和Web缓存服务器。Squid有广泛的用途,从作为网页服务器的前置cache服务器缓存相关请求来提高Web服务器的速度,到为一组人共享网络资源而缓存万维网,域名系统和其他网络搜索,到通过过滤流量帮助网络安全,到局域网通过代理上网。Squid主要设计用于在Unix一类系统运行。以下介绍它的第一个作用:正向代理正向代理 是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理# yum install squid -y //yum安装squid# vim /etc/sysctl.conf //修改开启路由转发功能# grep -i ip_forward /etc/sysctl.confnet.ipv4.ip_forward= 1# sysctl -p //使路由转发功能生效net.ipv4.ip_forward = 1net.ipv4.conf.default.rp_filter= 1... ...#配置文件修改# vim /etc/squid/squid.conf //修改squid主配置文件# grep -vE '^#|^$'/etc/squid/squid.confacl manager proto cache_objectacl localhost src 127.0.0.1/32::1acl to_localhost dst 127.0.0.0/80.0.0.0/32 ::1acl localnet src 10.0.0.0/8 # RFC1918 possible internal networkacl localnet src 172.16.0.0/12 # RFC1918 possible internal networkacl localnet src 192.168.0.0/16 # RFC1918 possible internal networkacl localnet src fc00::/7 # RFC 4193 local private network rangeacl localnet src fe80::/10 # RFC 4291 link-local (directly plugged)machinesacl host1 src192.168.0.0/24 # 自定义主机acl SSL_ports port 443acl Safe_ports port 80 # httpacl Safe_ports port 21 # ftpacl Safe_ports port 443 # httpsacl Safe_ports port 70 # gopheracl Safe_ports port 210 # waisacl Safe_ports port 1025-65535 # unregistered portsacl Safe_ports port 280 # http-mgmtacl Safe_ports port 488 # gss-httpacl Safe_ports port 591 # filemakeracl Safe_ports port 777 # multiling httpacl CONNECT method CONNECThttp_access allow managerlocalhosthttp_access deny managerhttp_access deny !Safe_portshttp_access deny CONNECT!SSL_portshttp_accessallow host1 #允许自定义主机访问http_access allow localnethttp_access allow localhosthttp_access deny allhttp_port 8080 #代理端口,习惯上使用8080端口hierarchy_stoplist cgi-bin ?cache_dir ufs/var/spool/squid 100 16 256#ufs为缓存存储类型,在该目录下使用的缓冲值为100MB,允许在“/var/spool/squid”下创建的第一级子目录数为16,每个第一级子目录下可以创建的第二级子目录数量为256coredump_dir /var/spool/squidrefresh_pattern ^ftp: 1440 20% 10080refresh_pattern ^gopher: 1440 0% 1440refresh_pattern -i(/cgi-bin/|\?) 0 0% 0refresh_pattern . 0 20% 4320//添加修改以上红色部分就能搭建简单的squid正向代理了//注:cache_men不能超过cache_dir中的一个数值,否则会出现如下报错,停止 squid:2012/08/21 16:05:46| WARNING cache_mem is larger than totaldisk cache space!# squid -z //初始化缓存空间2012/08/21 15:29:37| WARNINGcache_mem is larger than total disk cache space!2012/08/21 15:29:37| CreatingSwap Directories //查看swap缓存目录2012/08/21 15:29:37|/var/spool/squid exists2012/08/21 15:29:37| Makingdirectories in /var/spool/squid/002012/08/21 15:29:37| Makingdirectories in /var/spool/squid/012012/08/21 15:29:37| Makingdirectories in /var/spool/squid/022012/08/21 15:29:37| Makingdirectories in /var/spool/squid/032012/08/21 15:29:37| Makingdirectories in /var/spool/squid/042012/08/21 15:29:37| Makingdirectories in /var/spool/squid/052012/08/21 15:29:37| Makingdirectories in /var/spool/squid/062012/08/21 15:29:37| Makingdirectories in /var/spool/squid/072012/08/21 15:29:37| Makingdirectories in /var/spool/squid/082012/08/21 15:29:37| Makingdirectories in /var/spool/squid/092012/08/21 15:29:37| Makingdirectories in /var/spool/squid/0A2012/08/21 15:29:37| Makingdirectories in /var/spool/squid/0B2012/08/21 15:29:37| Makingdirectories in /var/spool/squid/0C2012/08/21 15:29:37| Makingdirectories in /var/spool/squid/0D2012/08/21 15:29:37| Makingdirectories in /var/spool/squid/0E2012/08/21 15:29:37| Making directoriesin /var/spool/squid/0F[root@localhost ~]## /etc/init.d/squid start客户机浏览器配置代理打开浏览器internet选项选择连接中的局域网设置设置:添加squid主机IP以及代理端口:# tail -f /var/log/squid/access.log //查看代理客户机访问记录1345532445.463 166 192.168.0.229 TCP_MISS/200 2126 GEThttp://news.baidu.com/z/resource/bg2.png - DIRECT/123.125.114.18 image/png1345532445.467 3193 192.168.0.229 TCP_MISS/200 188665 GEThttp://eiv.baidu.com/mapm2/jingyi/120705_jj_01/984bg.jpg - DIRECT/123.125.115.43image/jpeg1345532445.869 218 192.168.0.229 TCP_MISS/200 423 GEThttp://news.baidu.com/c_n? - DIRECT/123.125.114.18 text/html1345532446.055 170 192.168.0.229 TCP_MISS/200 1020 GEThttp://news.baidu.com/nocache/mp/b.jpg? - DIRECT/123.125.114.18 image/jpeg1345532446.303 515 192.168.0.229 TCP_MISS/200 3653 GEThttp://t3.baidu.com/it/u=http%3A%2F%2Fwww.cnr.cn%2Fgundong%2F201208%2FW020120821245142735909.jpg&fm=30- DIRECT/61.135.185.26 image/jpeg查看命中率# squidclient -p 8080 mgr:infoHTTP/1.0 200 OKServer: squid/3.1.10Mime-Version: 1.0Date: Tue, 21 Aug 2012 07:12:28GMTContent-Type: text/plainExpires: Tue, 21 Aug 201207:12:28 GMTLast-Modified: Tue, 21 Aug 201207:12:28 GMTX-Cache: MISS fromlocalhost.localdomainX-Cache-Lookup: MISS fromlocalhost.localdomain:8080Via: 1.0 localhost.localdomain(squid/3.1.10)Connection: closeSquid Object Cache: Version3.1.10Start Time: Tue, 21 Aug 2012 06:59:03 GMTCurrent Time: Tue, 21 Aug 2012 07:12:28 GMTConnection information for squid: Numberof clients accessing cache: 2 Numberof HTTP requests received: 130 Numberof ICP messages received: 0 Numberof ICP messages sent: 0 Numberof queued ICP replies: 0 Numberof HTCP messages received: 0 Numberof HTCP messages sent: 0 Requestfailure ratio: 0.01 AverageHTTP requests per minute since start: 9.7 AverageICP messages per minute since start: 0.0 Selectloop called: 382483 times, 2.107 ms avg... ...#取得squid运行状态信息: squidclient -p 8080 mgr:info取得squid内存使用情况: squidclient -p 80mgr:mem取得squid的磁盘使用情况: squidclient -p 8080 mgr:diskd查看更多:squidclient -p 8080 mgr:acl规则限制配置# deny news #过滤所有url中含有news的网站acl newsurl_regex -i news#过滤URL中出现news关键字http_accessdeny news# deny video #过滤主流的视频网站acl videodstdomain .youku.com .56.com .tudou.com .qiyi.comhttp_accessdeny videoacl worktimetime MTWHF 9:00-12:00http_accessdeny !worktime #9:00-12:00这段时间外不可以访问加入以上配置到配置文件后,刷新squid服务即可time ACL允许你控制基于时间的访问,时间为每天中的具体时间,和每周中的每天。日期以单字母来表示,见如下表。时间以24小时制来表示。[星期]:可以使用这些关键字M(Monday星期一)、T(Tuesday星期二)、W(Wednesday星期三)、H(Thursday星期四)、F(Friday星期五)、A(Saturday星期六)和S(Sunday星期天) [时间段]:可以表示为10:00-20:00。例如:aclworktime time MTWHF 9:00-18:00周一到周五的9点到18点访问控制应用实例1) 禁止IP地址为192.168.16.200的客户机上网。acl badclientip1 src192.168.16.200http_access deny badclientip12) 禁止192.168.1.0这个子网里所有的客户机上网。acl badclientnet1 src192.168.1.0/255.255.255.0http_access denybadclientnet13) 禁止用户访问IP地址为210.21.118.68的网站。acl badsrvip1 dst210.21.118.68http_access deny badsrvip14) 禁止用户访问域名为www.163.com的网站。acl baddomain1 dstdomain -iwww.163.comhttp_access deny baddomain15) 禁止用户访问域名包含有163.com的网站。acl badurl1 url_regex -i163.comhttp_access deny badurl16) 禁止用户访问域名包含有sex关键字的URL。acl badurl2 url_regex -i sexhttp_access deny badurl27) 限制IP地址为192.168.16.200的客户机并发最大连接数为5。acl clientip1 src192.168.16.200 acl conn5 maxconn 5 http_access deny client1 conn18) 禁止192.168.2.0这个子网里所有的客户机在周一到周五的9:00到18:00上网。acl clientnet1 src192.168.2.0/255.255.255.0 acl worktime time MTWHF 9:00-18:00 http_access denyclientnet1 worktime9) 禁止客户机下载*.mp3、*.exe、*.zip和*.rar类型的文件。acl badfile1 urlpath_regex -i\.mp3$ \.exe$ \.zip$ \.rar$ http_access deny badfile110) 禁止QQ通过squid代理上网。acl qq url_regex -itencent.com http_access deny qq


(以上内容不代表本站观点。)
---------------------------------
本网站以及域名有仲裁协议。
本網站以及域名有仲裁協議。

2024-Mar-04 02:11pm
栏目列表