如何实现Apache访问控制

63次阅读
没有评论

共计 2517 个字符,预计需要花费 7 分钟才能阅读完成。

这篇文章跟大家分析一下“如何实现 Apache 访问控制”。内容详细易懂,对“如何实现 Apache 访问控制”感兴趣的朋友可以跟着丸趣 TV 小编的思路慢慢深入来阅读一下,希望阅读后能够对大家有所帮助。下面跟着丸趣 TV 小编一起深入学习“如何实现 Apache 访问控制”的知识吧。

Apache 访问控制作用

1. 控制对网站资源的访问
2. 为特定的网站目录添加访问授权

常用访问控制方式

1. 客户机地址限制
2. 用户授权限制

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

1. 使用 Require 配置项实现访问控制,按先后顺序限制
2. 可用于 Location、Directory、Files、Limit 配置段中

Require 配置项的常见语法

Require all granted
Require all denied
Require local
Require [not] host  主机名或域名列表 
Require [not] ip  IP 地址或网段列表 
使用 not 禁止访问时要将其置于 RequireAll   /RequireAll 容器中并在容器中指定相应的限制策略 

范例演示 Apache 访问之客户机地址限制

1. 先查看客户机的 IP 地址

2. 配置 httpd 扩展配置文件

[root@localhost ~]# cd /etc/httpd/conf/extra // 扩展配置文件目录
[root@localhost extra]# ls
vhost.conf
[root@localhost extra]# vim vhost.conf // 编辑虚拟主机配文件
 VirtualHost 192.168.235.129:80 
DocumentRoot  /var/www/html/accp/ 
ServerName www.accp.com
ErrorLog  logs/www.accp.com.error_log 
CustomLog  logs/www.accp.com.access_1og  common
 Directory  /var/www/html/ 
  RequireAll  // 容器起始标签
 Require not ip 192.168.235.140 // 禁止 IP 为 192.168.235.140 的主机访问
 Require all granted
  /RequireAll  // 容器结束标签
 /Directory 
 /VirtualHost 
[root@localhost extra]# systemctl restart httpd // 重启服务
[root@localhost ~]# systemctl restart named
[root@localhost ~]# systemctl stop firewalld.service 
[root@localhost ~]# setenforce 0

3. 使用客户机测试网页

Apache 访问之用户授权限制

1. 创建用户认证数据库

[root@localhost ~]# cd /etc/httpd/conf // 进入 httpd 主配置文件
[root@localhost conf]# htpasswd -c /etc/httpd/conf/pwd test // 创建用户加密文件,若文件存在则不需要加 -c
New password: // 输入自定义密码
Re-type new password: // 确认密码输入
Adding password for user test
[root@localhost conf]# cat pwd // 查看用户及密码加密
test:$apr1$VBfoRWHC$Feck.BITMYhaOlEKrc/1j.

2. 配置域名解析

[root@localhost extra]# vim /etc/named.rfc1912.zones 
zone  naccp.com  IN {
 type master;
 file  naccp.com.zone 
 allow-update { none; };
[root@localhost extra]# cd /var/named
[root@localhost named]# cp -p accp.com.zone naccp.com.zone
[root@localhost named]# vim naccp.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.235.142

3. 配置 httpd 扩展配置文件

[root@localhost conf]# cd /etc/httpd/conf/extra
[root@localhost extra]# vim vhost.conf
... // 省略部分不做修改, 追加以下内容
 VirtualHost 192.168.235.142:80 
Documentroot  /var/www/html/accp02/ 
ServerName www.naccp.com
Errorlog  logs/www.accp02.com.error_log 
Customlog  logs/www.accp02.com.access_log  common
 Directory  /var/www/html/ 
 AuthName  DocumentRoot  // 声明条目
 AuthType Basic // 基本验证类型  
 AuthUserFile /etc/httpd/conf/pwd // 验证文件目录
 Require valid-user // 授权用户的验证  
 /Directory  
 /VirtualHost 
[root@localhost extra]# systemctl restart httpd // 重启服务 

4 使用客户机测试网页

关于如何实现 Apache 访问控制就分享到这里啦,希望上述内容能够让大家有所提升。如果想要学习更多知识,请大家多多留意丸趣 TV 小编的更新。谢谢大家关注一下丸趣 TV 网站!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-04发表,共计2517字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)