Squid理论+实验(传统模式,透明模式和反向代理)

一、什么是squid

  • Squid(Squid cache,简称Squid)是Linux系统中最常用的一款开源代理服务软件
  • 可以很好地实现HTTP和FTP,以及DNS查询、SSL等应用的缓存代理,功能十分强大
  • squid的官方网站为http://www.squid-cache.org

二、缓存代理概述

1、 Web代理的工作机制,缓存网页对象,减少重复请求

  • Squid是一个缓存Internet数据的一个软件,它接收用户的下载申请, 并自动处理所下载的数据。
  • 也就是说,当一个用户想要下载一个主页时,它向Squid发出一个申请,要Squid替它下载,然后Squid连接所申请网站并请求该主页,接着把该主页传给用户同时保留一个备份
  • 当别的用户申请同样的页面时,Squid把保存的备份立即0传给用户,减少了向Internet提交重复的Web请求的过程,提高了用户下载网页的速度,隐藏了客户机的真实IP

如图:
在这里插入图片描述

2、代理的基本类型

  • 传统代理:适用于Internet,需明确指定服务端
  • 透明代理: 客户机不需要指定代理服务器的地址和端口,而是通过默认路由、防火墙策略将Web访问重定向给代理服务器处理

3、使用代理的好处

  • 提高Web访问速度
  • 隐藏客户机的真实IP地址

三、squid传统代理搭建

环境介绍

squid服务器:192.168.100.10/24

web服务器:192.168.100.20/24

客户机:192.168.100.30/24

实验目的

  • 通过客户机访问web页面,不做代理时,web服务器的访问日志显示的是客户机IP,
  • 当做了传统代理后,web服务器的访问日志显示的是squid服务器IP。

squid服务器配置

  • 安装编译工具,解压squid软件包到opt
yum install gcc gcc-c++  -y
tar zxvf squid-3.5.27.tar -C /opt
  • 进入解压目录执行configure
./configure --prefix=/usr/local/squid \
--sysconfdir=/etc \
--enable-arp-acl \
--enable-linux-netfilter \
--enable-linux-tproxy \
--enable-async-io=100 \
--enable-err-language="Simplify_Chinese" \
--enable-underscore \
--enable-poll \
--enable-gnuregex 
  • 编译并安装
make && make install
  • 创建软连接,创建squid用户,更改squid属组
ln -s /usr/local/squid/sbin/*  /usr/local/sbin
useradd -M -s /sbin/nologin squid
chown -R squid:squid /usr/local/squid/var/
  • 修改squid配置文件,
vi /etc/squid.conf
###在第56行添加参数
     56 #http_access deny all
     57 http_access allow all
     58 http_port 3128                             ###在下面新增
     59 visible_hostname 192.168.100.10
     60 cache_mem 64 MB
     61 cache_swap_low 80
     62 cache_swap_high 97
     63 cache_dir ufs /usr/local/squid/var/cache/squid 512 16 256
     64 cache_effective_user squid        ##缓存用户squid
     65 cache_effective_group squid     ##缓存组squid

  • 检查squid相关配置,并初始化
squid -k parse                   ##检查配置文件
squid –k rec                       ##重新加载配置文件
squid -zX                            ##初始化缓存目录
  • 编写squid服务脚本,直接放到service中管理
vi /etc/init.d/squid  
#!/bin/bash
#chkconfig: 35 90 25
#config: /etc/squid.conf
#pidfile: /usr/local/squid/var/run/squid.pid
#Description: Squid - Internet Object Cache

PID
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值