• Squid 正向代理


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

    使用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,下面将对我们的需求做指定调整

    配置文件:

     1 acl xxx-v-szzb dst 127.0.0.0/8 0.0.0.0/32 ::1
     2 acl SSL_ports port 443
     3 acl Safe_ports port 80      # http
     4 acl Safe_ports port 21      # ftp
     5 acl Safe_ports port 443     # https
     6 acl Safe_ports port 70      # gopher
     7 acl Safe_ports port 210     # wais
     8 acl Safe_ports port 1025-65535  # unregistered ports
     9 acl Safe_ports port 280     # http-mgmt
    10 acl Safe_ports port 488     # gss-http
    11 acl Safe_ports port 591     # filemaker
    12 acl Safe_ports port 777     # multiling http
    13 acl CONNECT method CONNECT
    14 
    15 http_access allow manager xxx-v-szzb
    16 http_access deny manager
    17 http_access deny !Safe_ports
    18 http_access deny CONNECT !SSL_ports
    19 #http_access allow all 
    20 #acl http proto HTTP
    21 acl good_domain dstdomain .salesforce.com .force.com .ip508.com
    22 http_access allow manager good_domain
    23 http_access deny !good_domain
    24 
    25 http_port 80
    26 coredump_dir /app/squid/coredump_dir1
    27 refresh_pattern ^ftp:       1440    20% 10080
    28 refresh_pattern ^gopher:    1440    0%  1440
    29 refresh_pattern -i (/cgi-bin/|?) 0 0%  0
    30 refresh_pattern (Release|Packages(.gz)*)$      0       20%     2880
    31 refresh_pattern .       0   20% 4320
    32 strip_query_terms off
    33 visible_hostname ss.72blog.com
    34 cache_store_log none
    35 cache_access_log none
    36 cache_mem 512 MB
    37 cache_dir aufs /app/squid/cache_dir1 5000 128 128
    38 cache_swap_low 90
    39 cache_swap_high 95
    40 maximum_object_size 128 MB
    41 maximum_object_size_in_memory 128 MB
    42 dns_nameservers 10.0.1.1 10.0.1.2
    43 client_lifetime 1 minutes
    44 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)GoogleChromeApplicationchrome.exe"
    #这是原配置
    "C:Program Files (x86)GoogleChromeApplicationchrome.exe" --proxy-server="172.31.2.35:80"
    #这是新配置 加上  --proxy-server="172.31.1.135:80"

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

    2.插件配置

    安装插件:Proxy Switchy!

    配置插件

    配置规则

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

  • 相关阅读:
    Agile PLM bom表结构学习笔记
    火狐书签同步服务无法同步问题解决
    EasyExcel使用笔记
    给EasyUI查询按钮添加回车事件.
    让bat异常之后不直接关闭窗口的办法.
    DROP TABLE、TRUNCATE TABLE和DELETE的区别
    DUMPBIN工具的使用
    Java Build Path 详解
    用eclipse中打开已存在的Java Project
    .net core、微服务 开源项目
  • 原文地址:https://www.cnblogs.com/kamil/p/6920755.html
Copyright © 2020-2023  润新知