bmwm3 发表于 2018-11-19 10:44:18

web服务_apache配置(3)v1.0

  
11、基于用户的访问控制                  
       认证质询:
            WWW-Authenticate:响应码为401,拒绝客户端请求,并说明要求客户端提供账号和密码;                  
       认证:
            Authorization:客户端用户填入账号和密码后再次发送请求报文;认证通过时,则服务器发送响应的资源;
                                 
            认证方式有两种:
                     basic:明文
                     digest:消息摘要认证
                           
       安全域:需要用户认证后方能访问的路径;应该通过名称对其进行标识,以便于告知用户认证的原因;
                           
       用户的账号和密码存放于何处?
            虚拟账号:仅用于访问某服务时用到的认证标识
                                 
            存储:(tttpd要有相应的是配模块)
                     文本文件;
                     SQL数据库;
                     ldap目录存储;(读性能超级好 写性能超级差)
                           
       basic认证配置示例:
            (1) 定义安全域
                     
                            Options None
                            AllowOverride None
                            AuthType Basic    基于Basci 认证
                            AuthName "String”安全预提示信息
                            AuthUserFile"/PATH/TO/HTTPD_USER_PASSWD_FILE"文件
                            Requireuserusername1username2 ...(valid-user)
                     
                                       
                     允许账号文件中的所有用户登录访问:
                            Requirevalid-user
                                       
            (2) 提供账号和密码存储(文本文件)
                     使用专用命令完成此类文件的创建及用户管理
                            htpasswd   /PATH/TO/HTTPD_PASSWD_FILEusername
                                 -c:自动创建此处指定的文件,因此,仅应该在此文件不存在时使用;
                                 -m:md5格式加密
                                 -s: sha格式加密
                                 -D:删除指定用户
                                                      
            另外:基于组账号进行认证;
                     (1) 定义安全域
                           
                                 Options None
                                 AllowOverride None
                                 AuthType Basic
                                 AuthName "String”
                                 AuthUserFile"/PATH/TO/HTTPD_USER_PASSWD_FILE"
                                 AuthGroupFile "/PATH/TO/HTTPD_GROUP_FILE"
                                 Requiregroupgrpname1grpname2 ...
                           
                                                
                     (2) 创建用户账号和组账号文件;
                                                
                            组文件:每一行定义一个组 vim编辑即可
                                 GRP_NAME: username1username2...
                                                                           
12、虚拟主机
                  
       站点标识: socket
            IP相同,但端口不同;
            IP不同,但端口均为默认端口;
            FQDN不同;
                     请求报文中首部
                     Host: www.magedu.com
                                       
       有三种实现方案:
            基于ip:
                     为每个虚拟主机准备至少一个ip地址;
            基于port:
                     为每个虚拟主机使用至少一个独立的port;
            基于FQDN:
                     为每个虚拟主机使用至少一个FQDN;
                  
       注意:一般虚拟机不要与中心主机混用;因此,要使用虚拟主机,得先禁用'main'主机;
            禁用方法:注释中心主机的DocumentRoot指令即可;
                                 
       虚拟主机的配置方法:
                虚拟主机 ip:端口
                     ServerName FQDN            虚拟主机的FQDN
                     DocumentRoot""            目录
            
                                 
            其它可用指令:
                     ServerAlias:虚拟主机的别名;可多次使用;
                     ErrorLog:
                            CustomLog:
                     
                     ...
                     
                     Alias
                     ...
                                       
            基于IP的虚拟主机示例:
            
                     ServerName www.a.com
                     DocumentRoot "/www/a.com/htdocs"
            

            
                     ServerName www.b.net
                     DocumentRoot "/www/b.net/htdocs"
            

            
                     ServerName www.c.org
                     DocumentRoot "/www/c.org/htdocs"
            
                                 
            基于端口的虚拟主机:
            
                     ServerName www.a.com
                     DocumentRoot "/www/a.com/htdocs"
            

            
                     ServerName www.b.net
                     DocumentRoot "/www/b.net/htdocs"
            

            
                     ServerName www.c.org
                     DocumentRoot "/www/c.org/htdocs"
            
                                 
            基于FQDN的虚拟主机:
            NameVirtualHost 172.16.100.6:80

            
                     ServerName www.a.com
                     DocumentRoot "/www/a.com/htdocs"
            

            
                     ServerName www.b.net
                     DocumentRoot "/www/b.net/htdocs"
            

            
                     ServerName www.c.org
                     DocumentRoot "/www/c.org/htdocs"
                                                                                          
                                                            
13、status页面
       LoadModulestatus_modulemodules/mod_status.so
                           
      
            SetHandler server-status
            Order allow,deny
            Allow from 172.16
      
  




页: [1]
查看完整版本: web服务_apache配置(3)v1.0