实现通过特定设备对特定的网址访问加速

使用squid 正向代理 实现,区别于反向代理,两者区别的根本在于作为中转的服务器在一个完整的请求中是代表客户端还是代表服务器。

服务端设置

1.安装程序包(推荐 Centos 6.8 7.2)

sudo yum update
sudo yum -y install squid

2.关闭干扰程序

chkconfig --level 2345 postfix off
chkconfig --level 2345 sendmail off

3.设置缓存目录(建议设置大一点的)

mkdir -p /var/cache/squid
chown -R squid:squid / /var/cache/squid
#chmod -R 777 /var/cache/squid
#不到万不得已 不要设置 777

4.启动测试

squid -z
#检查配置文件
service squid restart
#centos 6
systemctl restart squid.service
#centos 7
chkconfig --level 2345 squid on

经过以上几个步骤 如果没有端口冲突 可以确定 squid 启动没有问题。说明squid 的启动环境OK,下面将对我们的需求做指定调整

配置文件:

 acl xxx-v-szzb dst 127.0.0.0/ 0.0.0.0/ ::
acl SSL_ports port
acl Safe_ports port # http
acl Safe_ports port # ftp
acl Safe_ports port # https
acl Safe_ports port # gopher
acl Safe_ports port # wais
acl Safe_ports port - # unregistered ports
acl Safe_ports port # http-mgmt
acl Safe_ports port # gss-http
acl Safe_ports port # filemaker
acl Safe_ports port # multiling http
acl CONNECT method CONNECT http_access allow manager xxx-v-szzb
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
#http_access allow all
#acl http proto HTTP
acl good_domain dstdomain .salesforce.com .force.com .ip508.com
http_access allow manager good_domain
http_access deny !good_domain http_port
coredump_dir /app/squid/coredump_dir1
refresh_pattern ^ftp: %
refresh_pattern ^gopher: %
refresh_pattern -i (/cgi-bin/|\?) %
refresh_pattern (Release|Packages(.gz)*)$ %
refresh_pattern . %
strip_query_terms off
visible_hostname ss.72blog.com
cache_store_log none
cache_access_log none
cache_mem MB
cache_dir aufs /app/squid/cache_dir1
cache_swap_low
cache_swap_high
maximum_object_size MB
maximum_object_size_in_memory MB
dns_nameservers 10.0.1.1 10.0.1.2
client_lifetime minutes
half_closed_clients off

不可照搬,有以下几行需要自定义

1/15:两行的主机名要是 squid所在设备的主机名

2~12 :设置接受的代理端口

13~30:落实上述端口的设置,不在端口类的,不做代理

21~23:设置代理的目的域名,不在范围的目的域名不做代理,这里配置了三个,【.ip508.com用来测试代理是否生效的(可以返回客户端IP)】

25:设置端口

26~40:在不清楚意义的前提下,不要修改,【26/37 缓存目录需要修改】

客户端设置

不可在IE设置全局,因为IE浏览器设置后导致整个操作系统全局访问被设置

Chrome

1.快捷方式设置

直接找到chrome 的快捷方式加上启动配置

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
#这是原配置
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --proxy-server="172.31.2.35:80"
#这是新配置 加上 --proxy-server="172.31.1.135:80"

但是这样配置的结果就是导致 chrome 被全局设置了,chrome 只能访问 squid 配置文件 21 行配置的地址。

2.插件配置

安装插件:Proxy Switchy!

配置插件

配置规则

选择自动切换模式,这样只有特定的地址才会走代理,而服务端只能代理这些特定的地址。

