企业平台架构--Apache配置与应用 理论加实验详解

前言:

Apache HTTP Server 之所以受到众多企业的青睐,得益于其代码开源,跨平台,功能模块化,可灵活定制等诸多优点,其不仅性能稳定,在安全性方面的表现也十分出色

Apache连接保持:

  • KeepAlive
    是否打开连接保持,OFF关闭,ON打开
  • KeepAliveTimout
    一次性连接多次请求中间的最大间隔时间,两次请求超过改时间连接断开
  • MaxKeepAliveRequests
    一次长连接能够传输的最大请求数量

Apache访问控制概述:

Apache访问控制
●作用

  • 控制对网站资源的访问
  • 为特定的网站目录添加访问权限

●常用访问控制方式

  • 客户机地址限制
  • 用户授权限制

基于客户端地址的访问控制:

使用Require配置项实现访问控制,按先后顺序限制
可用于 配置段中

  • Require配置常见的语法:
    Require all granted 允许所有
    Require all denied 拒绝所有
    Require local 匹配本地
    Require [not] host <主机名或域名列表> ##仅允许或者仅拒绝not是可选项,主机名或域名
    Require [not] ip <ip地址或网段列表> ##仅允许或者仅拒绝IP地址或者网段

实验验证

1.修改虚拟主机配置文件,不允许148.100地址去访问kgc.com;注意需要添加标签表明层级关系
在这里插入图片描述
2.设置完成后重启apache服务

[root@localhost conf]# systemctl restart httpd.service 

3.回到win系统中,在网站中输入www.kgc.com显示访问不了
在这里插入图片描述
在这里插入图片描述

用户授权控制

1.先从查看命令htpasswd的位置

[root@localhost extra]# which htpasswd 
/usr/bin/htpasswd

2.创建用户认证数据库,创建一个jerry用户,并设置密码
在这里插入图片描述
3.pwd的目录下生成了密钥文件

[root@localhost conf]# cat pwd
jerry:$apr1$pHM5FH88$coLuxmMR4DoWUc6nrCqhl0

4.给148.135地址添加用户授权配置
在这里插入图片描述
5.再次访问148.135显示需要身份验证了
在这里插入图片描述

日志分割:

●随着网站的访问量增加,默认情况下Apache的单个日志文件也会越来越大日志文件占用磁盘空间很大
查看相关信息方便
●对日志文件进行分割
Apache自带rotatelogs分割工具实现
第三方工具cronolog分割

rotatelogs分割工具

配置网站的日志文件转交给rotatelogs分割处理
配置格式:

  • ErrorLog “| rotatelogs命令的绝对路径 -l 日志文件路径/网站名- error_%Y%m%d.log 86400"
  • CustomLog “|rotatelogs命令绝对路径 -l 日志文件路径/网站-access_%Y%m%d.log 86400" combined
    y:年 m:月 d:日 86400秒 是一天的时间

小实验:

1.查看自带工具,命令所在位置

[root@localhost extra]# which rotatelogs      ##apache自带工具
/usr/sbin/rotatelogs                   ##工具所在路径

2.修改apache服务的配置文件

[root@localhost extra]# vim /etc/httpd/conf/httpd.conf
ErrorLog "| /usr/sbin/rotatelogs -l logs/www.kgc.com.error_%Y%m%d.log 86400"    ##在错误日志文件这行加入固定格式
CustomLog "| /usr/sbin/rotatelogs -l logs/www.kgc.com.access_%Y%m%d.log 86400" combined    ####在访问日志文件这行加入固定格式,访问日志最后结尾一定要加combined

3.启动或重启服务
4.切换到httpd日志文件位置
[root@localhost httpd]# cd /var/log/httpd/ ##用ls命令查看
在这里插入图片描述

第三方工具cronolog

源码编译安装cronolog工具
配置网站日志文件转交给cronolog分割处理
配置格式

  • ErrorLog “|cronolog命令的绝对路径 日志文件路径/网站名-error_%Y%m%d.log
  • CustomLog “|cronolog命令的绝对路径 日志文件路径/网站名_%Y%m%d.log combined

