Squid-ACL访问控制,Sarg日志分析以及反向代理
发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,实验环境服务器角色IP地址squid服务器ens33:192.168.13.184 ens36:192.168.10.1 (仅主机模式)web服务器192.168.13.151client客户端192
千家信息网最后更新 2025年02月01日Squid-ACL访问控制,Sarg日志分析以及反向代理
实验环境
服务器角色 | IP地址 |
---|---|
squid服务器 | ens33:192.168.13.184 ens36:192.168.10.1 (仅主机模式) |
web服务器 | 192.168.13.151 |
client客户端 | 192.168.10.10 (仅主机模式) |
ACL访问控制
ACL访问控制方式
●根据源地址、目标URL、文件类型等定义列表
acl 列表名称 列表类型 列表内容...
●针对已定义的ac列表进行限制
http_ access allow或deny 列表名称...
ACL规则优先级
当一个用户访问代理服务器时,Squid会顺序匹配Squid中定义的所有规则列表,一旦匹配成功,立即停止匹配。当所有规则都不匹配时,Squid会使用与最后一条相反的规则
常用的ACL列表类型
src→源地址dst→目标地址port→目标地址dstdomain→目标域time→访问时间maxconn→最大并发连接url_regex→目标URL地址Urlpath_regex→整个目标URL路径
实例
基于IP地址限制:
acl hostlocal src IP地址 #hostlocal表示是名称 http_access deny hostlocal #拒绝访问
1.squid服务器上修改配置文件
[root@squid ~]# vim /etc/squid.conf ##修改配置文件# should be allowedacl hostlocal src 192.168.10.10/32 ##控制hostlocal的主机# Deny requests to certain unsafe portshttp_access deny hostlocal ##拒绝访问[root@squid ~]# service squid reload ##重启squid服务
2.在测试机上访问web网页
基于时间限制:
acl work time WTHMFAS 8:00-12:00 #时间设置在工作日 8:30-17:00 http_access deny work #拒绝访问
基于目标地址(就是web服务器地址)
#先创建一个目录,将拒绝的目标地址添加到一个文件中mkdir /etc/squid vim dest.list#将拒绝的ip地址添加到文件中192.168.10.111192.168.10.123192.168.10.136#编辑配置文件vim /etc/squid.conf #指定先前的地址文件路径为目标acl destion dst "/etc/squid/dest.list"#拒绝目标访问http_access deny destion
Sarg日志分析配置
1,在squid服务器上安装sarg
[root@squid ~]# mount.cifs //192.168.100.3/LNMP-C7 /mnt/ ##挂载Password for root@//192.168.100.3/LNMP-C7: [root@squid ~]# cd /mnt/[root@squid mnt]# tar zxvf sarg-2.3.7.tar.gz -C /opt/ ##解压[root@squid mnt]# cd /opt/sarg-2.3.7/[root@squid sarg-2.3.7]# yum install gd gd-devel -y ##安装gd库[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 ##编译安装
2,修改sarg配置文件
[root@squid 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排序中有连接次数,访问字节,降序排列,升序是normaloverwrite_report no ##同名日志是否覆盖mail_utility mailq.postfix ##发送邮件报告命令charset UTF-8 ##使用字符集weekdays 0-6 ##top排行的时间周期hours 0-23 ##top排行的时间周期www_document_root /var/www/html ##网页根目录[root@squid ~]# sarg ##生成报告SARG: 纪录在文件: 91, reading: 100.00%SARG: 成功的生成报告在 /var/www/html/squid-reports/2019Dec11-2019Dec12[root@squid sarg-2.3.7]# cd /var/www/html/squid-reports/ ##切换到html目录下[root@squid squid-reports]# ls2019Dec11-2019Dec12 images index.html[root@squid squid-reports]# yum install httpd -y ##安装httpd服务[root@squid squid-reports]# systemctl start httpd.service ##开启服务[root@squid squid-reports]# systemctl stop firewalld.service ##关闭防火墙[root@squid squid-reports]# setenforce 0
3,用测试机访问网页查看访问记录
##周期性计划任务执行每天生成报告crontabsarg -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反向代理配置
服务器角色 | IP地址 |
---|---|
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服务器上编辑一个网页内容
[root@web ~]# cd /var/www/html/[root@web html]# vim index.html ##编辑网页内容this is test web!
2,在测试机上访问网页
3,在web2服务器上编辑一个网页内容
[root@web2 ~]# systemctl stop firewalld.service ##关闭防火墙[root@web2 ~]# setenforce 0[root@web2 ~]# yum install httpd -y ##安装httpd服务[root@web2 ~]# cd /var/www/html/ ##创建网页内容[root@web2 html]# vim index.htmlthis is test2 web!
[root@web2 html]# systemctl start httpd.service
4,在squid服务上配置反向代理
[root@localhost squid]# vim /etc/squid.conf# Squid normally listens to port 3128http_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,别名web1cache_peer 192.168.13.185 parent 80 0 no-query originserver round-robin max_conn=30 weight=1 name=web1cache_peer_domain web1 web2 www.yun.com ##访问yun.com匹配web1,web2节点[root@localhost squid]# service squid restart ##重启squid服务
5,在测试机的admin用户下配置解析域名地址,并设置代理
谢谢阅读!!!
服务
地址
服务器
文件
目标
配置
网页
主机
内容
报告
时间
代理
模式
规则
测试
日志
控制
名称
周期
用户
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
上海综合软件开发大概费用
全国网络安全画
ps3有没有服务器
正规软件开发要求
硬件底层软件开发
南京万博软件科技园互联网公司
深圳水木网络技术公司
地下城服务器怎么卡
网络技术员工作环境概述
软件开发系统规划报告6
挂车服务器是啥
北京游刃网络技术公司
福州点橙网络技术有限公司
没有人的服务器那么你是谁
失落的方舟服务器验证失败10010
漯河电子软件开发招聘
构成数据库的单元有哪些
软件开发公司可信吗
河北工控软件开发哪家专业
家庭可以买主机作为服务器吗
路灯软件开发公司
马士兵数据库教程
阿里巴巴网络技术有限公司产品
网络安全事件应急演练指南
大学生网络安全应该怎么办
北京定制网络技术开发哪家好
服务器弄防护了怎么办
山西省第二届网络安全技能
数据库访问范围
用友t3的数据库目录