squid缓存服务的搭建和配置管理
1.什么是squid服务?提供的代理服务(缓存服务),可以缓存用户访问过的数据,当用户下次访问同样的数据时,squid代理可以从缓存中提取数据,可以直接访问,提高了访问速度和降低了对带宽的使用。
2.应用的环境
公司现有100个用户需要全部上网,通过路由交换可以可以实现,也可以每人一个IP地址,通过以上方式上网不能缓存用户访问过的数据。
3.squid代理的方式有三种:
普通代理:客户端必须在自己的浏览器里指定代理服务器的ip地址和代理服务监听的端口号,才能够通过代理服务器上网,代替局域网内的所有客户端上网。
透明代理:客户端不需要在自己的浏览器里指定代理服务器的ip地址和代理服务监听的
反向代理:代替公网客户端访问私网的服务器。
4.squid通过什么限制客户端通过自己访问什么样的资源?
通过ACL(访问控制列表)来限制客户端 通过自己访问资源。
*acl要先定义后调用,但可以只定义不调用
*调用acl时遇到匹配就执行,后边的就不查看了
*所以在调用acl时,要把要小范围的放在大范围的上边
5.squid优点:
[*] 1)通过缓存增加访问速度。
2)提供用私有IP访问internet的方法。
3)提高网络的安全性。
4)方便对用户的管理。
6.squid缺点:
1)产生单点故障。
2)当同时访问时网络比较慢。
7.进程名squid
进程所有者/组 squid
端口号 3128
数据传输协议 tcp
实验(一)
实验目的:搭建普通代理
实验环境:3台服务器
pc1 主机名:localhost IP地址:192.168.1.10 内网客户机
pc2 主机名:fanlj 代理服务器(eth0连接内网IP地址192.168.1.254,eth1连接外网IP地址1.1.1.254)
pc3 主机名:fanxiaohui IP地址:1.1.1.1 外网web服务
实验要求:
PC2代理内网用户PC1可以访问外网的WEB服务。
搭建实验环境分别安装以上要求进行搭建,并且在pc2上测试是否可以ping通1.1.1.254和1.1.1.1。
http://s3.运维网.com/wyfs02/M00/72/84/wKiom1XlSLDA48GYAAHLK6N0F80591.jpg
在外网WEB创建一个网页index.html,内容是1.1.1.1
http://s3.运维网.com/wyfs02/M02/72/82/wKioL1XlXkrBvC0gAABLizch0eM843.jpg
在PC2上测试是否可以访问WEB的内容
http://s3.运维网.com/wyfs02/M00/72/82/wKioL1XlXgiiC9ScAAA8I2v0CRQ653.jpg
在PC2上部署squid代理,可以代替内网用户PC1的用户可以访问PC3WEB的内容
1.查看软件包是否安装,如果没有安装,就安装squid软件包。
http://s3.运维网.com/wyfs02/M00/72/85/wKiom1XlW_TwJCg9AAA9kFZQCko619.jpg
http://s3.运维网.com/wyfs02/M01/72/85/wKiom1XlXQ6zO5U-AAE_rIB16-4134.jpg
2.修改主配置文件,http_port访问squid端口为3128,cache_dir为缓存存放的目录,ufs为目录的固定格式,/var/spool/squid为存放的位置,100为缓存的大小,16为/var/spool/squid目录下有16个目录,256为在16个目录下有256个子目录,cache_mem为拿出实际物理内存32M做高速缓存,visible_hostname为主机名,当系统的主机名和hosts文件中127.0.0.1中的主机名不一致时,必须在squid配置文件中要指明主机名,默认squid服务就代替私ip地址通过自己上网。
http://s3.运维网.com/wyfs02/M02/72/82/wKioL1XlZjfixvUpAAAz3-5FESg495.jpg
http://s3.运维网.com/wyfs02/M00/72/91/wKioL1XnBU2RW_2rAAGfyUHruks732.jpg
http://s3.运维网.com/wyfs02/M00/72/83/wKioL1XlZpCjcZGdAACK_QkUEYc797.jpg
3.重新启动squid服务,并且查看/var/spool/squid目录下是否有16个目录。
http://s3.运维网.com/wyfs02/M01/72/86/wKiom1XlZMfA6Ok_AAB5wVXjdYQ402.jpg
http://s3.运维网.com/wyfs02/M02/72/86/wKiom1XlZReRGzHbAAB2FmIrkUk724.jpg
查看端口和进程
http://s3.运维网.com/wyfs02/M02/72/83/wKioL1XlaSXQNKIwAAFPoywEekw658.jpg
4.在客户端PC1测试,客户端必须在自己的浏览器中指定代理 服务器的IP地址和代理服务监听的端口。
在客户端浏览器上选择编辑---首选项----高级----网络---设置----手动配置代理指向自己本网段squid代理的IP地址和端口为3128.
http://s3.运维网.com/wyfs02/M00/72/86/wKiom1XlaI-De6ZyAADBHyj5vJ0361.jpg
在自己的浏览器中直接输入http://1.1.1.1
http://s3.运维网.com/wyfs02/M01/72/86/wKiom1XlaQPCy65OAACD8Y-0F7k956.jpg
5.在代理服务器上查看有那些客户端访问过1.1.1.1
http://s3.运维网.com/wyfs02/M00/72/86/wKiom1XlaevzKIY2AADIKHYiY0g492.jpg
普通代理缺点:
客户端必须在自己浏览器中指定代理服务器的IP地址。
实验(二)
实验目的:配置透明代理
透明代理优点:客户端不需要在自己的浏览器里指定代理服务器的ip地址和代理服务监听的,只要把网关指定代理服务器的私网接口的IP地址就可以上网。
实验要求:客户端不在自己的浏览器中指定代理的接口和IP地址就可以上网。
配置squid透明代理的前题条件?
企业的网关(共享接入Internet)
防火墙服务必须和代理服务运行在一台服务器上
需要设置防火墙策略(将客户机的Web访问数据转交给代理服务程序处理)
1、把客户端访问网站的请求包,发个代理服务器
http://s3.运维网.com/wyfs02/M01/72/94/wKiom1Xm5QSSlzZyAAFBb64-Nlc708.jpg
2、在代理服务器上运行防火墙服务,编写防火墙规则,把本机接收到的访问web的请求转交给本机的代理服务
http://s3.运维网.com/wyfs02/M00/72/94/wKiom1Xm5iORV6lQAAA1axR6J0E322.jpg
http://s3.运维网.com/wyfs02/M01/72/90/wKioL1Xm6E_jzSv8AABV2SR7NA0443.jpg
http://s3.运维网.com/wyfs02/M01/72/94/wKiom1Xm5jbQTRd0AADuU-3Hh9o891.jpg
http://s3.运维网.com/wyfs02/M01/72/94/wKiom1Xm-PHir4IXAADvFe-gSkg475.jpg
http://s3.运维网.com/wyfs02/M02/72/94/wKiom1Xm5tSwJBfIAAAmuKm0PBw979.jpg
http://s3.运维网.com/wyfs02/M00/72/91/wKioL1Xm9QPTOlxqAAF38T7OEiw600.jpg
iptables -t 表名 管理选项 链名 匹配条件 -j 处理动作
表名(不同的表有不同的功能)
filter 数据包过滤
mangle 给数据包打标记
nat 给数据包做转换(源地址 \ 目的地址\ 端口)
raw 跟踪数据包状态
管理选项
-L 查看
-D 删除
-A 添加
-F 清空
链 (数据包传输的方向以防火墙本机为参照物)
INPUT 进入防火墙的数据包
OUTPUT从防火墙本机出去的数据包
FORWARD 经过防火墙的数据包
POSTROUTING 路由后
PREROUTING 路由前
匹配条件
-i 指定数据包从那个物理接口进入
-s 指定数据包的来源地址
-p 指定数据传输协议
--dport 指定数据包的目标端口
处理动作
DROP丢弃
REJECT 拒绝
DNAT目标地址转换
SNAT 源地址转换
REDIRECT端口状态
3.在客户端测试,打开客户端浏览器输入http://1.1.1.1
http://s3.运维网.com/wyfs02/M00/72/91/wKioL1Xm-5WDgvDTAACdqZbDx9w850.jpg
实验(三)squid反向代理
反向代理: 代替公网客户端访问私网的服务器。
实验目的:配置squid的反向代理
实验要求:公网用户要访问私网的服务器的内容。
实验环境:3台服务器
pc1 主机名:localhost IP地址:192.168.1.10 内网web服务器
pc2 主机名:fanlj 代理服务器(eth0连接内网IP地址192.168.1.254,eth1连接外网IP地址1.1.1.254)
pc3 主机名:fanxiaohui IP地址:1.1.1.1 外网client(用户)
环境分析:外网用户要访问内网web服务器必须通过代理服务器来访问,代理服务器必须监听80端口才能使外网访问内网,所以代理服务器上的httpd访问必须停止,如果代理服务器上有httpd服务,那么外网只能访问代理上的web服务。
1.修改主配置文件,使代理服务器做反向代理。cache_peer为真正后端服务器的地址,parent代理服务器和实现web服务器的关系,80代表访问的端口,0代表与其他代理服务器通信的接口,originserver代表提供服务器的真正主机。
http://s3.运维网.com/wyfs02/M00/72/94/wKioL1XnlR_jgmAYAAICg79GPao854.jpg
2.代理服务器停止防火墙和查看80端口是否被占用,如果占用被释放,从新启动squid服务。
http://s3.运维网.com/wyfs02/M01/72/98/wKiom1Xnw__Sc-HFAADHGbldvqI266.jpg
3.在web服务器端192.168.1.10做一个网页页面,并查看 httpd是否开启
http://s3.运维网.com/wyfs02/M02/72/98/wKiom1Xnwf_Bm-KhAAF6ONcTRPw544.jpg
4.公网用户查看是否可以访问web服务器。
http://s3.运维网.com/wyfs02/M01/72/95/wKioL1XnxKTixBAqAAB1f9gX0iY425.jpg
实验(四)基于域名和端口的虚拟主机的访问。
实验目的(一):当外网用户访问www.tarena.com,内网服务器端显示wwwpage页面,(http://www.tarena.com显示wwwpage)
用户访问bbs.tarena.com ,内网服务器端显示bbspage页面(http://bbs.tarena.com 显示bbspage)。
1.在内网服务器创建两个文件夹用来存放页面分别为:wwwpage和bbspage
http://s3.运维网.com/wyfs02/M00/72/9B/wKiom1XoGYyCDMTQAABLSEH41EE681.jpg
http://s3.运维网.com/wyfs02/M01/72/97/wKioL1XoG7fDdqnsAABzvjOovrU956.jpg
2.在内网服务器上创建基于域名的虚拟主机,使外网用户访问不同地址时显示不同的页面。
http://s3.运维网.com/wyfs02/M00/72/9B/wKiom1XoHI_hWk2uAADwgtOfU_g512.jpg
http://s3.运维网.com/wyfs02/M01/72/97/wKioL1XoHtijeIGaAAEPUtWnY6w364.jpg
http://s3.运维网.com/wyfs02/M00/72/98/wKioL1XoIbjALTMeAABIsHUF19A054.jpg
3.测试自己访问是否可以解析
http://s3.运维网.com/wyfs02/M00/72/98/wKioL1XoKXHQyo61AABGbDtNt94327.jpg
http://s3.运维网.com/wyfs02/M00/72/9B/wKiom1XoJ6ahF5dPAACSLQ1PW8s911.jpg
4.在squid服务器上配置DNS服务用来解析www.tarena.com和bbs.tarena.com.
http://s3.运维网.com/wyfs02/M02/72/9B/wKiom1XoHkbAcJRbAAD8l-M3Y8k763.jpghttp://s3.运维网.com/wyfs02/M00/72/9B/wKiom1XoHk_S4tVkAABjt-V9dVM713.jpg
http://s3.运维网.com/wyfs02/M00/72/9B/wKiom1XoMyPzg8NVAAEL2rLPSbk826.jpg
5.在外网客户端上测试查看是否可以访问www.tarena.com 和bbs.tarena.com
http://s3.运维网.com/wyfs02/M01/72/98/wKioL1XoKmnz0G-5AAA6XZsiZlk179.jpg
http://s3.运维网.com/wyfs02/M01/72/9B/wKiom1XoM5_TwyrmAACWXfiM5eI799.jpg
页:
[1]