Squid代理服务器——ACL访问控制,sarg日志,反向代理

实验环境

squid服务器 ens33:192.168.13.184
                                        ens36:192.168.10.1 (仅主机模式)
web服务器 192.168.13.151
client 192.168.10.10  (仅主机模式)

一,ACL访问控制

1,在squid服务器上修改配置文件

[[email protected] ~]# vim /etc/squid.conf  ##修改配置文件
# should be allowed
acl hostlocal src 192.168.10.10/32  ##控制hostlocal10.10的主机
# Deny requests to certain unsafe ports
http_access deny hostlocal  ##拒绝访问
[[email protected] ~]# service squid reload   ##重启squid服务

2,在测试机上访问web网页

二,sarg日志

1,在squid服务器上安装sarg

[[email protected] ~]# mount.cifs //192.168.100.3/LNMP-C7 /mnt/  ##挂载
Password for [email protected]//192.168.100.3/LNMP-C7:
[[email protected] ~]# cd /mnt/
[[email protected] mnt]# tar zxvf sarg-2.3.7.tar.gz -C /opt/   ##解压
[[email protected]squid mnt]# cd /opt/sarg-2.3.7/
[[email protected] sarg-2.3.7]# yum install gd gd-devel -y  ##安装gd库
[[email protected] sarg-2.3.7]# ./configure --prefix=/usr/local/sarg \  ##安装路径
> --sysconfdir=/etc/sarg \   ##配置文件
> --enable-extraprotection  ##开启安全防护
[[email protected] sarg-2.3.7]# make && make install  ##编译安装

2,修改sarg配置文件

[[email protected] sarg-2.3.7]# vim /etc/sarg/sarg.conf  ##修改sarg配置文件
##将下面的模块修改开启
access_log /usr/local/squid/var/logs/access.log  ##指定访问日志文件
title "Squid User Access Reports"  ##网页标题
output_dir /var/www/html/squid-reports  ##报告输出目录
user_ip no  ##使用用户名显示
exclude_hosts /usr/local/sarg/noreport  ##不计入排序的站点列表文件
topuser_sort_field connect reverse
##top排序中有连接次数,访问字节,降序排列,升序是normal
overwrite_report no  ##同名日志是否覆盖
mail_utility mailq.postfix  ##发送邮件报告命令
charset UTF-8  ##使用字符集
weekdays 0-6  ##top排行的时间周期
hours 0-23  ##top排行的时间周期
www_document_root /var/www/html  ##网页根目录
[[email protected] ~]# sarg   ##生成报告
SARG: 纪录在文件: 91, reading: 100.00%
SARG: 成功的生成报告在 /var/www/html/squid-reports/2019Dec11-2019Dec12
[[email protected] sarg-2.3.7]# cd /var/www/html/squid-reports/  ##切换到html目录下
[[email protected] squid-reports]# ls
2019Dec11-2019Dec12   images  index.html
[[email protected] squid-reports]# yum install httpd -y  ##安装httpd服务
[[email protected] squid-reports]# systemctl start httpd.service  ##开启服务
[[email protected] squid-reports]# systemctl stop firewalld.service   ##关闭防火墙
[[email protected] squid-reports]# setenforce 0

3,用测试机访问网页查看访问记录

##周期性计划任务执行每天生成报告crontab
sarg -l /usr/local/squid/var/logs/access.log -o /var/www/html/squid-reports/ -z -d $(date -d "1 day ago" +%d/%m/%Y)-$(date +%d/%m/%Y)

三,squid反向代理

squid服务器 ens33:192.168.13.184
                                        ens36:192.168.10.1 (仅主机模式)
web1服务器 192.168.13.151
web2服务器 192.168.13.185
client 192.168.10.10  (仅主机模式)

1,在web1服务器上编辑一个网页内容

[[email protected] ~]# cd /var/www/html/
[[email protected] html]# vim index.html  ##编辑网页内容
<h1>this is test web!</h1>

2,在测试机上访问网页

3,在web2服务器上编辑一个网页内容

[[email protected] ~]# systemctl stop firewalld.service   ##关闭防火墙
[[email protected] ~]# setenforce 0
[[email protected] ~]# yum install httpd -y   ##安装httpd服务
[[email protected] ~]# cd /var/www/html/   ##创建网页内容
[[email protected] html]# vim index.html
<h1>this is test2 web!</h1>
[[email protected] html]# systemctl start httpd.service 

4,在squid服务上配置反向代理

[[email protected] squid]# vim /etc/squid.conf
# Squid normally listens to port 3128
http_port 192.168.13.184:80 accel vhost vport ##监控本机80端口
cache_peer 192.168.13.151 parent 80 0 no-query originserver round-robin max_conn=30 weight=1 name=web1
##节点服务器1最大访问30,权重1,别名web1
cache_peer 192.168.13.185 parent 80 0 no-query originserver round-robin max_conn=30 weight=1 name=web1
cache_peer_domain web1 web2 www.yun.com  ##访问yun.com匹配web1,web2节点
[[email protected] squid]# service squid restart  ##重启squid服务

