42.部署Squid代理服务

Squid代理服务器

Squid代理服务器工作在应用层,主要提供缓存加速,应用层过滤控制等功能。

Squid代理的工作机制:

当客户机通过代理来请求web页面时,指定的代理服务器会先检查自己的缓存,如果缓存中有数据则直接反馈给客户机,如果没有则由代理服务器向internet发送访问请求,然后返回web页面时,先缓存起来,然后反馈给客户机。

Squid代理的基本类型:

传统代理:普通的代理方式,客户机需手动指定代理地址和工作端口

透明代理:客户机不需要指定代理地址和工作端口,而是通过默认路由,防火墙策略将web访问重定向交给代理服务器处理

搭建squid代理服务器:

编译安装squid

# tar xzvf squid-3.4.6.tar.gz

# cd squid-3.4.6

#./configure --prefix=/usr/local/squid --sysconfdir=/usr/local/squid/etc --enable-arp-acl --enable-linux-netfilter --enable-linux-tproxy --enable-async-io=100 --enable-err-language="Simplify_Chinese" --enable-underscore --enable-poll --enable-gnregex

注释:

--prefix:指定安装路径

--sysconfdir:指定配置文件路径

--enable-arp-acl :可以在规则中设置直接通过客户端MAC进行管理,防止客户端使用IP欺骗

--enable-linux-netfilter:可以使用iptables的内核过滤

--enable-linux-tproxy:支持透明模式

--enable-async-io:异步I/O,提升存储性能,指定缓存空间大小

--enable-err-language:错误信息显示的语言

--enable-underscore:允许URL中有下划线

--enable-poll:使用Poll模式,提升性能

--enable-gnregex:使用GNU正则表达式

#make && make install

创建命令链接文件,使命令方便调用

#ln -s /usr/local/squid/sbin/* /usr/local/sbin/

创建用户和组,授予安装目录相关权限

#useradd -M -s /sbin/nologin squid

#chown  -R squid.squid /usr/local/squid/var

#vim /usr/local/squid/etc/squid.conf

visible_hostname ren

coredump_dir /usr/local/squid/var/cache/squid

cache_dir cache_effective_user squid

cache_effective_group squid ufs /usr/local/squid/var/cache/squid 100 16 256

cache_effective_user squid

cache_effective_group squid

Cache mem 512MB

http_port 1.1.1.0/24:3128 transparent

注释

visible_hostname:给一个主机名

coredump_dir:表示缓存的文件位置

cache_effective_group squid ufs:指定缓存文件的大小

cache_effective_user :指定运行squid程序缓存的用户

cache_effective_group squid:指定运行squid程序缓存的组

Cache mem :在物理内存中可用的值

http_port 1.1.1.0/24:3128 transparent :设置该网段让其支持透明代理

初始化squid代理

#squid -k parse

# squid -z

启动squid代理

#squid

代理实现方式:

传统代理:在客户机的浏览器中输入要代理的地址端口

透明代理:修改配置文件让其支持透明代理,然后通过iptables防火墙将规则重定向到代理服务器中即可,动作:REDIRECT

例:#iptables -t nat -A PREROUTING -i eth1 -s 1.1.1.0/24 -p tcp --dport 80 -j REDIRECT --to 3128

#iptables -t nat -A PREROUTING -i eth1 -s 1.1.1.0/24 -p tcp --dport 443 -j REDIRECT --to 3128

#unset  HTTP_PROXY HTTPS_PROXY

ACL访问控制

我们可以通过squid定义自己的访问控制列表,格式:acl 列表名称 列表类型 列表内容

常用的访问控制列表里类型


列表类型


列表内容


含义


Src


192.168.1.1

192.168.1.0/24

192.168.1.1-192.168.1.10


基于源IP地址,网段,IP地址范围过滤


Dst


1.1.1.1

1.1.1.0/24

www.a.com


基于目标IP地址,网段,主机名过滤


Port


80  443  8080  21  20


基于目标端口过滤


Dstdomain


.qq.com


基于目标域过滤


Time


MTWHF 8:30-17:30


基于星期,M表示星期一,T表示星期二,W表示星期三,H表示星期四,F表示星期五


Maxconm


20


每个客户机的并发连接数


Url_regex


Url_regex -i ^a://


目标资源的URL地址,-i 表示忽略大小写


Urlpath_regex


Urlpath_regex -i \.mp3$


目标资源的整个URL路径,-i表示忽略大小写

例:#vim /etc/squid.conf

Acl xiao url_regex -i ^http://

http_access deny MYLAN xiao 表示只要是http://开头的URL都拒绝访问

时间: 2024-07-30 15:49:17

42.部署Squid代理服务的相关文章

squid代理服务简单配置

