一、ACL概念

  Squid提供了强大的代理控制机制,通过合理设置ACL(Access Control List,访问控制列表)并进行限制,可以针对源地址、目标地址、访问的URL路径、访问的时间等各种条件进行过滤。

ACL访问控制的步骤:

  1、使用acl配置项定义需要控制的条件

  2、通过http_access配置项对已定义的列表做“允许”或“拒绝”访问的控制

二、ACL用法概述

(1)定义ACL访问列表

定义格式:acl  列表名称  列表类型  列表内容 ...

例:控制源IP网段

vim etc/squid.conf

acl MYLAN src 192.168.1.0/24  192.168.4.0/24

常用的ACL列表类型

 src          源地址
dst      目标地址
port      目标地址
dstdomain   目标域
time     访问时间
maxconn    最大并发连接
url_regex   目标URL地址 # 可以定义大的范围比如http://www.baidu.com
urlpath_regex  整个目标URL路径 # 可以定位到每个网站的具体目标的url,比如百度音乐的一首歌的url

(2)ACL访问控制

  定义好各种访问控制列表以后,需要使用httpd_access配置项来进行控制

格式:

  ~]#vim etc/squid.conf

  http_access  allow或deny  列表名……

  在每一条http_access规则中,可以同时包含多个访问控制列表名,各个列表之间以空格分隔,为“与”的关系,表示必须满足所有访问控制列表对应的条件才会进行限制

  规则匹配原理:没有设置任何规则时,Squid服务将拒绝客户端的请求,有规则但找不到相匹配的项时,Squid将采用与最后一条规则相反的权限,即如果最后一条规则时allow,就拒绝客户端的请求,否则允许该请求,但是我们要尽量避免找不到相匹配的情况。

三、ACL列表的详细应用

1、禁止任何客户机使用此代理服务:定义一条名为all的列表,匹配来自任意源地址的代理访问;然后拒绝此列表,注意ACL列表要写在前面

 ~]#vi  /etc/squid.conf
acl all src 0.0.0.0/0.0.0.0
http_access deny all
~]#service squid reload

2、允许多个局域网段在工作时间上网

 ~]#vim /etc/squid.conf
acl all src 0.0.0.0/0.0.0.0 (有些版本要这么写acl all src all)
acl MYLAN src 192.168.1.0/24 192.168.4.0/24
acl WORKTIME time MTWHF 08:30-17:30 (其中MTWHF是周一到周五的英文首字母)
http_access allow MYLAN WORKTIME
http_access deny all
~]#service squid reload
#注意要先写http_access allow MYLAN WORKTIME再写http_access deny all,因为先执行前面的,后面的就不执行了

3、通过黑名单限制目标网站

(1)首先创建地址列表文件(直接在配置文件里写也行,但是这种用列表文件的方式适合拒绝或允许的网站域名比较多的情况,而且方便增删管理)

 ~]#vim  /etc/squid/ipblock.list
61.135.167.36
60.28.14.0/24
~]#vim /etc/squid/dmblock.list
.qq.com

(2)配置acl

 ~]#vim /etc/squid.conf
acl IPBLOCK dst "/etc/squid/ipblock.list"
acl DMBLOCK dstdomain "/etc/squid/dmblock.list"
http_access deny IPBLOCK
http_access deny DMBLOCK
~]#service squid reload

