squid 缓存服务器之传统、透明代理

Squid 简介

  Squid是一种用来缓冲Internet数据的软件。它是这样实现其功能的,接受来自人们需要下载的目标(object)的请求并适当地处理这些请求。也就是说,如果一个人想下载一web页面,他请求Squid为他取得这个页面。Squid随之连接到远程服务器并向这个页面发出请求。然后,Squid显式地聚集数据到客户端机器,而且同时复制一份。当下一次有人需要同一页面时,Squid可以简单地从磁盘中读到它,那样数据迅即就会传输到客户机上。当前的Squid可以处理HTTP,FTP,GOPHER,SSL和WAIS等协议。但它不能处理如POP,NNTP,RealAudio以及其它类型的东西。

squid 代理基本类型 :

  • 传统代理 :手动设置服务器的地址和端口,然后才能使用代理服务来访问网络。

  • 透明代理

本案环境

主机 IP地址 系统 主要软件
代理服务器 192.168.217.128 CentOS 7.3 squid
web 服务器 192.168.217.138 CentOS 7.3 httpd
客户端 192.168.217.133

部署传统代理

1.安装 squid 代理服务 :

yum install squid -y

2.编辑配置文件 :

vim /etc/squid/squid.conf
cache_effective_user squid        #添加   指定程序用户
cache_effective_group squid       #添加   指定账号基本组

http_access allow all        #添加在 http_access deny all 上面

http_port 3128
cache_mem 64 MB                   #指定缓存功能所使用的内存空间大小,便于保持访问较频繁的WEB对象,容量最好为4的倍数,单位为MB,建议设为物理内存的1/4
reply_body_max_size 10 MB         #允许用户下载的最大文件大小,以字节为单位。默认设置0表示不进行限制
maximum_object_size 4096 KB       #允许保存到缓存空间的最大对象大小,以KB为单位,超过大小限制的文件将不被缓存,而是直接转发给用户

3.配置防火墙规则链 :

iptables -F     #清空规则链
setenforce 0
iptables -I INPUT -p tcp --dport 3218 -j ACCEPT   #允许3128端口

4.客户端访问 web 服务器配置:

5.查看web服务器访问日志验证:

cat /etc/httpd/log/access.log

部署透明代理

透明代理 :客户机不需要指定代理服务器的地址和端口,而是通过路由、防火墙策略将web访问重定向,实际上还是交给代理服务器来处理。

本案环境

主机名 IP地址 系统 软件
代理服务器 内 192.168.217.1 外192.168.200.1 CentOS 7.3 squid
web 服务器 192.168.200.12 CentOS 7.3 httpd
客户机 192.168.217.133 win

1.添加双网卡 :

2.安装 squid 服务 :

yum install squid -y

3.编辑配置文件 :

vim /etc/squid/squid.conf

cache_effective_user squid        #添加   指定程序用户
cache_effective_group squid       #添加   指定账号基本组

http_access allow all        #添加在 http_access deny all 上面

http_port 192.168.217.1:3128 transparent   #添加本地IP地址  模式 透明

4.设置防火墙策略 :

iptables -F
iptables -t nat -I PREROUTING -i ens32 -s 192.168.217.0/24 -p tcp --dport 80 -j REDIRECT --to 3128   

iptables -t nat -I PREROUTING -i ens32 -s 192.168.217.0/24 -p tcp --dport 443 -j REDIRECT --to 3128
#把80、443端口重定向到3128端口
iptables -I INPUT -p tcp --dport 3218 -j ACCEPT

5.访问 web 服务器验证(客户机不需要配置代理服务器地址和端口) :

cat /etc/httpd/log/access.log  #查看访问日志

原文地址:http://blog.51cto.com/13640803/2154667

时间: 2024-11-06 09:29:31

squid 缓存服务器之传统、透明代理的相关文章

Squid缓存服务器之ACL访问控制与反向代理

Squid缓存服务器之ACL访问控制与反向代理 1.ACL访问控制 Squid提供了强大的代理控制机制和,通过合理设置ACL并进行限制.可以针对原地址.目标地址.访问的URL路径.访问的时间等各种条件进行过滤. 在配置文件squid.conf中ACL访问控制通过以下两个步骤来实现:其一,使用acl配置项定义需要控制的条件:其二,通过http_access配置项对已定义的列表做"允许"或者"拒绝"访问的控制. 1).定义访问控制列表 每一行acl配置可以定义一条访问控

【实战】Squid 缓存服务器 之 传统代理 + 透明代理

