详述CentOS 7中Apache配置与应用(一)

Apache连接保持

Apache连接保持相关参数

  • KeepAlive

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

Apache访问控制

  • 作用

    • 控制对网站资源的访问
    • 为特定的网站目录添加访问授权
  • 常用访问控制方式
    • 客户机地址限制
    • 用户授权限制

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

  • 使用Require配置项实现访问控制,按先后顺序限制
  • 可用于<Location>、<Directory>、<Files>、 <Limit>配置段中
  • Require配置项的常见语法
Require all granted
Require all denied
Require local
Require [not] host <主机名或域名列表>
//使用not禁止访问时要将其置于<RequireAll> </RequireAll>容器中并在容器中指定相应的限制策略
Require [not] ip <IP地址或网段列表>

配置实例

Linux系统中安装DNS、HTTP服务,并设置DNS服务。

[[email protected] ~]# yum install bind httpd -y   //安装服务
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
...//省略部分内容...
已安装:
  bind.x86_64 32:9.11.4-9.P2.el7                    httpd.x86_64 0:2.4.6-90.el7.centos
...//省略部分内容...
完毕!
[[email protected] conf]# vim /etc/named.conf    //编辑DNS配置文件
...//省略部分内容...
options {
        listen-on port 53 { any; };            //更改IP地址为any
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        recursing-file  "/var/named/data/named.recursing";
        secroots-file   "/var/named/data/named.secroots";
        allow-query     { any; };             //更改监听主机为any
...//省略部分内容...
:wq
[[email protected] conf]# vim /etc/named.rfc1912.zones     //编辑区域配置文件
...//省略部分内容...
zone "kgc.com" IN {                      //更改域名
        type master;
        file "kgc.com.zone";         //更改区域数据文件名
        allow-update { none; };
};
...//省略部分内容...
:wq
[[email protected] conf]# cd /var/named/           //进入区域数据文件目录
[[email protected] named]# ls                     //查看目录
data  dynamic  named.ca  named.empty  named.localhost  named.loopback  slaves
[[email protected] named]# cp -p named.localhost kgc.com.zone     //复制区域数据文件
[[email protected] named]# vim kgc.com.zone               //进入编辑文件
$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        A       127.0.0.1
www IN  A       192.168.144.133                   //设置域名解析
:wq                                        //保存退出

开启两台win 10客户机,并查看客户机IP地址

在Linux系统中进入http服务站点目录,编辑主页内容,并开启DNS、HTTP服务,关闭防火墙及增强性安全功能

[[email protected] named]# cd /var/www/html/    //进入http服务站点目录
[[email protected] html]# vim index.html             //编辑默认主页
<h1>this is kgc web</h1>             //编辑内容
:wq
[[email protected] html]# ls           //查看
index.html
[[email protected] html]# cat index.html    //查看网页内容
<h1>this is kgc web</h1>
[[email protected] html]# systemctl start httpd.service         //启动http服务
[[email protected] html]# systemctl start named                   //启动DNS服务
[[email protected] html]# systemctl stop firewalld.service         //关闭防火墙
[[email protected] html]# setenforce 0                            //关闭增强性安全功能

使用两台win 10客户机分别访问往网站信息,看服务是否正常提供

在Linux系统中配置HTTP服务配置文件,设置客户机访问权限

[[email protected] html]# vim /etc/httpd/conf/httpd.conf
//编辑主配置文件内容(现网中不建议直接修改主配置文件内容,可以重新添加子配置文件进行限制)
...//省略部分内容...
<Directory "/var/www/html">
    #
    # Possible values for the Options directive are "None", "All",
    # or any combination of:
    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
    #
    # Note that "MultiViews" must be named *explicitly* --- "Options All"
    # doesn‘t give it to you.
    #
    # The Options directive is both complicated and important.  Please see
    # http://httpd.apache.org/docs/2.4/mod/core.html#options
    # for more information.
    #
    Options Indexes FollowSymLinks

    #
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   Options FileInfo AuthConfig Limit
    #
    AllowOverride None

    #
    # Controls who can get stuff from this server.
    #
     <RequireALL>                          //在此容器下添加子容器
       Require not ip 192.168.144.128
       //添加限制访问主机的IP地址(如若限制网段直接添加192.168.144.0/24即可,注意限制网段需填写子网掩码)
       Require all granted
    </RequireALL>
</Directory>
...//省略部分内容...
:wq
[[email protected] html]# systemctl restart httpd.service 

查看限制的第一台win 10客户端是否还可以访问网站

用户授权限制

配置实例

创建用户认证数据库

[[email protected] html]# htpasswd -c /etc/httpd/conf/pwd test01
//创建用户认证数据库(-c为创建,如果已经存在数据认证文件可以不用-c,直接就可以使用命令添加进认证文件中)
New password:               //输入设置的密码
Re-type new password:         //再次输入密码
Adding password for user test01  //成功创建
[[email protected] html]# cd /etc/httpd/conf        //进入目录
[[email protected] conf]# ls        //查看
httpd.conf  magic  pwd            //成功创建文件
[[email protected] conf]# cat pwd     //查看文件内容
test01:$apr1$zDZ/54yz$rUCXaWixaltHE6ZBvjv0h/    //创建的用户及密码

添加用户授权配置

[[email protected] conf]# vim httpd.conf
...//省略部分内容...
<Directory "/var/www/html">
    #
    # Possible values for the Options directive are "None", "All",
    # or any combination of:
    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
    #
    # Note that "MultiViews" must be named *explicitly* --- "Options All"
    # doesn‘t give it to you.
    #
    # The Options directive is both complicated and important.  Please see
    # http://httpd.apache.org/docs/2.4/mod/core.html#options
    # for more information.
    #
    Options Indexes FollowSymLinks

    #
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   Options FileInfo AuthConfig Limit
    #
    AllowOverride None

    #
    # Controls who can get stuff from this server.
    #
   AuthName "DocumentRoot"                      //更改上面的访问控制条目,此条目声明验证信息
   AuthType Basic                               //验证类型为基本验证
   AuthUserFile /etc/httpd/conf/pwd             //验证文件路径
   Require valid-user                           //设置为授权用户验证
</Directory>
...//省略部分内容...
:wq                                          //保存退出
[[email protected] conf]# systemctl restart httpd.service  //重新启动服务

在客户机中验证配置

原文地址:https://blog.51cto.com/14473285/2447906

时间: 2024-10-30 01:21:26

详述CentOS 7中Apache配置与应用(一)的相关文章

如何在CentOS系统中安装配置SNMP服务

CentOS(Community Enterprise Operating System,中文意思是:社区企业操作系统)是Linux发行版之一,现在有一大部分服务器在使用此操作系统:SNMP(简单网络管理协议)能够使网络管理员提高网络管理效能,及时发现并解决网络问题以及规划网络的增长.网络管理员还可以通过SNMP接收网络节点的通知消息以及告警事件报告等来获知网络出现的问题.本文主要介绍如何在CentOS系统中安装配置SNMP服务. 工具/原料 CentOS操作系统 方法/步骤 使用SNMP服务前

详述Linux系统中Apache网页与安全优化(二)

网页缓存 配置网页的缓存时间 通过mod_ expire模块配置Apache,使网页能在客户端浏览器缓存一段时间,以避免重复请求 启用mod_ expire模块后,会自动生成页面头部信息中的Expires标签和Cache-Control标签,从而降低客户端的访问频率和次数,达到减少不必要的流量和增加访问速度的目的 启用网页缓存功能步骤 查看是否安装mod_ expire模块 修改配置文件启用缓存功能 抓包测试 查看是否安装了mod_ expire模块 /usr/local/apache/bin/

wdlinux中apache配置反向代理模块

想要在.htaccess中开启反向代理功能都不行[apache中没有mod_proxy模块] .htaccess 文件内容如下 RewriteEngine On RewriteBase / RewriteRule ^(.*)$ http://sogou.weixin.com/$1 [P] "proxy|P"(强制为代理) 此标记使替换成分被内部地强制作为代理请求发送,并立即中断重写处理,然后把处理移交给mod_proxy模块.你必须确保此替换串是一个能够被mod_proxy处理的有效U

详述CentOS 7中GRUB菜单恢复与忘记root密码后如何重置

GRUB菜单介绍 对于Linux操作系统来说,GRUB(GRand Unified Bootloader,统一启动加载器)是使用最为广泛的多系统引导器程序.系统控制权传递给 GRUB 以后,将会显示启动菜单给用户选择,并根据所选项(或采用默认值)加载 Linux内核文件,然后将系统控制权转交给内核.需要注意的是,CentOS 7采用的是GRUB2启动引导器. GRUB菜单恢复方法 GRUB是大多数Linux操作系统默认使用的引导程序,可以通过启动菜单的方式选择进入不同的操作系统(如果有).当配置

详述CentOS 7中构建分离解析域名服务器

DNS分离解析介绍 ? 分离解析的域名服务器,实际上也还是主域名服务器,这里所说的分离解析,主要是指根据不同的客户端,提供不同的域名解析记录.来自不同地址的客户机请求解析同一域名时,为其提供不同的解析结果. 搭建DNS分离解析服务器 实验环境 使用VMware 15软件分别打开一台win 10虚拟机,一台win 7虚拟机和一台CentOS 7虚拟机 使用VMware 15 下载链接 许可证密匙:UY758-0RXEQ-M81WP-8ZM7Z-Y3HDA win 10 镜像 下载链接 win 7

详述CentOS 7中Firewalld防火墙基础

Firewalld概述 Firewalld简介 支持网络区域所定义的网络链接以及接口安全等级的动态防火墙管理工具 支持IPv4.IPv6防火 墙设置以及以太网桥 支持服务或应用程序直接添加防火墙规则接口 拥有两种配置模式 运行时配置 永久配置 Firewalld和iptables的关系 netfilter netfilter是Linux2.4.x之后新一代的Linux防火墙机制,是linux内核的一个子系统 netfilter采用模块化设计,具有良好的可扩充性 位于Linux内核中的包过滤功能体

CentOS 5上Apache配置虚拟主机范例

昨天实践了下在CentOS 5上通过Apache直接配置虚拟主机,服务器没有安装面板软件,所以只能通过SSH远程连接操作了.Apache安装在/etc/httpd目录下,这个即是Apache的根目录,所以Apache配置文件/etc/httpd/conf/httpd.conf中的ServerRoot设置的是ServerRoot “/etc/httpd”.我们编辑httpd.conf,在虚拟主机配置区看到如下的代码: #NameVirtualHost *:80ps:中间数行无关紧要注释略去了.#<

centos 6.4 Apache 配置 flv mp4.h264 流媒体拖动

http://blog.csdn.net/xst686/article/details/9763995 加入流媒体扩展后要重启 httpd flv 流媒体 <textarea style="line-height: 15px ! important; font-size: 12px ! important; -moz-tab-size: 4; width: 548px; height: 51px;" class="crayon-plain print-no"

CentOS项目实例之四--Apache配置

1. ZZSRV1上的WWW配置 1.1. 磁盘配置 1.1.1. 添加磁盘 添加80GB的磁盘. # fdisk -l Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 byte