5,在测试机的admin用户下配置解析域名地址,并设置代理




谢谢阅读!

原文地址:https://blog.51cto.com/14080162/2458202

时间: 2024-10-28 22:48:45

Squid代理服务器——ACL访问控制,sarg日志,反向代理的相关文章

Squid代理服务器+ACL访问控制+Squid日志分析&&任务计划

第一章:Squid代理服务器 防伪码:只有顽强,明日路纵会更彷徨! 理论概述: 1.缓存代理概述:squid主要提供缓存加速,应用层过滤控制的功能. 2.代理的基本类型 1)传统代理:普通的代理服务器,首先必须在客户机的浏览器.qq聊天工具.下载软件等程序中手动设置代理服务器的地址和端口,然后才能使用代理来访问网络. 2)透明代理:提供与传统代理相同的功能和服务,其区别在于客户机不需要指定代理服务器的地址和端口,而是通过默认路由.防火墙策略将Web访问重定向,实际仍然交给代理服务器来处理.  实

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

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

Squid-4.1 ACL访问控制、日志分析和反向代理

Squid-4.1ACL访问控制.日志分析和反向代理 ACL访问控制 Squid提供了强大的代理控制机制,通过结合设置ACL(Access Control List,访问控制列表)并进行限制,可以针对源地址.目标地址.访问的URL路径.访问时间等各种条件进行过滤. 在配置文件squid.conf中,ACL访问控制通过以下两个步骤实现:其一,使用acl配置项定义需要控制的条件:其二,通过http_access配置项对已定义的列表做"allow"或者"deny"访问控制

Squid的ACL访问控制及反向代理

Squid提供了强大的代理控制机制,通过合理的设置ACL,并进行限制,可以针对源地址.目标地址.访问的URL路径.访问的时间等条件进行过滤. 在配置文章squid.conf中,ACL访问控制通过以下两个步骤来实现:1:使用acl配置项定义需要控制的条件2:通过http_access 配置对已定义的列表做出"允许" 或者 "拒绝" 访问的控制 定义控制列表: acl 列表名 列表类型 列表内容 允许访问权限: http_access allow 列表名 拒绝访问权限:

squid代理服务器的ACL访问控制及日志分析

配置传统代理及部署squid服务参考博文:https://blog.51cto.com/14154700/2406060配置squid透明代理参考博文:https://blog.51cto.com/14154700/2406121 squid服务的ACL访问控制:squid提供了强大的代理控制机制,通过合理设置ACL并进行限制,可以针对源地址.目标地址.访问的URL路径.访问的时间等各种条件进行过滤. 在配置文件squid.conf中,ACL访问控制通过两个步骤来实现:1.使用ACL配置项定义需

squid 透明代理,反向代理,acl访问控制

squid 的三种代理方式:1普通代理:2透明代理  3反向代理: cleint(192.168.1.20)----> eth0(192.168.1.10)|  squid   |eth1(1.1.1.254)  ---->server(1.1.1.1) 1.普通代理:squid是代替内网 访问外网:  缓存:加快内网的访问速度: 服务器端配置:ip 1.1.1.1 关闭防火墙和selinux [[email protected] ~]# /etc/init.d/iptables stop i

构建Squid代理服务器-传统代理、透明代理、反向代理

Squid是Linux系统中最常用的一款开源代理服务软件,主要提供缓存加速和应用层过滤控制的功能,可以很好的实现HTTP.FTP.DNS查询以及SSL等应用的缓存代理. 正向代理:根据实现的方式不同,代理服务可分为传统代理和透明代理. 传统代理:普通的代理服务,多见于Internet环境,必须在客户机的浏览器.QQ聊天工具.下载软件等程序中手动设置代理服务器对的地址和端口,才能使用代理服务器来访问网络.对于网页浏览器,访问网站时的域名解析请求会发送给指定的代理服务器. 透明代理:提供与传统代理相

Squid 反向代理加速网站

本实例的域名是 wenjin.cache.ibm.com.cn,通过DNS的轮询 技术,将客户端的请求分发给其中一台 Squid 反向代理服务器处理,如果这台 Squid 缓存了用户的请求资源,则将请求的资源直接返回给用户,否则这台 Squid 将没有缓存的请求根据配置的规则发送给邻居 Squid 和后台的 WEB 服务器处理,这样既减轻后台 WEB 服务器的负载,又提高整个网站的性能和安全性.该系统结构图 3 如下: 图 3. 系统结构 配置的系统环境: 一台 DNS 服务器:操作系统 Fre

用Squid实现反向代理

Last-Modified: 告诉反向代理页面什么时间被修改 Expires: 告诉反向代理页面什么时间应该从缓冲区中删除 Cache-Control: 告诉反向代理页面是否应该被缓冲 Pragma: 告诉反向代理页面是否应该被缓冲. 一.反向代理的概念 什么是反向代理呢?其实,反向代理也就是通常所说的WEB服务器加速,它是一种通过在繁忙的WEB服务器和Internet之间增加一个高速的WEB缓冲服务器(即:WEB反向代理服务器)来降低实际的WEB服务器的负载.典型的结构如下图所示: Web服务