目录
3.2.3、客户机测试(客户机网关要设置成Squid内网网关IP)
一、缓存代理概述
1.1、Web代理的工作机制
缓存网页对象,减少重复请求
注意:Squid代理服务器和源站服务器之间跑的就是BGP。
1.2、代理的基本类型
1、传统代理:需明确指定服务端
2、透明代理:客户机不需指定代理服务器的地址和端口,而是通过默认路由、防火墙策略将Web访问重定向给代理服务器处理
(区别在于需不需要客户端自己在浏览器上指定服务端)
1.3、使用代理的优势
1、提高Web访问速度
2、隐藏客户机的真实IP地址
二、传统代理的搭建
摘要1、Squid是基于Unix的代理服务器(proxy server),它缓存比起点源点更接近请求者的互联网内容。Squid支持缓存多种不同的网络对象,包括那些通过HTTP和FTP访问的人。缓存频繁要求网页、媒体文件和其它加速回答时间并减少带宽堵塞的内容。 一、缓存代理概述1.1、Squid代理的工作机制 缓存网页对象,减少重复请求 当代理服务器中有客户端需要的数据时: 1.2、代理的基本类型 1.2.1、传统代理:适用于Internet,需明确指定服务端 1.2.2、透明代理:客户机不需指定代理服务器的地址和端口,而是通过默认路由、防火墙策略将Web访问重定向给代理服务器处理 1.3、使用代理的好处 1.3.1、提高Web访问速度 1.3.2、隐藏客户机的真实IP地址 二、squid主要组成部分
|
|||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1、安装依赖环境
3.1、传统代理
环境
主机 | IP地址 |
---|---|
Squid代理服务器 | 20.0.0.10 |
Web网站服务(源主机) | 20.0.0.20 |
客户机 | 20.0.0.30 |
3.1.1、Squid服务器配置
①安装依赖环境
[root@Squid ~]# yum -y install gcc gcc-c++ make
②编译安装squid服务
1 [root@squid ~]# tar zxf squid-3.5.23.tar.gz -C /opt
2 [root@squid ~]# cd /opt/squid-3.5.23/
3 [root@squid squid-3.5.23]# ./configure --prefix=/usr/local/squid \
4 > --sysconfdir=/etc \ ###指定配置文件位置
5 > --enable-arp-acl \ ###支持acl访问控制列表
6 > --enable-linux-netfilter \ ###打开网络筛选
7 > --enable-linux-tproxy \ ###支持透明代理
8 > --enable-async-io=100 \ ###io优化
9 > --enable-err-language="Simplify_Chinese" \ ###报错显示简体中文
10 > --enable-underscore \ ###支持下划线
11 > --enable-poll \ ###默认使用poll模式,开启epoll模式时提升性能
12 > --enable-gnuregex ###支持正则表达式
13 [root@squid squid-3.5.23]# make && make install
③优化路径
1 [root@squid squid-3.5.23]# ln -s /usr/local/squid/sbin/* /usr/local/sbin
2 [root@squid squid-3.5.23]# useradd -M -s /sbin/nologin squid ###创建不可登录的程序用户
3 [root@squid squid-3.5.23]# chown -R squid.squid /usr/local/squid/var
④修改配置文件,优化启动项
1 [root@squid ~]# vi /etc/squid.conf
2 cache_effective_user squid #添加 指定程序用户
3 cache_effective_group squid #添加 指定账号基本组
4
5 [root@squid ~]# squid -k parse ###检查配置文件语法
6 [root@squid ~]# squid -z ###初始化缓存目录
7 [root@squid ~]# squid ###启动服务
8 [root@squid ~]# netstat -anpt | grep squid
9 tcp6 0 0 :::3128 :::* LISTEN 104314/(squid-1)
⑤添加服务到service管理
1 [root@squid ~]# vi /etc/init.d/squid
2 #!/bin/bash
3 #chkconfig: 2345 90 25
4 PID="/usr/local/squid/var/run/squid.pid"
5 CONF="/etc/squid.conf"
6 CMD="/usr/local/squid/sbin/squid"
7
8 case "$1" in
9 start)
10 netstat -natp | grep squid &> /dev/null
11 if [ $? -eq 0 ]
12 then
13