Squid代理服务器(三)——ACL访问控制的更多相关文章

  1. Linux 搭建 squid 代理服务器 三种模式

    CentOS 6.7 squid 代理服务器 一般有两张或以上网卡,一张链接公网,访问外网资源,一张位于局域网. 代理服务器可以提供文件缓存.复制和地址过滤等服务,充分利用有限的出口带宽,加快内部主机 ...

  2. Squid代理服务器(一)——大家所用的游戏代理软件到底为何物?

    一.代理服务器应用场景分析 想当年大学时候宿舍控制网速,苦了我们这帮魔兽党,一到晚上工会活动我们就得和全校上万名学生抢网速,作为坦克的我总是因为网速问题导致团灭,咱也是有自尊的人,一怒之下花300元办 ...

  3. squid 代理服务器应用

    squid 代理服务器应用 1.Squid 代理服务器 : Squid 主要提供缓存加速.应用层过滤控制的功能.  代理的工作机制: 代替客户机向网站请求数据,从而可以隐藏用户的真实IP地址. 将获得 ...

  4. Squid代理服务器应用

    Squid代理服务器应用 目录 Squid代理服务器应用 一.Squid的脚本概念 1. Squid的作用 2. Web代理的工作机制 3. 代理服务器的概念 4. 代理服务器的作用 5. 代理的基本 ...

  5. 学习Squid(三)

    Squid 缓存服务 1.缓存服务器结束 缓存服务器(cache server),即用来存储(介质为内存及硬盘)用户访问的网页.图片.文件等等信息的专用服务器,这种服务器不仅可以使用户可以最快的得到他 ...

  6. CentOS安装squid代理服务器

    Squid是一个Linux系统下优秀的代理服务器软件.Squid可以配置普通上网代理(正向代理).反向代理.透明代理.系统是CentOS6.2.Squid主机IP为192.168.1.100. 安装s ...

  7. 【转载】CentOS 6.4下Squid代理服务器的安装与配置

    一.简介 代理服务器英文全称是Proxy Server,其功能就是代理网络用户去取得网络信息. Squid是一个缓存Internet 数据的软件,其接收用户的下载申请,并自动处理所下载的数据.当一个用 ...

  8. CentOS 6.4下Squid代理服务器的安装与配置

    一.简介 代理服务器英文全称是Proxy Server,其功能就是代理网络用户去取得网络信息. Squid是一个缓存Internet 数据的软件,其接收用户的下载申请,并自动处理所下载的数据.当一个用 ...

  9. Squid代理服务器的安装与配置

    一.简介 代理服务器英文全称是Proxy Server,其功能就是代理网络用户去取得网络信息. Squid是一个缓存Internet 数据的软件,其接收用户的下载申请,并自动处理所下载的数据.当一个用 ...

随机推荐

  1. Opencv3 形态学操作

    #include <iostream>#include <opencv2/opencv.hpp> using namespace std;using namespace cv; ...

  2. 275. H-Index II 递增排序后的论文引用量

    [抄题]: Given an array of citations in ascending order (each citation is a non-negative integer) of a ...

  3. CS4.1 RPM打包函数分析

    shell举例说明:脚本名称叫test.sh 入参三个: 1 2 3运行test.sh 1 2 3后$*为"1 2 3"(一起被引号包住)$@为"1" &quo ...

  4. VS2017与Qt5.7.0(静态库)环境基本配置

    **************************************************************************************************** ...

  5. linux进入单用户方法-乾颐堂

    RedHat7.2 在使用GRUB引导程序的时候如何进入单用户 1.在出现GURB引导画面时,按字母e,进入GRUB编辑状态 2在引导菜单后添加“1”或single,选定它,然后按字母b,就可引导到单 ...

  6. 爬虫 之 scrapy框架

    浏览目录 介绍 安装 项目结构及爬虫应用简介 常用命令行工具 Spiders爬虫 Selectors选择器 Item Pipeline 项目管道 Downloader Middleware下载中间件 ...

  7. bbs3

    第三天 昨日回顾: 1 验证码刷新 -$("#img_code")[0].src+="?" -本质就是向这个地址又发了一次请求 2 js中字符串拼接 -es5之 ...

  8. ceph卸载

    1.正常卸载 ceph-deploy purge ceph01 ceph-deploy purgedata ceph01 rm -rf /var/lib/ceph rm -rf /etc/ceph r ...

  9. (1)WePHP 开启WePHP

    新建入口文件index.php,定义新项目的目录地址APP_PATH,引入WePHP项目入口文件 <?php define('APP_PATH','./index/'); require_onc ...

  10. ENVI 图像特征提取