Squid做为应用层的代理服务软件,squid主要用于提供缓存加速,应用层过滤控制的功能. 工作机制: 当客户机通过代理来请求web页面时,指定的大力服务器会先检查自己的缓存,如果缓存中已经有客户机需要的页面,则直接将缓存中的页面内容反馈给客户机:如果缓存中没有客户机要访问的页面,则有代理服务器向Internet发送请求,当获得返回的web页面以后,将网页数据保存到缓存中并发送给客户机. 代理服务器squid的好处:1,.提高了客户机的web访问响应速度.2.由于客户机的web请求是由代理服务器

生产环境部署squid服务

网络拓扑 该实验使用虚拟机模拟搭建,准备开启2台虚拟机,客户端用本记代替. 1.Squid服务器使用2块网卡.如下图显示: 2.Web服务器与squid服务器配置在同一个网段即可.如下图显示: 3.客户端IP与squid服务器网卡1是在同一网段上即可.如下图显示: 4.查看squid服务器上的eth0和eth1网卡ip地址 5.查看web服务器的ip地址 6.先测试客户端能否ping通squid服务器的网卡1. 7.测试客户端能否ping通web服务器,ping不通正常. 8.安装squid软件

Linux之安装部署squid代理服务器

Linux之安装部署squid代理服务器 1.案例拓扑图 系统centos6.5   软件sarg-2.3.7.tar.gz  squid-3.4.6.tar.gz 2.案例要求 (1)如上图要求配置网络,内部linux需要配置默认网关,外部linux不需要配置默认网关,squid服务器上开启路由转发. (2)在squid服务器上安装squid,并做相关的配置,启动squid服务,查看端口. (3)搭建传统代理服务器,要求在内部linux服务器能够使用传统代理访问外部的web服务器.内部客户端最

RHCE 第18节课 Openldap目录服务和Squid代理服务

今天老师讲了两个部分的内容,分别的目录服务Openldap 和Squid 代理服务,openldap比较难理解,squid代理服务分为正向代理模式和反向代理模式,各有各的用处. 原文地址:https://blog.51cto.com/12331786/2459147

Squid代理服务部署

构建Squid代理服务器1.配置IP地址 2.编译安装Squid软件[[email protected] ~]# tar -zxvf squid-3.4.6.tar.gz -C /usr/src/[[email protected] ~]# cd /usr/src/squid-3.4.6/[[email protected] squid-3.4.6]# ./configure --prefix=/usr/local/squid --sysconfdir=/etc --enable-arp-acl

Squid代理服务ACL访问控制及日志分析

对于Squid服务的部署可以参考博文:Squid代理服务器安装及部署对于Squid服务配置代理服务器可以参考博文:利用Squid构建传统代理及透明代理 Squid服务的ACL访问控制 Squid提供了强大的代理控制机制,通过合理设置ACL(访问控制列表)并进行限制,可以针对源地址.目标地址.访问的URL路径.访问的时间等各种条件进行过滤. 在配置文件squid.conf中,ACL访问控制通过两个步骤来实现: 使用acl配置项定义需要控制的条件: 通过http_access配置项对已经定义的列表做

运维学习之squid代理服务

squid 一.squid是什么? 1.Squid是一个高性能的代理缓存服务器,Squid支持FTP.gopher和HTTP协议.和一般的代理缓存软件不同,Squid用一个单独的.非模块化的.I/O驱动的进程来处理所有的客户端请求. 2.Squid是一种用来缓冲Internet数据的软件.它是这样实现其功能的,接受来自人们需要下载的目标(object)的请求并适当地处理这些请求.也就是说,如果一个人想下载一web页面,他请求Squid为他取得这个页面.Squid随之连接到远程服务器(比如:htt

squid代理服务

一:squid传统代理服务 1.编译安装squid 2.创建链接文件,用户和组 3.修改squid配置文件 4.启动squid服务并成功看到3128端口开启 5.编写防火墙规则 6.配置客户端网络代理 7.客户机验证可以通过代理访问服务器 二:透明代理 1.改配置文件 2.新建防火墙规则 三:squid日志分析sarg服务 1.配置本地yum源并安装GD库 2.编译安装sarg服务 3.修改sarg配置文件 4.优化并运行sarg和httpd服务 5.客户机验证可以正常使用sarg工具

Linux的squid代理服务

一.squid简介 代理服务器英文全称是Proxy Server,其功能就是代理网络用户去取得网络信息.Squid是一个缓存Internet 数据的软件,其接收用户的下载申请,并自动处理所下载的数据.当一个用户想要下载一个主页时,可以向Squid 发出一个申请,要Squid 代替其进行下载,然后Squid 连接所申请网站并请求该主页,接着把该主页传给用户同时保留一个备份,当别的用户申请同样的页面时,Squid 把保存的备份立即传给用户,使用户觉得速度相当快.Squid 可以代理HTTP.FTP.