zoukankan      html  css  js  c++  java
  • squid之------ACL控制

    一、ACL概念
       Squid提供了强大的代理控制机制,通过合理设置ACL(Access Control List,访问控制列表)并进行限制,可以针对源地址、目标地址、访问的URL路径、访问的时间等各种条件进行过滤。
    ACL访问控制的步骤:
      1、使用acl配置项定义需要控制的条件
      2、通过http_access配置项对已定义的列表做“允许”或“拒绝”访问的控制
    二、ACL用法概述
    (1)定义ACL访问列表
    定义格式:acl  列表名称  列表类型  列表内容 ...
    例:控制源IP网段
    vim etc/squid.conf
    acl smile src 192.168.1.0/24  192.168.4.0/24
    常用的ACL列表类型
    1 src       源地址 2 dst      目标地址 3 port      目标地址 4 dstdomain   目标域 5 time     访问时间 6 maxconn    最大并发连接 7 url_regex   目标URL地址 # 可以定义大的范围比如http://www.baidu.com 8 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列表要写在前面
    1.vi /etc/squid.conf 2 .acl all src 0.0.0.0/0.0.0.0 3 .http_access deny all 4 .systemctl reload squid.service
     2、允许多个局域网段在工作时间上网
    1 .#vim /etc/squid.conf 2. acl all src 0.0.0.0/0.0.0.0 (有些版本要这么写acl all src all) 3. acl smile src 192.168.1.0/24 192.168.4.0/24 4.acl smiletime time MTWHF 08:30-17:30 (其中MTWHF是周一到周五的英文首字母) 5. http_access allow smile smiletime 6. http_access deny all 7. systemctl reload squid.service
    3、通过黑名单限制目标网站
    (1)首先创建地址列表文件(直接在配置文件里写也行,但是这种用列表文件的方式适合拒绝或允许的网站域名比较多的情况,而且方便增删管理)
    1.vim /etc/squid/ipblock.list 2. 61.135.167.36 3. 60.28.14.0/24 4. vim /etc/squid/dmblock.list 5 .qq.com
    (2)配置acl
    1 .vim /etc/squid.conf 2 .acl IPBLOCK dst "/etc/squid/ipblock.list" 3 .acl DMBLOCK dstdomain "/etc/squid/dmblock.list" 4 .http_access deny IPBLOCK 5. http_access deny DMBLOCK 6 .systemctl reload squid.service
  • 相关阅读:
    javaWeb接口开发
    .NET设计模式(4):建造者模式(Builder Pattern)(转载)
    .net数据库连接池(转载)
    系统操作日志设计(转载)
    系统操作日志设计-代码实现(转载)
    GOF对Builder模式的定义(转载)
    Javascript中的对象和原型(一)(转载)
    Javascript中的对象和原型(二)(转载)
    Javascript中的对象和原型(三)(转载)
    服务器安全设置(转载)
  • 原文地址:https://www.cnblogs.com/--smile/p/11118972.html
Copyright © 2011-2022 走看看