目录: 1· Squid代理的概述原理2· 代理的基本类型3· Squid 服务脚本4· 构建代理服务器(传统代理.透明代理)5· 总结 Squid代理的概述原理 1)代理的工作机制 1.什么是 Squid ? Squid是一个高性能的代理缓存服务器,Squid支持FTP.gopher.HTTPS和HTTP协议.和一般的代理缓存软件不同,Squid用一个单独的.非模块化的.I/O驱动的进程来处理所有的客户端请求. 2·缓存的工作原理 squid 是工作在应用层的代理服务软件,squid 主要提供

Squid学习之旅之透明代理回顾

系统环境:CentOS 6.5 Squid 3.0 内网网段:10.211.55.0/24 Squid服务器地址:10.211.55.4 (端口是3128) 客户端地址: 10.211.55.9 网 关:10.211.55.1 使用源码包编译安装 安装源码包必备参数集 ./configure --prefix=/usr/local/squid --sysconfdir=/usr/local/squid/etc --bindir=/usr/local/squid/bin --sbindir=/us

squid服务之配置透明代理

透明代理提供的服务功能与传统代理时一致的,但是其"透明"的实现依赖于默认路由和防火墙的重定向策略,因此更适用于局域网主机服务,而不适合Internet中. 网络环境如下: 项目大概流程如下: 在Linux网关上,构建squid为客户机访问Internet提供代理服务. 在局域网所有的客户机上,只需有正确的IP地址.默认网关和DNS,不需要手动指定代理服务器的地址.端口等信息(若指定了反而易出错).关于客户机的DNS解析工作,最好还是通过正常的DNS服务器来提供,不建议抛给代理服务器来处

squid缓存服务的搭建和配置管理

1.什么是squid服务? 提供的代理服务(缓存服务),可以缓存用户访问过的数据,当用户下次访问同样的数据时,squid代理可以从缓存中提取数据,可以直接访问,提高了访问速度和降低了对带宽的使用. 2.应用的环境 公司现有100个用户需要全部上网,通过路由交换可以可以实现,也可以每人一个IP地址,通过以上方式上网不能缓存用户访问过的数据. 3.squid代理的方式有三种: 普通代理:客户端必须在自己的浏览器里指定代理服务器的ip地址和代理服务监听的端口号,才能够通过代理服务器上网,代替局域网内的

squid中实现https的透明代理

1.生成测试用的证书: openssl req -new -keyout /etc/squid/key.pem -nodes -x509 -days 365 -out /etc/squid/cert.pem 2. 在squid.conf相应地方添加 https_port 443 cert=/etc/squid/cert.pem /etc/squid/key.pem transparent

利用Squid构建传统代理及透明代理

关于Squid的简介及安装部署过程可以参考博文:Squid代理服务器安装及部署 传统代理的实现最为简单,透明代理还需要结合默认默认路由.防火墙策略等一起来完成. 构建传统代理 使用传统代理的特点在于:客户机的相关程序(如IE浏览器.QQ聊天软件)必须指定代理服务器的地址.端口等基本信息. 案例环境 案例实施步骤大致分为: 1.Squid服务器的配置: 2.客户机的代理设置: 3.验证代理服务器. 案例实施 关于搭建Web服务器可以参考博文:CentOS 7 利用Apache搭建Web网站服务 如

Squid介绍及透明代理完整部署

Squid 缓存服务 1.缓存服务器结束 缓存服务器(cache server),即用来存储(介质为内存及硬盘)用户访问的网页.图片.文件等等信息的专用服务器,这种服务器不仅可以使用户可以最快的得到他们想要的信息,而且可以大大减少服务端网络传输的数据量,缓存服务器往往也是代理服务器,对于网站的用户来说,缓存服务器和代理是不可见的,即在用户看来所有的网站信息都是来自其正在访问的网站,而实际上可能是缓存服务器在提供访问数据 目前国内互联网公司常用的缓存服务器有:squid.varnish.nginx

linux下清除Squid缓存的方法记录

在日常运维工作中,只要用到squid缓存服务,就会常常被要求清理squid缓存.比如公司领导要求删一篇新闻,新闻是生成的静态.运维人员把服务器上静态的新闻页面删除了后,不料代理服务器上缓存还有.缓存服务器如果用的是suqid,下面就对清理squid缓存的方法做一梳理: (1)首先在squid的主配置文件中添加acl 列表,并允许受信任的主机有权限清除缓存.[[email protected] ~]# vim /etc/squid/squid.conf..............acl manag