小实验:

1.先用xftp将工具cronolog工具放到/opt目录下

[root@localhost opt]# rpm -ivh cronolog-1.6.2-14.el7.x86_64.rpm  用rpm-ivh解压

2.修改apache配置文件
customLog “| /usr/sbin/cronolog logs/www.kgc.com.access_%Y%m%d.log” combined
ErrorLog “| /usr/sbin/cronolog logs/www.kgc.com.error_%Y%m%d.log”
3.启动或重启服务
4.切换到httpd日志文件位置
[root@localhost httpd]# cd /var/log/httpd/ ##用ls命令查看
在这里插入图片描述

AWStats日志分析系统介绍

  • Perl语言开发的一款开源日志分析系统
  • 可用来分析Apache,Samba,Vsftpd,llS等服务器的访问
  • 日志结合crond等计划任务服务,可对日志内容定期进行分析

AWStats日志分析系统实验

1.先关闭防护系统和防火墙

[root@promote ~]# setenforce 0   ##关闭防护
[root@promote ~]# iptables -F     ##关闭防火墙

2.用yum工具安装实验所需的apache和DNS服务的软件包
[root@promote ~]# yum -y install httpd bind
在这里插入图片描述
3.修改DNS的主配置文件
[root@promote ~]# vim /etc/named.conf
在这里插入图片描述
4.修改区域配置文件,配置正向解析
[root@promote ~]# vim /etc/named.rfc1912.zones
在这里插入图片描述
5.修改区域数据配置文件
[root@promote named]# cp -p named.localhost test.come.zone
在这里插入图片描述
6.启动DNS服务
[root@promote named]# systemctl start named
7.修改apache服务的配置文件
修改监听地址为自己地址
在这里插入图片描述
服务名称打开,改为test.com
在这里插入图片描述
8.这时在win10上访问www.test.com能够显示apache页面
在这里插入图片描述
9.用xftp工具将awstats放到opt目录下
在这里插入图片描述
10.用tar工具对awstats进行解压缩,就解压到OPT目录下,将目录移动到.usr/local目录下
[root@promote opt]# tar zxvf awstats-7.6.tar.gz
在这里插入图片描述
[root@promote opt]# mv /opt/awstats-7.6 /usr/local/awstats
在这里插入图片描述
11. 为要统计的站点建立配置文件
[root@promote tools]# ./awstats_configure.pl ##直接回车
在这里插入图片描述

> /etc/httpd/conf/httpd.conf  ##指明apache服务的配置文件

在这里插入图片描述
在这里插入图片描述
12.确定没有问题直接回车
在这里插入图片描述
13.底行加入允许所有人访问
在这里插入图片描述
14修改站点统计配置文件
在这里插入图片描述

LogFile="/var/log/httpd/access_log"     ##日志文件位置修改为access_log

15.在/var/lib目录下创建数据库文件
在这里插入图片描述
16. 重启httpd服务

[root@promote lib]# systemctl stop httpd.service 
[root@promote lib]# systemctl start httpd.service 

17.回到win10系统中用输入http://www.test.com/awstats/awstats.pl?config=www.test.com访问网页
在这里插入图片描述
17.这时是没有访问记录的,我们需要配置更新数据脚本
[root@promote tools]# ./awstats_updateall.pl now
在这里插入图片描述
18.这时数据发生变化
在这里插入图片描述
19.因为需要一直去执行更新脚本,就很麻烦,我们就需要用的周期性计划任务去执行

[root@promote tools]# crontab -e
*/4 * * * * /usr/local/awstats/tools/awstats_updateall.pl now   ##设置每4分钟更新一次
[root@promote tools]# systemctl start crond
您在 /var/spool/mail/root 中有新邮件

20.优化网页地址,设置网页自动跳转,方便访问
在这里插入图片描述
21.输入网址:www.test.com/aws.html;也能显示日志统计网页
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值