实验环境为虚拟机下centos 7系统下 试验下安装rpm中apache服务后的实验环境
1.客户机地址限制:
require all granted 允许所有主机访问
require all denied 拒绝所有主机访问
require local 仅允许本地主机访问
require【not】host <主机名或域名列表>,表示允许或拒绝指定主机或域访问
require 【not】ip<ip 表示允许或拒绝指定ip地址或网段访问
实验示例限制为只希望禁止192.168.1.250 客户机及192.168.2.0网段下的客户机无法访问,但允许任何主机访问,如图打开httpd配置文件并使用如下限制策略 并重启加载服务服务
当未被授权的客户机访问网站目录时将会被拒绝访问,如图
2.用户授权限制
(1)创建用户认证数据文件
httpd的基本认证通过校检用户名,密码组合来判断是否允许用户访问,授权访问的用户账号需要事前建立,并保存在固定的数据文件中。使用专门的htpasswd工具程序,可以创建授权用户数据文件,并维护其中的授权账号。
实验示例新建数据文件/usr/lcoal/httpd/conf/.awspwd,其中包含用户zhangsan的信息,(-c表示为新建立此文件)
(2) 添加用户授权配置
有了授权用户账号以后,还需要修改httpd.conf配置文件,在特定的目录区域中添加授权配置,以启用基本认证并设置允许哪些用户访问。
实验示例只允许。.awspwd数据文件中的任一用户访问网页 如图
需要注意的是,用户访问授权与主机访问控制同时设置时,设置的主机访问控制生效。
(将require all granted改为require all denied)退出后并重新加载下配置文件。
3.基于域名的虚拟主机
实验示例以虚拟web主机www.bdqn1.com和www.bdqn2.com为例使用httpd服务器搭建 IP地址为192.168.1.20.
(1)为虚拟主机提供域名解析
实验中自行搭建测试用的dns服务器,主配置文件named.conf中需要添加bdqn1.com和bdqn2.com两大区域,各区域的区域文件中均设置“www-->192.168.1.20”的a记录,确认客户机能够正确解析www.bdqn1.com和www.bdqn2.com对应的IP地址.。(实验环境需安装bind-9...和bind-chroot..rpm包)进入named服务主配置并配置内容
接下来分别再到bdqn1.com和bdqn2.com的区域配置内容
退出配置文件后并重新加载
(2)为每个虚拟主机准备网页文档
为每个虚拟web主机准备网站目录及网页文档,为了测试方便,分别为每个web主机提供包含不同内容的首页文件。以下实验示例,在/var/www/html目录下创建两个文件夹bdqn1.com,bdqn2.com,分别作为www.111.com和www.222.com的网站根目录,并分别编写测试网页文件
(3)添加虚拟主机配置
在httpd服务器的主配置文件中,启用基于域名的虚拟web主机,需要配置以下两个方面的内容。
虚拟主机区域:使用<virtuallhost 监听地址>......</virtuallhost>区域配置,为每个虚拟web主机建立独立的配置内容。
目录权限,使用<directory目录位置>......</directory>区域位置,为每个虚拟web主机的网站目录设置访问权限。、
当虚拟web主机数量较多时建议使用独立的虚拟主机配置文件,在httpd.conf文件中通过lnclude加载这些配置。
退出后重新加载配置文件并验证 验证成功后如图
4.基于IP地址,端口的虚拟主机
(1)基于ip地址的虚拟主机
对于基于IP地址的虚拟主机,每个虚拟主机各自使用不同的IP地址,但都是通过一台http服务器对外提供web浏览服务。
实验示例站点www.bdqn1.com的IP地址为192.168.1.10 www.bdqn2.com的IP地址为192.168.1.20
(因要求在ens33网卡添加一条为192.168.1.10网段的IP地址)
退出后并重新加载配置文件验证
(2)基于端口的虚拟主机
基于端口的虚拟主机通常只用于同一个web站点,其针对的网站名称,IP地址往往是相同的,但通过不同的tcp端口来提供访问不同网页内容的服务入口。
实验示例通过80端口访问www.bdqn.com站点时,看到的是正常的bdqn站点内容,而当通过端口8353来访问www.bdqn.com时,看到的是bdqn站点的后台系统管理页面。
退出后并重新加载配置文件并验证
自此实验全部结束
转载跟我说一声 - -累死了