Squid 正向代理的更多相关文章

  1. Squid 正向代理配置

    Squid 正向代理配置 1.删除主配置文件重写写入配置 rm -f /etc/squid/squid.conf 2.重新写入配置正向代理 vim /etc/squid/squid.conf # 监听 ...

  2. Linux 笔记 - 第十九章 配置 Squid 正向代理和反向代理服务

    一.简介 Squid 是一个高性能的代理缓存服务器,对应中文的乌贼,鱿鱼的意思.Squid 支持 FTP,gopher 和 HTTP 协议.和一般的代理缓存软件不同,Squid 用一个单独的,非模块化 ...

  3. Linux代理服务器—squid正向代理实验

    1.代理服务器squid简介 Squid cache(简称为Squid)是一个流行的自由软件(GNU通用公共许可证)的代理服务器和Web缓存服务器.Squid有广泛的用途,从作为网页服务器的前置cac ...

  4. squid 正向代理 简单配置

    linux 正向同步 项目上web服务器不给访问外网,迁移服务器环境又太麻烦,决定给web服务器做正向代理,刚开始使用nginx,但是https代理一直不成功,后面大佬建议使用squid来达到相同目的 ...

  5. nginx或者squid正向代理实现受限网站的访问

    项目背景:公司商务同事需要操作合作方的后台,但是这个后台做了限制(安全考虑只对指定IP放行),刚好公司是adsl拨号,经常更换IP 需求:让商务同事不要经常给IP到合作方去添加白名单 于是想到了做正向 ...

  6. 教你如何在5分钟轻松部署squid正向代理

    正向代理是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返 ...

  7. squid正向代理访问外网

    目录 一.前言 二.Squid安装 三.客户端设置 四.验证 五.Python请求 六.写在最后 一.前言 1)我们可能会碰到这样的需求,客户端Client-1需要访问Server-1,但由于各种各样 ...

  8. squid正向代理使用

     环境: Squid Cache: Version 3.5.20 操作系统: centos7.6 squid安装配置 yum install -y squid systemctl  start  sq ...

  9. 部署和调优 2.1 squid正向代理

    安装squid yum install -y squid Squid 官方网站为 http://www.squid-cache.org 打开注释掉的 cache_dir ufs / 缓存目录的位置,大 ...

随机推荐

  1. AE After Effect 渲染如何输出设置

    各种输出设置值的对比情况. Microsoft Video1压缩方法情况(该模式下无法采用RGB+Alpha): 一 深度为"数千种颜色",缩放为1280×720(HDV/HDTV ...

  2. datatables对于某一特定的列进行自定义排序

    首先说下里边的api,其中第一个是order,这个里边是设置哪些排序哪些不排序的,比如:$('#example').dataTable( {     "order": (funct ...

  3. 【C语言】推断一个数是否为2的n次方

    //推断一个数是否为2的n次方 #include <stdio.h> int is_two_n(int num) { if ((num&(num - 1))) //去掉一个1,推断 ...

  4. VirtualMachineManager

    Java Code Examples for com.sun.jdi.VirtualMachineManager https://www.programcreek.com/java-api-examp ...

  5. 关注PHPthinking官网微信公众号——红包来袭

    欢迎大家扫描关注PHPthinking官方微信订阅号,我们将给您定期发送质量博文.新闻趣事.站点公告等等,同一时候还有PHPthinking准备的每日微信红包(金额不等,已发出百元红包)等着你! 官网 ...

  6. CSS和JS结合控制样式

    CSS控制样式,毋庸置疑.但有时,仅靠CSS却很难控制好,比如说,页面在多种条件下进行不同的呈现:或者运行过程中,会发生变化,比如说,左侧的菜单栏收缩了,那么右侧的宽度就变大了. 就拿这个元素的wid ...

  7. 容器HashMap原理(学习)

    一.概述 基于哈希表的 Map 接口的非同步实现,允许使用 null 值和 null 键,不保证映射的顺序 二.数据结构 HashMap实际上是一个“链表散列”的数据结构,即数组和链表的结合体:Has ...

  8. HDU 1724 Ellipse 【自适应Simpson积分】

    Ellipse Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Sub ...

  9. 关于移动平台的viewport

    viewport是用来设置移动平台上的网页宽度,写device-width比较好,不然会和设备上不一样 在使用device-width之后,图片资源最好使用百分比布局,进行自动缩放. 文字大小是一样的 ...

  10. exynos 4412 时钟配置

    /** ****************************************************************************** * @author    Maox ...