zoukankan      html  css  js  c++  java
  • Squid代理上网服务

    ######

    1、squid的概念

    squid是一种用来缓存Internet数据的软件。接受来自人们需要下载的目标(object)的请求并适当的处理这些请求。也就是说,如果一个人想下载一web界面,他请求squid为他取得这个页面。squid随之
    连接到远程服务器并向这个页面发出请求。然后,squid显式地聚集数据到客户端机器,而且同时复制一份。当下一次有人需要同一页面时, squid可以简单的从磁盘中读到它,那样数据会立即传输到客户机上。

    2、Squid代理作用

    通过缓存的方式为用户提供Web访问加速
    对用户的Web访问进行过滤控制

    3、Squid工作流程

    当代理服务器中有客户端需要的数据时:
    a. 客户端向代理服务器发送数据请求;
    b. 代理服务器检查自己的数据缓存;
    c. 代理服务器在缓存中找到了用户想要的数据,取出数据;
    d. 代理服务器将从缓存中取得的数据返回给客户端。
    当代理服务器中没有客户端需要的数据时:
    1.客户端向代理服务器发送数据请求;
    2.代理服务器检查自己的数据缓存;
    3.代理服务器在缓存中没有找到用户想要的数据;
    4.代理服务器向Internet 上的远端服务器发送数据请求;
    5.远端服务器响应,返回相应的数据;
    6.代理服务器取得远端服务器的数据,返回给客户端,并保留一份到自己的数据缓存中。

    4、Squid安装配置

    4.1、在可以上网的机器test01安装squid

    [root@test01 ~]# yum install squid -y
    [root@test01
    ~]# ifconfig eth0 eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.50.20 netmask 255.255.255.0 broadcast 192.168.50.255 inet6 fe80::f816:3eff:feb1:c2c9 prefixlen 64 scopeid 0x20<link> ether fa:16:3e:b1:c2:c9 txqueuelen 1000 (Ethernet) RX packets 887995 bytes 2246987013 (2.0 GiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 914010 bytes 1447569963 (1.3 GiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

    4.2、对test01机器squid服务进行配置

    [root@test01 ~]# cat /etc/squid/squid.conf
    acl localnet src 10.0.0.0/8                # RFC1918 possible internal network
    acl localnet src 172.16.0.0/12             # RFC1918 possible internal network
    acl localnet src 192.168.0.0/16            # RFC1918 possible internal network
    acl localnet src fc00::/7                  # RFC 4193 local private network range
    acl localnet src fe80::/10                 # RFC 4291 link-local (directly plugged) machines
    acl local src 192.168.50.0/24              #此处添加配置含义:允许此网段服务器通过test01服务代理出网
    acl SSL_ports port 443
    acl Safe_ports port 80                     # http
    acl Safe_ports port 21                     # ftp
    acl Safe_ports port 443                    # https
    acl Safe_ports port 70                     # gopher
    acl Safe_ports port 210                    # wais
    acl Safe_ports port 1025-65535             # unregistered ports
    acl Safe_ports port 280                    # http-mgmt
    acl Safe_ports port 488                    # gss-http
    acl Safe_ports port 591                    # filemaker
    acl Safe_ports port 777                    # multiling http
    acl CONNECT method CONNECT
    http_access deny !Safe_ports
    http_access deny CONNECT !SSL_ports
    http_access allow localhost manager local  #添加local含义:引用上面添加规则
    http_access deny manager
    http_access allow localnet
    http_access allow localhost
    http_access deny all
    http_port 3128
    coredump_dir /var/spool/squid
    refresh_pattern ^ftp:        1440    20%    10080
    refresh_pattern ^gopher:    1440    0%    1440
    refresh_pattern -i (/cgi-bin/|?) 0    0%    0
    refresh_pattern .        0    20%    4320

    4.3、启动squid服务

    [root@test01 ~]# systemctl restart squid

    4.4、配置不可上网服务器test02环境变量

    [root@test02 ~]# tail -2 /etc/profile   #在/etc/profile中添加如下两行配置
    http_proxy=192.168.50.20:3128           #指定squid代理服务器IP(squid部署服务器):端口
    export http_proxy
    [root@test02
    ~]# source /etc/profile

    ######

  • 相关阅读:
    poj 3122 (二分查找)
    poj 1064 (二分+控制精度) && hdu 1551
    hdu 2199 (二分)
    hdu 2141 (二分)
    poj 2954 Triangle(Pick定理)
    poj 1265 Area (Pick定理+求面积)
    hdu 4946 Just a Joke(数学+物理)
    zoj 1199 几何公式推导
    MMORGP大型游戏设计与开发(客户端架构 part13 of vegine)
    MMORPG大型游戏设计与开发(客户端架构 part12 of vegine)
  • 原文地址:https://www.cnblogs.com/faithH/p/14075022.html
Copyright © 2011-2022 走看看