系统运维
内容要点:
一、Squid 中 ACL 的使用
二、日志分析
三、反向代理
一、Squid 中 ACL 的使用
(1)ACL 访问控制方式:
1、根据源地址、目标URL、文件类型等定义列表
acl 列表名称 列表类型 列表内容…
2、针对已定义的 acl列表进行限制
http_access allow 或 deny 列表名称…
(2)ACL 规则优先级:
当一个用户访问代理服务器时,Squid 会顺序匹配 Squid中定义的所有规则列表,一旦匹配成功,立即停止匹配。当所有规则都不匹配时,Squid 会使用与最后一条相反的规则。
(3)常用的 ACL 列表类型:
src?->源地址 dst?->目标地址 port?->目标地址 dstdomain?->目标域 time?->访问时间 maxconn?->最大并发连接 ur_?regex?->目标URL地址 Urlpath_regex?->整个目标URL路径
(4)操作演示:
注:,要先做好代理功能,并且 Squid代理服务器要开放 3128端口,每次改好配置文件,都需要重启服务。
角色IP地址Web服务器192.168.220.136Squid代理服务器192.168.220.131客户机192.168.220.128
修改 /etc/squid.conf 文件
添加以下代码:
1、基于IP地址限制:
acl?hostlocal?src?192.168.220.128/32?//hostlocal表示是名称? http_access?deny?hostlocal?//拒绝访问
2、基于时间限制:
acl?work?time?WTHMFAS?11:00-12:00//时间设置在?11:00-12:00 http_access?deny?work?//拒绝访问
3、基于目标地址(就是web服务器地址)
可以将拒绝的目标地址添加到一个文件中
1、?mkdir?/etc/squid//先创建一个目录 vim?dest.list 将拒绝的ip地址添加到文件中 192.168.220.111 192.168.220.123 192.168.220.136 2、做规则 vim?/etc/squid.conf? acl?destion?dst?/etc/squid/dest.list http_access?deny?destion
二、日志分析
第一步:安装 sarg 工具
Sarg(Squid Analysis Report Generator),是一款Squid 日志分析工具,采用HTML 格式,详细列出每一位用户访问Internet 的站点信息、时间占用信息、排名、连接次数、访问量等。
(1)安装图像处理工具:
yum?install?-y?gd?gd-devel?pcre
(2)创建一个文件:
mkdir?/usr/local/sarg
tar?zxvf?sarg-2.3.7.tar.gz?-C?/opt/ 解压到/opt/目录下
(3)编译
./configure?--prefix=/usr/local/sarg?\\\\ --sysconfdir=/etc/sarg?\\\\ --enable-extraprotection//额外安全防护
(4)安装
make?&&?make?install
(5)修改主配置文件 /etc/sarg/sarg.conf
vim?/etc/sarg/sarg.conf 开启以下功能(稍作修改即可): 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排序中有连接次数、访问字节、降序排列 user_sort_field?reverse?//用户访问记录、连接次数、访问字节按降序排序 overwrite_report?no?//同名日志是否覆盖 mail_utility?mail.postfix?//发送邮件报告命令 charset?UTF-8//使用字符集 weekdays?0-6?//top排行的星期周期 www_document_root?/varwww/html?//网页根目录
(6)添加不计入站点文件,添加的域名将不被显示在排序中
touch?/usr/local/sarg/noreport
ln?-s?/usr/local/sarg/bin/sarg?/usr/local/bin/ //方便管理,可以创建一个软连接
开启:
第二步:安装 Apache
?yum?install?httpd?-y
第三步:客户机上测试
浏览器上访问: http://192.168.220.131/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)
三、反向代理
反向代理工作原理:
反向代理服务器位于本地WEB服务器和Internet之间。
当用户浏览器发出一个HTTP请求时,通过域名解析将请求定向到反向代理服务器(如果要实现多个WEB服务器的反向代理,需要将多个WEB服务器的域名都指向反向代理服务器)。由反向代理服务器处理器请求。反向代理一般只缓存可缓冲的数据(比如html网页和图片等),而一些CGI脚本程序或者ASP之类的程序不缓存。它根据从WEB服务器返回的HTTP头标记来缓冲静态页面。
角色IP地址Web服务器1192.168.220.136Squid代理服务器192.168.220.131客户机192.168.220.128Web服务器2192.168.220.137
1、配置 Squid 代理服务器:
修改 /etc/squidconf 文件
vim?/etc/squid.conf http_port?192.168.220.131:80?accel?vhost?vport cache_peer?192.168.220.136?parent?80?0?no-query?originserver?round-robin?max_conn=30?weight=1?name=web1 cache_peer?192.168.220.137?parent?80?0?no-query?originserver?round-robin?max_conn=30?weight=1?name=web2 cache_peer_domain?web1?web2?www.yun.com
service?squid?restart?//重启squid systemctl?stop?httpd.service//关闭Apache服务
2、在两台 Web服务器上做一个测试网页:
3、客户机做一下域名解析:
修改一下,代理服务器端口:
4、浏览器访问 http://www.yun.com/
更多关于云服务器,域名注册,虚拟主机的问题,请访问西部数码官网:www.west.cn