[root@squid network-scripts]# vim /etc/squid.conf
# should be allowed
acl hostlocal src 192.168.10.100/32 #增加
。。。
# Deny requests to certain unsafe ports
http_access deny hostlocal #增加
[root@squid network-scripts]# service squid reload
[root@squid network-scripts]# netstat -natp | grep 3128tcp 0 0 192.168.10.1:3128 0.0.0.0:* LISTEN 101064/(squid-1)
注意,squid的源地址是客户端,目标地址是web端
此时切换到win客户机查看时候被限制(记得随时清空历史记录)
/etc/squid.conf文件中的deny/allow是从上而下去读取配置,一旦匹配上,就不执行下面操作
接下来开始配置日志
首先删除刚才的限制,以便于后面的验证
[root@squid network-scripts]# service squid reload
[root@squid network-scripts]# cd /abc
[root@squid abc]# tar zxvf sarg-2.3.7.tar.gz -C /opt
[root@squid abc]# cd /opt/sarg-2.3.7/
安装sarg前需要先安装图像化处理工具,即gd库
[root@squid sarg-2.3.7]# yum install gd gd-devel -y
[root@squid sarg-2.3.7]# ./configure
--prefix=/usr/local/sarg --sysconfdir=/etc/sarg --enable-extraprotection
[root@squid sarg-2.3.7]# make && make install
[root@squid sarg-2.3.7]# cd /etc/sarg/
[root@squid sarg]# ls
css.tpl exclude_codes sarg.conf user_limit_block
[root@squid sarg]# vim sarg.conf
7 access_log /usr/local/squid/var/logs/access.log //squid的访问日志位置
25 title "Squid User Access Reports" //网页标题
120 output_dir /var/www/html/squid-reports //分析报告存放位置
178 user_ip no //不使用IP代替用户ID
184 topuser_sort_field connect reverse //升序排列
190 user_sort_field connect reverse
206 exclude_hosts /usr/local/sarg/noreport #这个文件待会需要创建,里面存放的是不生成报告的主机
257 overwrite_report no
289 mail_utility mailq.postfix //指定发邮件命令
434 charset UTF-8
518 weekdays 0-6 //指定top排序星期周期
525 hours 0-23 //指定top排序时间周期
633 www_document_root /var/www/html //网页根目录
[root@squid sarg]# touch /usr/local/sarg/noreport //建立不生成报告的主机列表文件
[root@squid sarg]# ln -s /usr/local/sarg/bin/sarg /usr/local/bin/ //创建命令软连接
[root@squid sarg]# sarg //开启
SARG: Records in file: 238, reading: 100.00%
SARG: Successful report generated on /var/www/html/squid-reports/2020Feb02-2020Feb02
[root@squid sarg]# cd /var/www/html/
[root@squid html]# ls
index.php sarg-php squid-reports
[root@squid html]# cd squid-reports/
[root@squid squid-reports]# ls
2020Feb02-2020Feb02 images index.html
[root@squid squid-reports]# rpm -q httpd
httpd-2.4.6-90.el7.centos.x86_64
[root@squid squid-reports]# systemctl restart httpd.service
可以使用周期性计划任务执行crontab -e,每天生成日志报告
[root@squid squid-reports]# 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)
原文:https://blog.51cto.com/14557905/2485022