squid代理服务器

一:squid代理服务器概述

1.1:squid简介

  • squid是一个支持http、https、ftp等服务的web缓存代理软件,通过缓存页面实现降低宽带占用提高页面响应时间。
  • 另外,squid提供访问控制,squid的缓存页面存放在内存和硬盘中,在选择服务器时候内存和硬盘要求高,对于数据过期更新,需要不定期的清理缓存的数据。

1.2:squid代理请求流程

  1. 客户端访问squid代理服务器
  2. 代理服务器代表客户端访问后端真实服务器
  3. 真实服务器把数据返回给squid代理服务器
  4. 代理服务器吧响应数据发送给客户端,并把页面缓存在本地的内存及磁盘中
  5. 客户端再次请求相同数据是,代理服务器直接将缓存的数据返回给客户端

1.3:squid代理服务类型

  1. 正向代理:主要应用于内部网络访问外部网络时缓存页面数据,提供统一网络接口连接到外网,所有的内网客户端无需配置外网IP即可通过squid上网,在这种模式下,squid主要负责提供缓存加速及访问控制的功能
  2. 透明代理:与正向代理类似,不需要终端用户进行特殊设置,需要结合网管部署,所有操作均由管理员在网关服务器和代理服务器进行设置,这些对用户透明的。
  3. 反向代理:反向代理集合智能DNS可以实现基本的CDN框架,此时的squid代理服务器可以直接代表后端服务器提供页面访问,用户并感觉不到自己是直接访问代理服务器,有利于减轻真实服务器压力,提高并发和响应速度。

二:部署环境实验操作

2.1:环境案例

主机 IP地址
squid 20.0.0.20
web1 20.0.0.21
web2 20.0.0.22

2.2:安装squid服务

--------------------------------------------安装squid服务-----------------------------------------------------------------
squid服务器:
[root@localhost ~]# hostnamectl set-hostname squid	#设置主机名squid
[root@localhost ~]# su				                #刷新
web服务器:
[root@localhost ~]# hostnamectl  set-hostname web	#设置主机名web
[root@localhost ~]# su



squid服务器配置:
将软件包上传到服务器中
[root@squid ~]# tar zxvf squid-3.4.6.tar.gz  -C /opt/	###将包解压到/opt目录下
[root@squid ~]# cd /opt/squid-3.4.6/
[root@squid squid-3.4.6]# yum -y install gcc gcc-c++	###安装编译工具gcc、gcc-c++
[root@squid squid-3.4.6]# ./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

--------------------------------------------上面配置的解释---------------------------------------------------------
./configure \
--prefix=/usr/local/squid \     #指定安装路径
--sysconfdir=/etc \			    #配置文件所存在的目录
--enable-arp-acl \			    #启用acl访问控制列表
--enable-linux-netfilter \		#内核过滤表
--enable-linux-tproxy \		    #支持透明代理
--enable-async-io=100 \		    #io的优化
--enable-err-language="Simplify_Chinese" \	#支持err语言(也就是报错是简体中文形式)
--enable-underscore \		                #url支持下划线
--enable-poll \			                    #字符设备驱动函数(内核函数)
--enable-gnuregex \			#支持正则表达式
----------------------------------------------------------------------------------------------------------
[root@squid squid-3.4.6]# make -j4 && make install		#编译并安装

[root@squid squid-3.4.6]# ln -s  /usr/local/squid/sbin/* /usr/local/sbin/	                                    #让可用命令让系统所能识别

[root@squid squid-3.4.6]# useradd -M -s /sbin/nologin squid		###建立一个程序性用户

[root@squid squid-3.4.6]# chown -R squid.squid /usr/local/squid/var/	###给用户一个权限

[root@squid squid-3.4.6]# vim /etc/squid.conf    #改主配置文件
#http_access deny all  	                         #默认拒绝所有,注销掉,或者放下面,从上往下读,不会拒绝掉
http_access  allow all	                         #加上这条allow,允许所有终端来访问,并且可用访问其他的源端服务器
	
http_port 3128
cache_effective_user squid		###在端口下面加上缓存管理用户
cache_effective_group squid		###在端口下面加上缓存管理组


[root@squid squid-3.4.6]# squid -k parse		###检查配置文件语法
[root@squid squid-3.4.6]# squid -z		        ###初始化缓存目录
[root@squid squid-3.4.6]# squid 		        ###启动服务

[root@squid squid-3.4.6]# netstat -anpt | grep 3128    ###可用查看一下启动了没
tcp6       0      0 :::3128                 :::*                    LISTEN      40026/(squid-1)  

[root@squid squid-3.4.6]# 
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值