http服务--基于用户的访问控制实现
2017-10-24 15:51
537 查看
【前言】
http,超文本传输协议,是互联网上应用最广泛的一种网络协议,http的发展历史悠久,这篇博主要来说说http的配置文件。
在centos6上,http默认的版本较低,当然想用新版本可以自己来进行源码编译,这些后面再说,先主要来说一说http的配置文件
http的主配置文件/etc/httpd/conf/httpd.conf
,另外还定义了可以在/etc/httpd/conf.d/
目录下自定义一些设置,这样可以避免直接修改配置,防止出错。
1、启动httpd服务
在启动服务时,会发现出现上面这样的提示,虽然启动服务仍然成功,但是对于强迫症的人来说,看到难免不爽。那这个问题很容易解决,修改配置文件喽:
再次重启服务就没有提示啦~~~
【基于用户的访问控制】
在默认的http服务启动状态下,我们可以通过ip地址来访问的,默认的站点目录位于/var/www/html/
,在这个目录下,后缀为HTML的文件默认就可以访问。那么问题来说,在这个目录下,有些网页并不是很想所有人都看到,希望实现一种加密的效果,一部人可以通过账号,密码登陆来查看文件,没有权限的人只能打酱油,那么就可以对配置文件进行设置,实现基于用户的访问控制。
1、centos6主机上创建HTML文件。
2、为了方便,在/etc/httpd/conf.d/
下自定义配置文件。
authname ” string” —> 该字符串显示在网页访问时输入用户密码的对话框之上
authtype basic —> 定义验证模块类型
authuserfile “/userpath” —> 密码文件的存放地址
require user username1 username2 —> 设置哪些用户生效
3、创建密码文件的方式有两种,一种的手动创建,当然创建的是明文密码,安全性不够;另一种是使用 htpasswd 命令生成,这个工具有一些选项:
选项 | 注释 |
---|---|
-c | 自动创建文件,仅应该在文件不存在时使用(初建时使用-c,再次创建不取消该选项则会覆盖之前内容) |
-m | md5格式加密 |
-s | sha格式加密 |
-D | 删除指定用户 |
4、设置完成以后,可以使用crul命令访问:
状态码200:表示主站点目录可以正常访问
状态码401:表示需要输入账号和密码认证方能访问资源
5、使用访问访问可以直观的查看:
输入正确的账号密码后才可以访问/var/www/html/private
目录下的文件:
输入未允许的用户账号密码登陆也是失败的:
既然可以设置单用户的访问控制,那么为了设置方便,我们也可以设置组账号来进行统一管理,方法大同小异:
在上述配置文件中加上一行authgroupfile
:
创建组账号文件:
通过网页访问:
基于用户的访问控制就实现了。
相关文章推荐
- 搭建web服务实现多个虚拟主机.基于主机/用户的访问控制
- FTP基于PAM和MySQL/MariaDB实现虚拟用户访问控制 推荐
- FTP基于PAM和MySQL/MariaDB实现虚拟用户访问控制
- http服务(二)——apache基于用户名访问控制
- 【总结】基于Spring LDAP和Spring Security的用户认证和权限控制Web实现
- HttpModule实现系统IP访问控制
- 利用 AOP 实现 .NET 上完整的基于角色的访问控制(RBAC)模型
- 使用tcp_wrappers控制基于tcp的服务的访问
- 利用 AOP 实现 .NET 上完整的基于角色的访问控制(RBAC)模型
- 基于NIO实现客户端通过HTTP协议访问WEB站点
- apache基于用户和组的访问控制
- 构建httpd网站服务器(二) -- httpd服务的访问控制和基于域名、IP、端口的虚拟主机
- 基于visual c++之windows核心编程代码分析(66)实现Windows服务的远程控制
- 基于Tcp Wrapper和Xinetd的服务访问控制
- HTTP基于IP的访问控制
- Flask实现基于角色的访问控制(RBAC)
- 使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【五】——在Web Api中实现Http方法(Put,Post,Delete)
- 基于basic认证机制配置httpd服务器拥有用户访问控制功能
- vsftpd+pam+mysql实现虚拟用户访问控制